Where is CS curriculum at top schools headed?
The blogosphere was abuzz today with news of a course on developing iPhone applications in Stanford being available for free. I didn’t understand what the big fuss was about. In fact, if anything, this news has me worried.
Stanford is undoubtedly one of the top most engineering schools in the world. In my mind, a computer science curriculum at such top schools should do just that — teach computer science. Courses that cover computer architecture, software design, operating systems, networking, graphics, theory, databases, algorithms etc all make sense to me. But a course to teach students how to use the API on a commercial SDK? I think other organizations (vocational institutes, community colleges etc) are better suited for such courses. What is so great about such courses being taught at Stanford or MIT or Berkeley? I personally think those resources could be used better elsewhere.
It seems this is part of a larger trend. More and more schools are designing courses that are aligned with the hot buzz-words in the industry, perhaps in order to attract applications. For instance, you can learn how to provide Software as a Service (SaaS) using Ruby on Rails (RoR) at Berkeley. Stanford has another class on building Facebook applications.
I would much rather see a class on say “building scalable web services” and have Facebook, Twitter as case studies in the class.