I started learning to code in 2017 and began by building games and solving problems myself. Since using AI heavily after 2022, I've become faster at producing code but feel like I'm learning less and enjoying development less. Whenever I start a project, I often ask AI to build the whole thing, get frustrated when the result is poor, and quit. It feels less like using a tool and more like using a cheat code.
What I enjoyed before was working through problems step by step—for example, deciding how to represent inventory items, handling drag-and-drop behavior, and figuring out how to detect slots. Now, many of those systems can be generated from a single prompt, which makes the process feel less meaningful. I'm also worried that I'm not creative enough and that refusing to use AI will leave me behind professionally.
I'm a third-year game development student and haven't worked in an IT company yet. For people who learned to program before AI became mainstream, how do you still find satisfaction in coding? Do you avoid AI for personal projects, or use it in a way that supports your own thinking instead of replacing it?
4 Answers
It’s reasonable to miss the craft, but software has always moved through different eras. Tools, frameworks, libraries, and higher-level languages already removed a lot of manual work. AI is another major abstraction layer, and the valuable skill is shifting toward understanding systems, choosing good designs, and evaluating whether an implementation is correct.
You don’t have to use AI for everything. Keep a personal project where you write the important systems yourself—perhaps gameplay logic, engine code, or an algorithm you specifically want to learn. Use AI only for documentation searches, brainstorming, or repetitive setup. That lets you preserve the parts of development you care about while still learning the tools used in modern workplaces.
For me, coding by hand is still useful because writing code builds a mental model of how the program works. AI-generated code can be helpful, especially for boilerplate or changes spread across many files, but I need to read, test, and understand it before accepting it. Otherwise I’m just accumulating code I can’t maintain.
The final product matters in a job, but the process can matter personally. If building something yourself is part of why you enjoy programming, that isn’t irrational or outdated. Keep doing it in your own projects, even if your professional workflow becomes more AI-assisted.
You probably don’t need to choose between rejecting AI and letting it do everything. Set clear limits for yourself: write the first version of important mechanics manually, ask AI for hints rather than finished code, or only use it after you’ve attempted the problem yourself. You can also use it as a design partner—have it ask questions, challenge your assumptions, or suggest test cases instead of producing the entire feature.
For game development, creativity comes from deciding what to make and iterating on whether it feels fun. AI can make prototypes faster, but it doesn’t decide what is meaningful, entertaining, or worth finishing. Pick a small project with a specific creative goal and commit to completing it without outsourcing the core decisions.
The biggest difference is whether AI is replacing your thinking or extending it. Instead of asking it to build an entire inventory system, start by describing the problem and discussing possible designs. Decide how items, slots, dragging, saving, and validation should work, then implement and review each part yourself. AI can help compare approaches, explain an API, generate boilerplate, or point out edge cases, but you should remain responsible for the architecture and understand the resulting code.
There’s no special virtue in making every character by hand, but losing the problem-solving process entirely can absolutely weaken your skills. Treat AI like a very fast junior developer whose suggestions still need to be questioned, tested, and sometimes rejected.
That describes exactly what I’ve been doing wrong. I’ve been asking for a complete solution, then getting annoyed when I have to debug something I never designed. I want to return to breaking projects into the smaller questions that made programming enjoyable in the first place.

That’s the part I struggle with too. The finished application isn’t the only reward; solving the design problems and learning from failed attempts is what made the project satisfying. AI can accelerate that process, but it shouldn’t erase it.