What skills do self-taught programmers commonly lack?

Quora Feeds

Active Member
Keith Adams

It is not skills per se that self-educated programmers lack, but a sense of perspective for the field as a whole. Computer science is large; one lifetime is too short to learn all of it. Autodidacts rarely see this humbling reality as plainly as CS majors. Most CS majors have been crushed by an introductory course in some topic that seemed approachable at the beginning: theory, AI, graphics, operating systems, compilers, databases, etc. The self-taught more frequently live in an unpopped bubble of big-fish-in-a-small-pond self-esteem. Even those rare autodidacts who fully see that CS is bigger than them are at a disadvantage when reaching past the borders of their expertise.

When confronted with a new (to me) problem, the most valuable information I can gather is: Has this problem already been solved? If so, by whom, and how? If not, why? Is it uninteresting? Or so monumentally hard that its solution is a life's calling? The ability to answer these questions is a primary product of a CS education, and has been addressed elsewhere.

More interestingly, if these preliminary questions suggest a problem is unsolved-but-solvable-and-worth-solving, I now have a social meta-problem: who can help me? Do I need to reach out to compiler writers, kernel hackers, storage specialists, hardware engineers, machine learning people, what? Computer science education provides an important, and often overlooked key to success here: a social network that extends outside your circle of expertise. I have friends from school who work in computer vision, machine learning, databases, and other areas that I will probably be incompetent in until I die. Luckily, I can ring them up and say, "Hey, what do you think about problem X?" and expect to get an honest, if informal read without conducting an engineering talent search.

See Questions On Quora

Continue reading...
 
Top