They don’t know it yet, but several of my fellow geeks at Drexel are about to be the recipients of some Bad Code Offsets.
They’re like carbon offsets, only for lazy geeks who take the easy (and often ugly) way out when writing code. Things like allocating a huge honkin’ array at runtime instead of coding a linked list, or doing a sort in n2 time instead of n*log(n), just because you couldn’t be bothered to implement Quicksort.
I know I’m guilty. My code gets more maintainable as I get older, but not very quickly. If style violations were actually illegal, I’d be on a first-name basis with most of the folks at the Criminal Justice Center downtown, just on the basis of the last microcontroller project I did alone. It’s part assembly (some of it autocoded by a hacked-together FreeBASIC program), part macros, and there would have been some C thrown in for good measure if I hadn’t run out of time. Prior to that, I did another project where a VBasic GUI running on one machine worked alongside a QBasic program running on another, driving a microcontroller running a program written in assembly — and none of it presentable. (I guess I’m one of those programmers that Dennis Ray warned us about, way back when!)
The best part about these offsets is that the money goes to open-source projects. (I chose Apache as the beneficiary for the offsets I bought.)
I plan on putting these offsets to good use by starting an impromptu Bad Code Contest. No rules, except that the badness has to be confined to one egregiously bad line of code in the language of your choice. Something of such horribleness that it would make Dijkstra shudder from half a world away, in the same way Obi-Wan Kenobi felt a disturbance in the Force.
Bonus points for the Bad Line Of Code being implemented in assembly!