If you frequent any online programmer haunts you may have already been exposed to the writings of Steve Yegge, a former Amazon.com software developer and a technical ranter par excellence. Yegge has re-published his rants, most of which were originally written for an internal audience of developers at Amazon, to the web at large. He urges people not to take them too seriously, but there’s a lot of truth in them. Oh, and they’re wickedly funny.
Update: I just came across a multi-language comparison Yegge did last year, sort of like my recent “Reverse” project except that 1) the languages all run on the JVM and 2) the game is a much more substantial program (500 lines or so).
Yesterday I nominated one of Yegge’s essays for inclusion in the next volume of Joel Spolsky’s The Best Software Writing, and saw that Spolsky himself had picked one out too – so it’s a pretty sure bet that you’ll be reading Steve Yegge in the book when it comes out.
Here’s just a taste, from “Tour de Babel”:
Familiarity breeds contempt in most cases, but not with computer languages. You have to become an expert with a better language before you can start to have contempt for the one you’re most familiar with.
So if you disagree with me about C++, go become an expert at a better language (I recommend Lisp), and then you’ll be armed to disagree with me. You won’t, though. I’ll have tricked you. You won’t like C++ anymore, and you might be irked that I tricked you into disliking your ex-favorite language. So maybe you’d better just forget about all this. C++ is great. Really. It’s just ducky. Forget what I said about it. It’s fine.