Just heard on Mark Guzdial’s blog that “Georgia Tech’s College of Computing is now considering a proposal to remove Smalltalk from the required curriculum in favor of C++.”
This is another nail in the coffin of CS.
There is great value to learning many languages, not the least of which is that those who do come to understand the concept of ‘language’ and ‘programming’ better than anyone who only knows one language ever can. This makes them better programmers and better problem solvers.
There are those who feel CS is a dying discipline, and the more that CD departments contract in their view of what they should be doing, the more likely it is to come true.
Interesting and creative people are leaving CS departments, leaving behind …. can you guess? Theoreticians, mathematicians, and academic software engineers who haven’t written a real program, well, ever. These are the kind who say we shouldn’t be teaching about and with games, because “It gives the wrong impression.” (I actually heard these words from influential members of my former department). I can tell what impression it gives if you do things like games: THAT YOU ARE INTERESTING.
I once gave an assignment to a 3rd year CS class that involved building a client side search engine. The 1st step involved getting a complete list of file names and creating a format that would retain the names and directory structures in as small a space as possible.
They could use what ever language they wanted to. They had all learned C/C++ in 1st & second year.
Almost all chose to write a 2000+ line C++ program, over learning how to write the 20 lines of SED and Unix that would do the same thing, only better.
That’s what happens when they only learn one language.
CS at the university level is not about job training.