My Month Using Claude Code
Yet another opinion about what it means to code with AI
Today I had in my calendar a reminder to cancel my Claude Pro subscription after signing up to try it for a month. I previously wrote about what made me want to give it a try. I thought it might be a good source for learning about a niche CPU optimization topic that felt out of reach for me. Up until last month my experience with AI coding tools was a brief attempt using free Cursor last summer and using Chat UIs by copy and pasting code bits. My impression of AI for code was that the code wasn’t great. It was useful for tedious throwaway tasks and chat was a good alternative when Google failed me.
After getting inspired by the optimization project I finally dove into a Claude Code based workflow. Overall I’ve been impressed by it and the things it has been able to do. I’m not sure how I feel about that. Over the last month while working on little projects, it’s done stuff like significant refactors and redesigns, one shot little applications and games, iterated on feedback based on visual descriptions for games and been pretty helpful as a “rubber duck” for design. I also set up a workspace for it and used the code generation to make coding interview environments for me with a test question and test cases to pass. I think this is better than LeetCode.
My workflow went between hands off “vibecoding” and being pretty involved with the discussion, design and then reviewing and giving feedback on the generated code. The latter was still a bit of work and required focus and understanding of what was going on and the domain. I was able to keep the AI on track and found the code it generated to be pretty good, sometimes better than what I would have written.
The project that took up most of my limited free time for the month was a mini game for Nintendo DS. After each mini-step of building the game and the framework to build on I felt a little lacking. There is a lot of hard work to get a game working when you don’t have a library or engine that exists. When I got things like camera following, collisions with the environment, attacking animations, etc. working it felt cool, but didn’t feel like I did something really hard or significant. At the same time, I never would have completed a game like this in under two weeks working only an hour or two a day while being repeatedly interrupted by my toddler. This speed helped me iterate and validate ideas I had and made it easier to build upon later on. The code generated was cheap if I think of it in terms of time and effort spent. It was easy to throw away and redo how I thought it should be done after seeing it come together. AI was also able to quickly find documentation for me. For something like this that had some complexity, I rarely used Google to look up anything.
I found I was accepting a lot of code after going through this design phase with the AI. I felt a little weird about it. Usually I’ll work pretty hard on a coding project and feel pretty excited and accomplished when I figure out the problem I set out to solve. This time, despite having what I think a pretty cool output, I wasn’t sure if I should feel proud of what I built or feel like I accomplished much. I was starting with high level ideas and direction, chatting with the AI to narrow down what should be done then letting it generate code for a few seconds, it didn’t feel like I did a lot of the hard work.
I tried to focus on the output in the end, and if anyone did play my little game, I don’t think they would care if it was AI generated or not as long as it was fun. I was also able to do things like let the AI run for a bit while I fixed things it couldn’t do, like create sprite animations and make the level maps. Professional coding in a corporate environment focuses a lot on outcomes and the process to get there matters a lot less. I think these tools as they are right now, when used correctly, will be a big productivity boost for that kind of work. For personal projects, I really needed to think and ask myself, what did I really want to get out of this and how I was using my free time.
I did have some other frustrations with Claude Code. I felt it randomly did start generating terrible ideas and bad code for a day, then suddenly the next afternoon, I was happier with the output it was generating. I don’t know if this was a placebo, or my prompting was bad. I was also getting really slow responses during this time period. I guess there isn’t a way to really quantify that the answers are lower quality, so all I can go off of is my gut feeling. I thought this was weird though. I did find that if I wanted to consistently keep the response quality high I really had to plan, direct it and second guess what it said. I noticed this much more when I moved from 2D to 3D graphics, an area I don’t know well, so I needed a lot more help. I had to validate how it worked a lot more, do more of my own document reading and redirect what it should be doing. I also got annoyed with the session rate limiting and how it didn’t feel transparent about how to manage what might cause it to happen. Maybe it’s in the docs somewhere but I didn’t look into this much.
Overall I’ll probably keep my subscription. AI will have a place in my development workflow for now. There are clear uses I found last month and I wouldn’t be surprised to find more. The research and planning aspect of the chat and its integration with code is a nice experience. It’s also been pretty useful for coding adjacent tasks like how I’m using it for prepping for technical interviews. I’m undecided how I feel about it for personal projects, I’ll probably have to be more intentional about what I build with code and why.

Nice write up Matt