Java Curriculums
Joel writes about the The Perils of JavaSchools and I couldn’t agree with him more. It is something that I’ve thought for awhile now due to my education. I was about half way though my college career when ASU made the switch from C/C++ to Java and I saw a big decline in the quality of my classmates.
When I first started, everything was being taught in C/C++. All of the general programming classes and OO classes were based in them. We then had a class in Prolog and Scheme similar to the one Joel talks about except ours was not a weeder. They had it as a late 2nd year class so it was a little late to be a weeder. Logic Design, first semester of freshman year, was the big weeder at the time with assembly language, 1st semester of sophomore year, to catch the people that slipped past Logic Design. It seemed like most of the people in it were fairly smart and good programmers. I didn’t come across many people that made me wonder what the hell they were doing in the CS program.
I then took a couple year break before doing my upper division classes. In that time (almost right when I stopped) ASU switched over to using Java as the main language. The Prolog/Scheme class was transformed into a C++/Prolog/Scheme class with the majority of the class spent on C++. Everything seemed to change in a bad way. The bar was lowered.
When I came back I noticed a huge change. I felt like half the people I encountered were clueless and I was constantly wondering what they hell they were doing in a CS program. It seemed like most people were scared to touch anything but Java. In my Principles of Programming Languages class we had an assignment where we had to implement an algebraic definition of the semantics of a symbol table abstract data type in Prolog. It was like deer in headlights. Everyone freaked out over having to use Prolog and most struggled through it. There were similar result in my graphics class that used C++. I saw some really nasty looking output due to people not handling pointers correctly.
The end result was very few quality people graduated. Through out my last 2 years I worked with about 50 people or so in various group projects or class interactions. Out of all of them there are only two people that I would consider hiring. The rest were way to clueless and lacked the skills to produce quality products. If I couldn’t count on them to produce on an assignment how can I expect production on one of my products? I’m scared to see the quality of graduates if they dumb down the curriculum even more like Joel says was being discussed.