I’ve been reading Hackers and Painters by Paul Graham recently, and there was 1 idea that particularly struck me. In fact, it was something I discussed with my friends before.

The CS curriculum is outdated for this world. The real world. The stuff that they teach in there is outdated.

The best example I have. They require us to have a knowledge of stuff like BCNF and 3CNF and tell us that that should be the way to design databases. Seriously?

Designing your database to those specs might please your IT-illiterate manager, since it meets some kind of spec that is recognized among researchers, but any developer worth his weight in salt knows that that is the most retarded way to design a table. It saves space, but who the hell cares about space these days? Space is cheap, processing power on the other hand isn’t, and cannot be scaled easily. Read here if you want to know more.

What computing schools need to do, to stay relevant in this world, is to split their CS streams into 2, the ‘prof/academic’ stream and the ‘real-world’ stream. And get people who are decently successful in the real world to teach in the ‘real-world’ stream, not profs, because they are the ones who really know what is going on in the real world.

No offense to the profs, but most of them have no idea what the real world needs, nor what the real world really is. The real world needs people who can learn on the fly, and not have to take a module/course to learn something new, and people who can react to changes.

And SoC is not creating enough of these people. Because it is focusing on the wrong things.

[update]
Then again, maybe SoC profs just want to create more people like themselves, and not people who work in the real world.
[/update]

Similar Posts:

Tagged with →  

5 Responses to Should there be a new major in Computing schools?

  1. Leon says:

    I wan the real world stream

  2. Eli James says:

    There’s another idea of pg’s that’s in Hackers and Painters, and I think it might negate this ‘problem’ that you see:

    One way to tell whether a field has consistent standards is the overlap between the leading practitioners and the people who teach the subject in universities. At one end of the scale you have fields like math and physics, where nearly all the teachers are among the best practitioners. In the middle are medicine, law, history, architecture, and computer science, where many are. At the bottom are business, literature, and the visual arts, where there’s almost no overlap between the teachers and the leading practitioners. It’s this end that gives rise to phrases like “those who can’t do, teach.”

    Some of compsci’s leading practitioners are academics. There’s certainly a disjoint between practice and theory, but we’re fortunate that it isn’t as large as in some other fields. So this might not be as big a problem as you might suppose. ;-)

    I, for one, think it’s exciting that many of the things we teach in school are broken. Being broken means you can do better. And doing better means that – who knows? – maybe you’ll be the one who writes the next edition of that textbook that’s outdated. :D

    • Eli James says:

      Sorry, I meant many of the things we’re taught*.

      • Laurence says:

        textbooks will get outdated sooner or later. ideas and concepts too.

        the problem is with the prof employing these outdated concepts in the curriculum, because they have not seen the problems caused by these outdated concepts in the real world, and since most researchers dun have access to large scale systems, they are oblivious to these problems.

Leave a Reply