Cozy-Learning
03-14-2026
I've been slowly developing this theory, both in my mind and thinking out loud around this blog, mainly here, also in my Code Apprentice project. But the more I think about it the more I think it could be something real. I call it "Cozy-Learning", although a more technical name could be "Semi-Passive Learning".
Here's the one minute elevator pitch: It's about making learninig extremely easy by learning through controlled repetition and slow guided progress; you trade difficulty for time. It's more about slowly digesting and owning the knowledge and less about making every tiny little step a problem to solve. You learn more like an apprentice learns a trade, or like learning a sport: jump in to start making real things right away, but only from a place of little resposibility, repeat, repeat, slowly increase the level of complexity and independence. Master each stage before going to the next.
Now, I've been applying it to programming, although I have the feeling it could apply to more things too. And I'been using AI LLM's as a kind of coach and to generate infinite amouts of disposable content to practice on, but of course, a real-life teacher could apply this method too, it would be about establishing a master-apprentice relationship between the teacher and the student; but with the use of AI tools it works beautifully as a self-teaching method.
Here are a few more thoughts I've had about it recently and a concrete workflow example:
It can be like a game
- Get a script written by AI, it can be a single small script or a whole project, depending on your current level of understanding; the beauty of this is that the method is perfectly adaptable to any level.
- Copy the code, type it by hand, carefully, pay attention.
- Some things you can do to "gamify" the process:
- See how many lines you can memorize at a time and type without looking back to the text.
- See if you can type the whole thing without bugs.
- When you (inevitably) find bugs at the end, after copying it out from the provided text, see if you can fix them without help.
- After copying, analyze, make sure you understand what each thing does and how things connect to each other, if not, ask questions.
- After that, modify something, even if it's just some variable names, that's enough to start appropriating the script, make it your own.
- Add something new, e.g. a function that just takes another one as template but adds a little bit of functionality. That also forces your brain to process and own the system.
- As you level up, ask the AI to write more complex, multi file projects, with external libraries, with documentation, production-ready code, use a specific paradigm or structure like OOP, or FP, use error handling, etc.
Find the sweet spot
The trick to make it a valuable learning experience and not just tedious repetition is to find that sweet spot just at the edge between what you already know and your "knowledge horizon": what you know that exists, what you are able to grasp and generally "get", but haven't yet fully understood, much less mastered.
One last thought: This is not meant to be exclusive, it's a complement to other methods of learning, it works great (in my experience) in combination with both project-based learning and a more traditionally guided theoretical approach. Also, it's not a "learn programming in 2 weeks"; like I said a the beginnnig, it's easy, but that's the tradeoff.