Tutorials are maps. They show you the terrain but they can't make you walk it. I've noticed that I can follow a tutorial perfectly — understand every line, type along, take notes — and still be completely lost when I try to extend or modify the thing I just built.
This isn't a failure of the tutorial. It's a failure of my relationship to learning. I was consuming understanding instead of building it.
The Illusion of Comprehension
There's a specific feeling I've learned to distrust: the feeling you get when you read through well-explained code and think, "yes, I get it." That feeling is almost always wrong. You get the explanation. You don't yet get the code.
Understanding something well enough to follow it and understanding something well enough to recreate or extend it are entirely different cognitive states. Tutorials usually only get you to the first one.
The Cure: Close the Tutorial
The only cure I've found is to close the tutorial and break something. Re-implement it wrong on purpose. Ask: what if I didn't use this data structure? What if I did this step in a different order? What's the minimum version of this that actually works?
When your version breaks and the tutorial's version doesn't, you've found something worth understanding. That gap is the lesson. You can't get it from reading.
The Blank File
This is why most of my projects start from a blank file. Not to be heroic — just because it's the fastest path to actually understanding something. The blank file forces you to hold the whole problem in your head at once. It forces questions you'd never think to ask if you were following a guide.
I still use tutorials and references constantly. But I try to use them the way I use documentation: as something to consult when I'm stuck, not something to follow while I build.
The blank file is the honest one. Everything else is a scaffold.