I know that I’m raising a controversial topic here, but I am seriously worried about the upcoming generation of programmers.
I am noticing an increasing number of “I want to make x – where can I find a tutorial?” posts across the programming subs I am subscribed to.
This question is wrong in so many places that one can only be worried.
If you want to make x, just try it. Don’t look for a tutorial, analyze what you need, find and read the documentation and try to build it.
An essential skill of a programmer is creativity. A programmer needs the ability to solve problems by themselves, not by finding tutorials. -/u/aqua_regis
I immediately thought of Phil Daro and his talk, Against “Answer Getting”
American classrooms, even our best teachers, their goal is to teach the kids how to get the answer to today’s problem.
It’s a well known issue with the teaching of mathematics in the United States that students are encouraged to simply learn the steps necessary to get a correct answer, rather than to try to develop a deep understanding of the subject and of the problem solving process. It’s sad that learners would approach programming with the same mindset.
Reading the full comments, it’s clear that there’s a lot of controversy surrounding this sentiment. There’s a lot of defense of tutorials as a way for beginners to both end up with a product they can be proud of, and to learn the basics of programming without becoming frustrated. And I agree with those thoughts completely.
In the work of teaching there can be the same all-or-nothing thinking. Students either need constant, explicit instruction so we can be sure they’re learning correctly, or they need constant, problem-based learning because it’s the only way to develop 21st century skills.
What most fair minded people realize is that when we’re learning something new we need both. We need the guidance of an expert when we enter new territory, otherwise we wouldn’t even know where to start. But at some point the training wheels need to come off, and we need opportunities to take complex problems apart and use what we know or can find to solve them.
I’ve made extensive use of tutorials. But for me, it’s not fun to just follow directions, and I don’t think that’s the real work or mathematics or programming. So my advice to anyone learning programming; you don’t have to throw yourself right off the deep end. If you want to watch over someone else’s shoulder and have a little help at first it’s fine. Just make sure that eventually you doggy paddle your way out over your head.