The only difference between the advice given and the strawman argued against is giving the urls of search engines to find tutorials and answer questions rather than giving specific resources.
The idea of cultivating a self starter, motivated to research mindset is good, for people halfway through the beginner stage. The idea that a complete beginner even knows how to "bounce around between [different search results] to find the best ones" is silly, even starting with generally high quality content like quora and stack overflow. It leads people to learn the easiest things rather than walking the line between motivation through fast results and pushing themselves to learn good techniques and challenging subjects. There is a reason that good educators, who design curricula walking this line, are respected.
This type of "ignore the so called 'experts' and absorb the lowest common denominator crap soup of online programming advice" learning plan is doomed. The best case is that it wastes the persons time and saps their motivation. The probable case is that they end up learning a large number of bad habits, do things like reimplement a bubble sort based on advice from the comments on the php documentation site and forever end up as hack intermediate coders.
People asking for this kind of advice want some guidelines from people who've done this before and have perspective on good paths to learning and how to avoid mistakes that no one needs to repeat.
I am a proponent of branching out early in your programming career to learn different languages, toolsets and problem domains because it makes you a better programmer. But only once you've got a base level of knowledge as to how coding works and even then they will need advice on what other paths to take to help the most.
That process of drinking the soup and learning what to swallow and what to spit out is an incredible learning experience. That is a skill and comes from trial and error, reading everything, and trying things. And you are training yourself in that process and mindset of learning on your own.
Agree though that learning best practices is difficult without some guidance and working with others.
I agree, I think it's an absolutely necessary learning experience.
Just not at the beginning.
Maybe that's because I'm a CS major and have dealt with so many smart people who's learning paths were derailed by the self taught plan advocated here. They found a local maxima (in my experience it's often procedural php or eclipse driven java) and won't move off of it because it seems impossible and the benefit is intangible and by definition difficult for them to understand. Pretty perfectly described by PG's Blub Paradox essay.
There's a reason the "standing on the shoulders of giants" metaphor is so prevalent in the programming world.
The idea of cultivating a self starter, motivated to research mindset is good, for people halfway through the beginner stage. The idea that a complete beginner even knows how to "bounce around between [different search results] to find the best ones" is silly, even starting with generally high quality content like quora and stack overflow. It leads people to learn the easiest things rather than walking the line between motivation through fast results and pushing themselves to learn good techniques and challenging subjects. There is a reason that good educators, who design curricula walking this line, are respected.
This type of "ignore the so called 'experts' and absorb the lowest common denominator crap soup of online programming advice" learning plan is doomed. The best case is that it wastes the persons time and saps their motivation. The probable case is that they end up learning a large number of bad habits, do things like reimplement a bubble sort based on advice from the comments on the php documentation site and forever end up as hack intermediate coders.
People asking for this kind of advice want some guidelines from people who've done this before and have perspective on good paths to learning and how to avoid mistakes that no one needs to repeat.
I am a proponent of branching out early in your programming career to learn different languages, toolsets and problem domains because it makes you a better programmer. But only once you've got a base level of knowledge as to how coding works and even then they will need advice on what other paths to take to help the most.