Hacker News new | ask | show | jobs
by jeffreymcmanus 5162 days ago
> I don't think that catering to what undergrads want is a good thing, at all

that's not what i proposed at all. what i propose is to bring curriculum into the 21st century, and to call out the fact that cargo cult thinking and poor organization on the part of universities are standing in the way of that.

1 comments

> bring curriculum into the 21st century,

I don't quite understand what you mean by that. Dijkstra's algorithm is the same both in 20 and 21st centuries, ditto for red-black trees. Are you proposing universities should be teaching iOS programming and web development with ruby instead of data structures and complexity theory?

Not instead of. In addition to.
I don't think they should be teaching that at all. It's a bigger waste of time than teaching differential equations. At least diff. equations are there forever and might one day come in handy if you end up writing some software for modeling physical processes. Ruby, on the other hand, will be replaced by some other trendy language in a few years. Plus, if you already know a couple of programming languages with different paradigms, picking up Ruby (or Python, or PHP, or Java) is really easy to do on your own, you can start writing production code in matter of weeks.
This isn't about whatever language is the flavor of the month, although seeing universities teach a language that is less than 20 years old would be nice. It's more about CS programs that produce graduates who have no practical ability to code at all, in any language.
Language proficiency, by and large, is the easiest thing for anyone to pick up. Again, new CS grads are, on average 21 or 22 years old. I was programming C/C++ for around a decade at that point, and I was still a terrible programmer. Work taught me a lot more on how to write good C code.

Programming languages are tools. Knowledge of a language is not the final goal of a CS education, because it's the same as teaching a mechanical engineer how a drill works.

Also, the tools are based entirely on the theory of computing. And once you understand the theory, understanding what the tools are doing, and how they work, becomes much easier.

What makes you think coding proficiency is the goal of a university or a CS program, or the proper goal thereof.