Joel on Education


Oh Joel, your bust on the perils of Java schools cuts this errant programmer close to the bone. Having taken the Structure and Interpretation course, but then leapfrogging the 'classic' C and C++ education directly into a Java curriculum, I found myself wondering where was I in your article; the 'lazy kid' or the student up late at night, who was struggling with recursion and pointers? I have to admit that, at one time I was both.

Take, for example, my most recent course, Algorithms, or COMP 160, over at Tufts University. For our project, the professor allowed us to program in Java, but put us on the measured mile; no objects of any kind were to be used to implement the algorithms. No Integers. No Stacks. No LinkedLists. I thought it would be a piece of cake and fired up Eclipse, ready to take on the problem.

Short story shorter, it wasn't a piece of cake, especially when I had to keep track of arrays in Java without the help of the Collections interface. I sweated a bullet or two, but with the help of an extension, got the project in under the wire and passed the course.

For the record, I don't think Tufts has embraced the Java Shift that you write about. I don't think they ever will. Also, those of us who are suspicious of things that are easy to use will always dig a little deeper and try other things besides just Java. Perl and C, for example. If I didn't want to dig deeper, I would have never taken COMP 160 to begin with, or even applied for the MS program at Tufts.

What's my point? Not all Java is dumb, and not all academic programs in the US are dumbing down.

PS--Couldn't help but drool a bit when I saw your new Software Management Training Program. Absolutely right of you to not trust MBAs right off the bat, since we all know a Fletcher degree is far superior. (Note to everyone: let the flaming begin...)