The Null Device


Coding Horror has a list of new coding jargon; pithy or apposite terms coined to describe things which, for better or worse, recur in programming:

Yoda Conditions: Using if(constant == variable) instead of if(variable == constant), like if(4 == foo). Because it's like saying "if blue is the sky" or "if tall is the man".
A Duck: A feature added for no other reason than to draw management attention and be removed, thus avoiding unnecessary changes in other aspects of the product.
(This pattern recurs in other industries; it's known to illustrators as a “hairy arm”.)
Stringly Typed: A riff on strongly typed. Used to describe an implementation that needlessly relies on strings when programmer & refactor friendly options are available.
Baklava code: Code with too many layers... While thin layers are fine for a pastry, thin software layers don’t add much value, especially when you have many such layers piled on each other. Each layer has to be pushed onto your mental stack as you dive into the code. Furthermore, the layers of phyllo dough are permeable, allowing the honey to soak through. But software abstractions are best when they don’t leak. When you pile layer on top of layer in software, the layers are bound to leak.
Smurf Naming Convention: When almost every class has the same prefix. IE, when a user clicks on the button, a SmurfAccountView passes a SmurfAccountDTO to the SmurfAccountController. The SmurfID is used to fetch a SmurfOrderHistory which is passed to the SmurfHistoryMatch before forwarding to either SmurfHistoryReviewView or SmurfHistoryReportingView. If a SmurfErrorEvent occurs it is logged by SmurfErrorLogger to ${app}/smurf/log/smurf/smurflog.log

programming stupidity tech 0