Hacker News new | ask | show | jobs
by svdad 5427 days ago
Couldn't agree more. Most of the crap I've seen in the various codebases I've worked on has nothing to do with poorly implemented or understood algorithms, and everything to do with bad designs and ill-conceived architecture. Lack of abstraction, unnecessary coupling, etc. But those skills are not only harder to measure but harder to teach -- you often don't see the problems with a particular design until you've seen it fail in production.
1 comments

Disagree. It may be more common to see bad designs and architecture because language libraries already have good implementations of key algorithms. Strong, mature frameworks similarly go very far in making system design and architecture easy because someone else has already done the hard work. Therefore, both algorithms and design principles are important skills for a well-rounded programmer. Do you see why?