Published: Oct 27 2009 / 07:22
I agree with Mark Dennehy here. Joel Spolsky has written a lot of helpful stuff, but this is one of his weaker pieces. Fogbuz isn't computer science, as one of the commentators said.
Shameless self-promotion aside, Joel is dead on with his description of the college curriculum. I'll ignore the fact that I entered college already knowing how to program in a number of languages, but after basic language syntax was taught, the majority of the comp-sci students went on to take courses studying algorithms and such. While this is great, when was the last time 95% (or more) of college graduates had to write a quick sort algorithm, or implement a hash table? Aside from learning when/where to use various data structures, I found the courses to be mostly a waste of money. One could argue that the courses act as reinforcement of good coding techniques, but I've found that it leaves many students to become hung up on writing the most insanely efficient algorithms ever known to man.
Universities would benefit more by participating in current open source projects (maybe some do, but mine didn't) and making them part of the course curriculum.
When was the last time a graduate had to write a hash table? I'd guess they very, very rarely do (though I've had to write HAT-Tries and other hinky stuff myself). But that's why they write them in college. The best way to understand a hash is to write one yourself - the same way that writing a compiler makes it easier to understand a programming language. But what company can afford to do that kind of training? None. So we do it in college instead.
Half the stuff you did in college you didn't do for the purpose of producing the end result the assignment asked for - it was instead to force you to go learn something you needed to get to that end result.
Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.