Sunday, March 12, 2006

C++ Colin

Vik David points to the hugely entertaining Programmer Predilections which has dead on character, C++ Colin:

Colin is the local language bigot, whose language of preference is C++. He began programming in C, moved on to C++ when commercial forces threw the OO paradigm at him, and has been working in C++ ever since. Colin has watched the ascent of Java with a mixture of disdain and veiled jealousy. Initially, it was easy to defend C++ against criticisms from the Java camp, by pointing to C++'s superior performance. But with the growing speed of JVMs, this advantage has been lost. Now, most of the advantages that Colin claims for C++ are the same language features that Java enthusiasts see as disadvantages. Java developers (or, "Java weenies" as Colin is fond of calling them) point to automatic memory reclamation as an eliminator of a whole category of bugs that C++ developers must still contend with. Colin sees garbage collection as disempowering the programmer, referring to the random intrusion of garbage collection cycles as payback for those to lazy to free memory themselves. Java weenies consider the absence of multiple inheritence in Java an advantage because it avoids any confusion over the rules used to resolve inheritence of conflicting features; Colin sees it as an unforgivable limitation to effective and accurate domain modeling. Java weenies consider C++'s operator overloading to be an archaic syntax shortcut, rife with potential for error; Colin sees it as a concise and natural way to capture operations upon objects. Colin displays a certain bitterness, resulting from the dwindling variety of work available to him within the language domain he is comfortable with.


Reading this, do you get the feeling that Joel Spolsky might be C++ Colin?

1 comment:

Anonymous said...

It's well known that C++ is far superior to Java for the experienced programmer, and this is never going to change no matter what way you look at it.