Hacker News new | past | comments | ask | show | jobs | submit login

There are things from a formal CS background I wish more people mastered. Things like understanding how JOINs work, basics of memory management and understanding that two nested for loops is likely to be worse than a single one, even in the cloud. But knowing how to implement a specific sort isn't one of these. It's simply never come up outside of an exam.



I'm shocked that a proper CS course wouldn't teach them. We covered Joins (and the relational maths behind them) in first year, and "nested for loops being bad" would be a necessary by-product of learning anything about complexity.


Oh, I don't mean to say these aren't taught (though being taught something and mastering it isn't quite the same).

What I mean is that those are the parts of a CS background that have actually been useful in my everyday coding life, and that I would expect from candidates I interview. To be opposed to knowledge/implementation of different types of sorts, which is also a part of a CS background, but has low practical use in my everyday coding.


> the parts of a CS background that have actually been useful in my everyday coding life

Someone fresh out of school would have no idea how to discern that from anything else in the wide, wide world of CS unless they have experience working in the industry (from, say, a summer internship or co-op terms).

Hell, mastery of basic DVCS operations (say, git pull, git commit, git merge, although equivalent experience with hg, perforce, or TFS would be reasonable) isn't a guarantee, even if students spent four months in a lab "using" such a tool.

The people who "do best" in university get told by their professors to become graduate students. Most are not optimized to teach the skills you seek -- if you picked a random fresh graduate and they happened to have those skills, it's probable that either they taught themselves or they learned them at another employer.


mm, I agree with you there. I guess it's because sorts come up so much in a CS curriculum that they're considered to be magnificently important. In other words, they're just really handy bodies for imparting central ideas (like complexity), and people mix up the messenger with the message.


I think that's kind of the point. If radical is looking for (3), they will probably know the information because it is interesting.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: