To support his claim, Dewar penned a scathing broadside decrying todays college-level computer science training. (The article was co-authored by Edmond Schonberg, also a CS professor emeritus at NYU.) Entitled Computer Science Education: Where are the Software Engineers of Tomorrow?, the widely read article has prompted heated discussion throughout the tech industry.
Robert Dewar Professor emeritus, NYU
To sum up Dewars argument: todays college computer science programs arent rigorous enough, and dont promote in-depth thinking and problem solving. Instead, in an effort to boost enrollment, CS programs focus on easily accessible curricula, and so fail to prepare students to compete with their international peers.
One of the articles main points (one that was misunderstood, Dewar tells me) is that the adoption of Java as a first programming language in college courses has led to this decline. Not exactly. Yes, Dewar believes that Javas graphic libraries allow students to cobble together software without understanding the underlying source code.
But the problem with CS programs goes far beyond their focus on Java, he says.
A lot of it is, Lets make this all more fun. You know, Math is not fun, lets reduce math requirements. Algorithms are not fun, lets get rid of them. Ewww graphic libraries, theyre fun. Lets have people mess with libraries. And [forget] all this business about command line well have people use nice visual interfaces where they can point and click and do fancy graphic stuff and have fun."
Dewar says his email in-box is crammed full of positive responses to his article, from students as well as employers. Many readers have thanked him for speaking up about a situation they believe needs addressing, he says.
One email was from an IT staffer who is working with a junior programmer. The older worker suggested that the young engineer check the call stack to see about a problem, but unfortunately, hed never heard of a call stack.
At fault, in Dewars view, are universities that are desperate to make up for lower enrollment in CS programs even if that means gutting the programs.
Its widely acknowledged that enrollments in computer science programs have declined. The chief causes: the dotcom crash made a CS career seem scary, and the never-ending headlines about outsourcing makes it seem even scarier. Once seen as a reliable meal ticket, some concerned parents now view CS with an anxiety usually reserved for Sociology or Philosophy degrees. Why waste your time?
College administrators are understandably alarmed by smaller student head counts. Universities tend to be in the raw numbers mode, Dewar says. Oh my God, the number of computer science majors has dropped by a factor of two, how are we going to reverse that?
Theyve responded, he claims, by dumbing down programs, hoping to make them more accessible and popular. Aspects of curriculum that are too demanding, or perceived as tedious, are downplayed in favor of simplified material that attracts a larger enrollment. This effort is counterproductive, Dewar says.
To me, raw numbers are not necessarily the first concern. The first concern is that people get a good education.
These students who have been spoon-fed easy material arent prepared to compete globally. Dewar, who also co-owns a software company and so deals with clients and programmers internationally, says, We see French engineers much better trained than American engineers, coming out of school.