What skills do self-taught programmers commonly lack?

Quora Feeds

Active Member
Mark Nelson

One that I've run across is not recognizing when a problem is a "known to be hard" problem. Not necessarily in the NP-completeness sense, just in the "this may be tricky/impossible". Some background in CS theory and history can let you quickly recognize that a particular problem you're trying to solve is a specific instance of a notorious one, and keep you from going down rabbit holes—either you know you need to figure out how to work around it, or you can look up the tricky solution somebody painstakingly once worked out, and avoid making the same series of mistakes others made in finally arriving at that solution.

Sometimes, of course, a little naivete can be an asset, in that one can be too scared of theoretically hard problems that don't actually cause much difficulty in practice.

See Questions On Quora

Continue reading...
 
Top