Very interesting article in Ekinoderm :
Doctors Robert Dewar and Edmond Schonberg (Professors Emeritus at NYU in Computer Science) recently penned a rather scathing paper about the sorry state of Computer Science education in the United States today. In it, we see the usual laments that Java is dumbing down Computer Science curricula and that the lack of emphasis on mathematics is making students completely uncompetitive in the global market. This is in an attempt to make CS “soft” and keep the numbers up in terms of number of people majoring and number of degrees granted. But this is what students want, apparently.When I got my B.S. (in 2003), I can remember students in my classes constantly grousing about how topics like Scheme or Finite State Automata were “useless” and we should spend our time doing “useful” things like learning how to use VB to make a database app or something. Or, God forbid, writing web apps in PHP.In one of my courses, the students actually got together and petitioned to have the course language changed from OCAML to Java (no kidding). And this was a Computer Languages class, where the entire purpose of the class was to write several interpreters to study different programming language constructs (such as closures or continuations). In case you aren’t familiar with it, OCAML is an ML-derivative which is designed for writing interpreters and compilers. Java is a general-purpose language which isn’t designed for anything specific, as near as I can tell. In this case, OCAML was unquestionably the better tool for the job, and yet, because students were uncomfortable having to learn a new language, and the professor was a bit weak-willed, we ended up having to deal with a monstrous interpreter written in Java. What was a few lines of OCAML became 20 or 30 files in Java (because each syntactic construct needs its own class).
These are the future software engineers of America, and they’re killing themselves. They’ve no one else to blame. As Dewar points out in his article, the adoption of Java is driven almost entirely by a desire to make programming “fun” and to alleviate students’ fears that they won’t learn anything “useful” from a course taught in an academic language like Scheme. The students are propped up by administrators who have a vested interest in graduating as many people as possible, regardless of how qualified they are. So, as is usual, you have the least qualified people making these decisions.
It’s like if you walked into a painting class, told everyone that learning to paint was too hard, and then gave everyone a camera and told them that photography was the same thing as painting, only a lot easier to do. No disrespect towards photographers intended.
From personal experience, I’d like to add that a lack of requirement for systems programming is making many CS grads almost completely useless in industry. I’ve interviewed candidates who literally fled from the room when I asked them to find a memory allocation problem in a “Hello World”-level C program. It’s apparently entirely possible at this point to have a Master’s degree (or possibly even a PhD) in Computer Science, and be unable to describe what memory management is or to know what a pointer is.
While I agree with the fundamental message of the article. I disagree when it boils down to the reality of it. I was one of the students who wanted to do “useful” things like learning how to program using C#/VB, ASP.NET, MS SQL 2005, etc. instead of learning how to write 10 line console applications in C++.
I would be more than happy to learn how to write finite state machines or some language complilers if it would help getting me a job after graduation. But it doesn’t! I’ve been through many interviews where all the employer cared about was what I could do for their company. Did I know all the tools and languages that they used?? They didn’t care if I knew the history of computer science, or how to write a complier in C. I’ve had many employers who have said this to me up-front. So I dont think its the students’ fault that they don’t want to learn the fundamentals. What they want to learn is driven by the market.
true its due to market lies and clients ignorance !
as a client i request proof of program ! if you don ‘t know how to make it you are fired !
it is the next big wave !
tag-heuer carrera replica entrepreneurship. he wasn’t riding…
a wave, he was pushing through the water ahead of it. if intuit’s growth can be attributed to any one managerial practice, it would be the now tired cliché about listening to your customers. is there a smarter, simpler, cheaper, or…