Ruling with an iron fist

Someone more or less anonymous tried to comment:

the fact that you removed my first (quite witty, although critical) comment is as ridiculous as you making all of these points up just to score some “fun points” with your readers.

In this particular case I never saw your original, witty post.  Sorry.  It probably got swallowed by my spam filter.  I rarely look at the spam bin; there’s a lot of it, and if something gets mis-filed then I’ve decided so be it.  I have better things to do than wade through thousands of rip-off ads and scams.  Sorry if I’m dropping diamonds on the floor, but if your deathless prose needs air, you can put it up in some other forum.

I’ll be blunt: This is my forum.  It’s my ball and I am accountable to no one.  Some people have actually phoned me up and complained, or asked for retractions or more credit.  I do not give a damn about equal time for everyone.  I will do as I like here, and if you don’t like that your options are limited.

Another point of clarity: Comments must be approved by me.  I don’t approve comments that are off-color, or that I feel are not in the correct spirit, or that I just plain don’t like.  In other words I exercise ruthless and total editorial control.  I generally try to be nice and let even jerks through, but I’m not required to.

About a quarter of the things I wrote below are made up (but I wish were true).  The remainder are things that I have done, or that I have seen people do.  Since this is my ball game, I’m not going to identify which are which, simply because I like it that way.

Finally, scoring “fun points” with my readers is not high on my list of priorities (frankly, thinking I have a responsibility to an audience is a pain in the ass).  If you like what I write, then have fun.  If you don’t, there’s a whole internet full of other, better writers, and I invite you to spend time enjoying what they write.

On the other hand, “I liked that post” versus “You suck, you liar” is running in the low-hundreds-to-one, which I think speaks for itself.

Things I am not allowed to do any more

[About three quarters of these are actually true, about half of them are true for /me/.]

I am not permitted to replace a cow-orker’s reference books (including his Knuth, Sedgewick, and C++ reference manuals) with several linear feet of steamy hardback romance novels.

I will not name my variables after nasty tropical diseases, or executives who are under indictment for fraud.

Elevators are not toys, nor should they ever be wired into the corporate net.

It is not allowed to put the Halo 3 Master Chief into a gingham dress, or to give him cheerleader pom-poms, or attach flowers to his pulse rifle, as it upsets the Bungie people when they visit.

Yelling “Fire in the hole!” whenever I make a checkin is not team building.

Claiming a feature in a planning meeting by declaring “I’m going to rub my nuts all over that” is right out.

Using “butthead” in a reply-to-all email is not allowed, even if everyone is in agreement.

I will not refer to the head of corporate research as a “lamer,” especially when he is in the same stairwell when I utter this.

I will not paste labels onto the after-hours HVAC buttons, especially if they read “Eject,” “Arm,” or “Detonate.”

Lasers are for pointing, and that’s it.

I am not allowed to have a bucket of paint in the building.

Nor any power tools, especially if they have blades.

I shall not place a supply of “Sharpie” permanent markers in any whiteboard trays.

Cuckoo clocks are not allowed in the executive conference room.

The elves in the lobby’s “winter holiday” display must remain unmolested.

I am not allowed to have a cup of coffee resting nearby any essentially irreplaceable, one-of-a-kind, multi-tens-of-thousands-of-dollars circuit boards I have been asked to write code for.

Spinning cow-orkers in their chairs until they throw up is now forbidden.

Since I am red-green color-blind, I am not permitted to do wiring, pick resistors, or choose office carpet.

I must not check in a new memory manager two hours before going on an overseas vacation.

Tossing computers off the roof is not an accepted form of “stress testing.”

I will not dial someone at random and conference them in to the building’s intercom system.

Motorcycles are not allowed in the CEO’s office, even if it’s 2AM and he’s not there. Starting the engine is also not permitted.

I am not allowed to put a “logout” command in someone’s “.login” file.

The View from Mt. Deja Vu

Sorry, I’ve been busy.  The books pile up, the relatives come into town, there is LEGO to build with your son, or videogames to beat.

Also, when things are going pretty well, I don’t need to vent.  So I’m not posting much.

But to get 2010 started….


You see it again and again, the same stuff over and over again: Newly clever implementations of linked lists. Somebody’s idea of what a hash table should look like, crippled with innovation. Yet another object file format, another command line option parser, another memory allocator. A thread pooler that you can’t find any /obvious/ flaws in, but that you know will expose some subtle, nasty eleventh-hour race condition that will make your life living hell just before ship.

And a shiny, fresh face pops into your cube, quivering with excitement: “Say, did you know that you can do (insert gnarly, evil thing here) with C macros?”

“Yes, but the last person to try that had his soul seized by Knthulhu, and was dragged screaming down to the Place Where They Still Use Punch Cards and Octal, and if you listen carefully you can hear –”

“Octal? What’s that?”

Your generation did not invent the facepalm. It’s probably been around since the caveman days; I can easily imagine Throg hitting his head repeatedly on a rock when Grognak tried to nasaly insert Fire again.

Deja vu, ad infinitum.

The future of computing is its own past, mashed-up and remixed by young’uns who have yet to fear the dark corners, the places where us old farts went in with similar bushy-tailed attitudes and came out with ashen-faced, eyes barn-door wide and with fifty new words for “pucker.” Heed us. The stove is hot if you touch it. The stove is not only hot, it will incinerate your soul. At some point you will want to make pancakes or wash dishes for a living rather than run another build or merge another check-in or fix another bug, and at that moment you will be worthy to take up this mantle of curmudgeonly benevolence and utter the words:

“Son, you ain’t seen nothin’ …”

[usually they start edging away when you get that wild look]

“… back in ’09…”

[they are consulting their cell phones and iExcuse generators]

“… uphill, both ways…”

[you are left alone now, in blissful silence. Code away.]

I have too many important things to type with these fingers before I retire than to waste time on another hash table. Unless it’s a really, really good one.  Or I’m bored.