I'm diving into programming and while I can follow tutorials, I often feel lost when trying to build my own projects. I'm curious about what strategies others have found helpful for actually thinking like a programmer and moving beyond just tutorial exercises.
7 Answers
Try using Exercism and challenge yourself to submit a solution daily, even if it's not perfect. Comparing your code with others' solutions can help you break free from tutorial dependency. If you catch yourself watching videos, redirect that energy into your next coding exercise instead!
Start building your own projects alongside tutorials. Don't wait until you feel 'ready.' Learning to solve real problems while developing is one of the best ways to strengthen your skills.
The best way to learn is to actually build something! Start small and gradually tackle bigger projects as your skills improve.
One strategy is to build something you genuinely care about! Identify an annoying issue in your life that an app could solve. Also, using AI can be beneficial; just don’t take its answers at face value. Instead, ask it questions to deepen your understanding. Treat it like a mentor that can help explain concepts!
A good starting point is to read some quality threads on this topic. For solid foundations, consider a course like Harvard's CS50 or MOOCs from the University of Helsinki. It's essential to get your hands dirty — program as much as you can! Some book recommendations include "Think Like A Programmer" and "The Pragmatic Programmer." Remember, the main thing is to experiment and practice; that's where real learning happens!
What exactly do you find challenging? Are there specific projects or features you're hoping to create? Identifying those gaps can help you focus your learning efforts.
You definitely need a mix of tutorials and practical coding. Start with the basics like data structures and design patterns. It's hard to learn programming solely from tutorials or documentation, but they are essential in your learning journey.
How do you manage to balance reading documentation while also writing your own code?

I picked up "Think Like A Programmer" too, but I didn't notice it's primarily in C++. I'm learning Python — is it still a useful read?