How can I stop switching tools and stick with learning programming?

August 23, 2026 4 answers
Asked by MellowOrbit42
I'm 16 and have been trying to learn programming since I was 12. I started with Scratch, then moved to Python, Unity, Godot, and CS50, and I'm currently learning C after watching programming videos that use it. I've made a few simple games, but I often switch tools whenever I get stuck. I'm dealing with two main problems: I don't know what projects to make, and I tend to quit as soon as I encounter a small obstacle. For example, I abandoned Unity because I couldn't figure out how to rotate an object toward the mouse, and game development sometimes becomes difficult when math is involved. I also worry about code organizationโ€”for example, I don't want an entire project to end up inside one large main function. How should I choose a language and project, and how can I develop the persistence to work through problems instead of constantly starting over?

Answers

NorthwindEcho5
You may be dealing with two habits: constantly chasing a new tool and giving up when the work becomes challenging. Both make it difficult to learn anything in depth. Stay with one environment long enough to complete something, even if the result is messy. For game development, you donโ€™t need to solve everything from memory. Search for concepts such as converting a mouse position into an angle or separating code into functions and modules. Basic arithmetic, geometry, and trigonometry are enough for many beginner projects, and you can learn the missing parts as they come up.
Reply to this answer
QuietLime18
Watching experienced programmers create difficult projects can make it seem like you need an advanced language or complicated idea right away. You donโ€™t. Choose one manageable project and learn whatever is necessary as you go. A small game, command-line utility, text adventure, or recreation of a simple project from a tutorial would all work. The important practice is not finding the perfect projectโ€”itโ€™s writing code, encountering problems, and learning how to solve them. That process is what builds programming ability.
Reply to this answer
CedarFox7
The biggest issue seems to be switching tools whenever something becomes difficult. Pick one language, framework, and small project, then commit to finishing it. You can follow a tutorial to learn the basics, but afterward, try rebuilding something yourself instead of immediately moving to another tool. Getting stuck is a normal part of programming. Look up the specific problem, read documentation, experiment with small examples, and keep working until you understand the solution. If you quit every time you reach something unfamiliar, changing languages will not solve the underlying problem.

MellowOrbit42: I also get stuck on how to organize the code. I donโ€™t want everything to stay in one huge main function. How should I approach that?

Reply to this answer
MapleSignal63
Start with a language that lets you focus on programming fundamentals rather than fighting the tooling. Python with a simple 2D library can be a gentler path than C or a full game engine. Try projects such as Breakout, a text adventure, a calculator, a small simulation, or a program that generates project ideas. Keep the scope intentionally small and define what โ€˜finishedโ€™ means before you begin. Completing several simple projects will teach you more than repeatedly restarting ambitious ones.
Reply to this answer

Add your answer

Answers are reviewed before publication.

Related Discussions