I've been learning programming for a while, but I keep getting stuck in the tutorial loop. Whenever I think I know enough to build something, I discover another concept I supposedly need to learn first.
For people who taught themselves programming, did you start building projects before you felt ready? How did you choose your first project, and what did you learn from it?
4 Answers
A common problem isn’t a lack of individual concepts; it’s not knowing how to combine them into a complete solution. Following a tutorial can demonstrate each piece, but building your own variation forces you to plan, connect the pieces, debug errors, and make decisions. Try modifying a tutorial project first, then create a related project without copying the steps.
Keep the first version small enough to finish in a few days or a week. A command-line calculator, a simple age checker, a basic expense tracker, or a small webpage is enough. You can add features gradually instead of trying to build a complete app right away.
Choose something you genuinely want or need, because curiosity helps you push through the frustrating parts. My first independent projects were simple scripts that changed system settings and automated cleanup tasks. They were rough, but breaking and fixing them taught me more about problem-solving than passively watching lessons. The goal isn’t to avoid mistakes—it’s to make manageable mistakes and learn from them.
You probably won’t ever feel completely ready. The useful knowledge usually appears when you’re trying to make something and run into a problem. Start with a small project, look things up as needed, and treat each obstacle as part of the learning process. Even experienced developers search for documentation constantly.

A good rule is to make the first version merely functional, not polished. Once it works, you’ll know which improvements or concepts are actually worth learning next.