3 ms·
Eh, that's one way to interpret that statements. I think most algorithms that you would come across usually (sorting / searching / efficient storage), and a lar
by govg 7y ago
Eh, that's one way to interpret that statements. I think most algorithms that you would come across usually (sorting / searching / efficient storage), and a large superset of what could be used in a regular engineering job can be learnt in a few months. In fact, most CS undergrads take 2-3 courses on algorithms in their education, which is a few months.
TAOCP and books like that are meant to be a compendium or reference. It would be like someone claiming "I can learn enough JS to be productive at work in a year", and then someone refuting that by showing them some obscure feature of the language no one uses and knows of.
- kragen 7y agoThe seventeenth-century villager could meet everyone they "would come across usually" in a few months. Yet every day I meet more people than they would meet in those few months. The top-level comment didn't say that most tricky/smart algorithms a beginning programmer comes across can be learned in a few months, or that most of the tricky/smart algorithms they need to be productive at work can be learned in a few months. (For most jobs and for many programming projects, as Hague points out, you don't need any "tricky/smart algorithms".) They claimed that most of the tricky/smart algorithms can be learned in a few months. And that's profoundly false; it's like when I thought I was an expert at computer programming because I had memorized the constructs of the BASICs of several different popular home computers. If you want to organize your programming career so that you never face any interesting algorithmic problems, you can, easily. That doesn't even mean you won't face any interesting problems, because many other aspects of programming are interesting too, like Hague's favorite, videogame user experience design. But if instead you want to organize your programming career so that you do get to work on interesting algorithmic problems, there are no shortage of such open problems known, and there is an immense body of knowledge about solutions to those problems, as well as communities of practice where you can learn to solve them. Some of them are even quite lucrative. The top-level comment is saying that this enormous wealth of algorithmic research simply does not exist; you are saying that it is worthless. Both of you are deeply mistaken.