5 ms·
Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so. Requiring it as a criterion of hiring is
by ubernostrum 9y ago
Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so.
Requiring it as a criterion of hiring is, essentially, a back-door way of saying "we only hire people fresh out of college", since they're the ones who've recently been having to do this stuff on exams and have it fresh in their minds.
- seanwilson 9y ago> Being able to implement off the top of one's head is a skill that fades as soon as one is no longer required to do so. I haven't implemented a hash table, linked list, growable array or binary tree for years but know I could because I understand how they work and I select which one to use often while coding. I find it hard to understand how you could claim to know how those data structures work and not be able to implement them.
- sidlls 9y agoMy point was that most of the time one doesn't need to know how they work in the first place for the vast majority of programming. Simply memorizing or referencing a card with very simple performance metrics (e.g. "dict: fast map of keys to values; array: very fast lookup by integer index") is sufficient for most cases today. Very few people who are doing any programming work need to know that the "dict" is a hashtable or some esoteric data structure with similar performance, or even anything else at all about it except for the API for it.
- seanwilson 9y agoIf someone can memorise how a dictionary and an array work, why would they have trouble quickly understanding how a hash table works for example? To me, coding for years and never coming across or being curious about understanding hash tables when they're applicable in so many places and not hard to understand is a bad sign. I don't care about more esoteric data structures but linked lists, hash tables, arrays and binary trees should be basic knowledge.
- sidlls 9y agoThey wouldn't necessarily have trouble understanding what's under the hood, and that isn't my contention anyway: I contend that whether they can and whether they need (or even ought) to do so are separate questions, most of the time with the latter answered in the negative.