|Links||By Shamus||Nov 27, 2007||59 comments|
If you have ever written software, then you will most likely find this to be funny. Despite the joke on programmers here, I really have made it my goal over the years to write less code. The huge block of code that the “seasoned professional” uses to print “hello world” actually makes me angry. I know this is a joke, but I’ve seen coders who acted this way and I’m always horrified when I encounter their work.
It’s like having a twenty-page document on how to fill a Pez dispenser. The underlying functionality is simple, but the instructions are so verbose that if you want to make a change you’re better off dumping the original and writing the whole thing over from scratch.
In my day job I often work with a large-ish codebase (I’m gonna guess it’s somewhere in the ballpark of two or three million lines of code) which has been around since sometime in 1994. It’s crufty now, and once in a while I’ll need to go into one of the old, dusty corners of the codebase and work on it. I can often tell who wrote the code just by looking at it.
Sometimes I’ll have trouble getting a non-coder superior to understand why we need to throw away (or re-write) a block of functional code when it apparently “works just fine” and all we need is “a minor change”. This is particularly true since I’m reluctant to be critical of my peers and very reluctant to be critical of peers which have departed for other jobs. It’s a very weasel-ish practice to point the finger of blame at a guy who left two years ago, even if the work he left behind is borderline sabotage. So I can either blame a guy who isn’t around to defend himself, or I can act as caretaker for his psychotic, unruly code.
Not a fun choice to make.