| > So you've made your third biggest mistake; you've vastly underestimated what you are in for. You have never "learned" to program, you are "learning." I am afraid your comment is even more mistaken. Even more it is discouraging in a really bad way. Read carefully and I'll explain. Even if your HN score is 10 times mine. In my opinion you are creating a false dichotomy between having learned and learning. Someone who has just started to walk/bike etc has still learned to walk/bike. They are by no means near entering Olympics for the next few years but they have made their own life very much simpler and more enjoyable. (Father of small children here.) Comments like yours are discouraging at least one specific subset of people from doing the one thing that can possibly help them increase their skills, namely use them. I even think that for most people even if they can learn a lot about coding by just reading, reading and immideately applying it is by far a quicker route. Anecdata: I once told a 16 y.o. intern how to use basic perl and Visual Basic for Applications. After 14 days where he would run his scripts, check, check with his supervisor, fix the code, learn more perl and vba and so on he came back with a report that would have taken weeks to finish by hand. He is now on his last year on a Bachelor with Honors study and this was his first useful program. Still makes me happy. (By the way, I also started coding at age 12. Having programmed for both $100+ million companies as well as startups I am not one of those struggeling to learn the basics. Anymore, that is : ) |
The fundamental difference here is that bikes are ridden in a way that's fundamentally unchanged for decades. Contrary to this "settled" field of knowledge, programming is constantly invalidating itself. Even if you achieve competency in a limited field (perhaps operating system design or web development), that field will almost certainly overturn itself within 5 years for any reasonably broad definition of field. Consider what modern linux looks like compared to the original version; a lot of new techniques have emerged to address requirements.
To enter that field, this new knowledge is not "optional." It's required. The goalposts for competency aren't just shifting; they've got a nuclear power supply and tank treads and they're out of control.
In this, it is not unlike being a doctor. Their knowledge base is similarly in constant flux (although not quite so violently as ours). A doctor who does not constantly improve and update their knowledge will be a substantially worse doctor than one who does. A perfect example of this is pre-scientific doctors like homeopaths, who basically do nothing with an almost frightening level of dedication and fervor.
> Comments like yours are discouraging at least one specific subset of people from doing the one thing that can possibly help them increase their skills
I did not direct this at some 16 year old kid or a non-programmer, nor did I put it in a venue where non-tech people read. Even if I did, citing final consequence is hardly a good argument. In any case, the industry does a pretty good job of discouraging people from joining as it is. When I was in college, there was a 60% dropout rate between lower and upper division classes.