Unfortunately though, the desire to make curricula that are practical is increasingly infiltrating CS departments, only the academics have no idea what is practical, and end up teaching the language du jour that recruiters happened to be looking for 5 years ago which is out of date by the time students graduate.
The best thing that can be taught to undergraduates is the first principles of the field so that they at least have a solid foundation to build on.
I lament the loss of courses built on Structure and Interpretation of Computer Programs - one need only read this post by Joel Spolsky to see similar sentiments expressed:
Comments
Unfortunately though, the desire to make curricula that are practical is increasingly infiltrating CS departments, only the academics have no idea what is practical, and end up teaching the language du jour that recruiters happened to be looking for 5 years ago which is out of date by the time students graduate.
The best thing that can be taught to undergraduates is the first principles of the field so that they at least have a solid foundation to build on.
I lament the loss of courses built on Structure and Interpretation of Computer Programs - one need only read this post by Joel Spolsky to see similar sentiments expressed:
http://www.joelonsoftware.com/articles/ThePerilsofJavaSchool...