30 Days of Claude Code: How I Became More Productive and Worse at Programming

30 Days of Claude Code: How I Became More Productive and Worse at Programming

Reading time: 8 min
AI Claude Code Programming Productivity AI Tools Development Workflow Code Generation AI-Assisted Programming Software Development GitHub Machine Learning Developer Experience Automation

A month of AI-powered coding that replaced my Instagram reels addiction with something much more productive

The Accidental AI Arms Race

It started with lunch money, of all things. My company began offering lunch reimbursements, which is a nice perk that most people probably use for, well, lunch. But I had a different idea. Instead of upgrading my sandwich game, I funneled that money straight into what I like to call my “AI subscription collection.”

Fast forward a month, and I’m sitting here with ChatGPT Plus, Gemini, Cursor, and Claude Code Max (went with the cheapest Max plan, because even lunch money has limits). Four AI subscriptions running simultaneously, like I’m some kind of digital polygamist. Claude Code has basically become my girlfriend at this point. She might think I’ve lost it. She wouldn’t be wrong.

But here’s the thing: it worked. Specifically, Claude Code worked in ways I didn’t expect.

How AI Made Me Worse at Programming (But More Productive)

Here’s the uncomfortable truth: Claude Code made me lazier. Much lazier.

I started the month feeling a bit rusty with code. You know, the usual “haven’t touched this in a while” kind of rust. But by week two, I realized something disturbing: I was losing the ability to write code from scratch entirely. Why think through an algorithm when Claude Code could generate it instantly? Why debug step by step when it could just rewrite the whole function?

The pattern became addictive. Problem leads to Claude Code leads to working solution. My brain started outsourcing more and more of the actual programming work. Sometimes I’d watch it generate elegant solutions and think, “I genuinely have no idea how I would have approached this anymore.”

When Ideas Started Flowing Again

Something magical happened around day three of using Claude Code. I’d sit down with a vague idea, maybe just a sentence or two describing a problem I wanted to solve, and suddenly I was in flow state. Not the fake productivity flow where you’re just refactoring variable names, but actual building something new flow.

The ideas started coming fast:

Week 1: Getting Back in the Saddle I made real progress on torale, a project that had been gathering digital dust for months. Then I built cloudregion in a single night. Yes, one night. I couldn’t believe it either.

Week 2: The Momentum Builds I created an MCP tool for ClearML because why shouldn’t experiment tracking be easier? Then I started work on phlow, building on top of a2a architecture.

Week 3: Peak Productivity I finished phlow (well, mostly, you know how it is) and built modalkit over a couple of days. I also revived tracelet, my old idea for a backend agnostic experiment tracker.

Week 4: The Victory Lap (and One Epic Fail) I modernized Slither, my ancient C++/Python library that needed some love. Then I attempted to redesign my personal website and failed spectacularly. The branch exists as a monument to overambition.

I also started ideating on bigger problems: iterative ML development workflows, AI driven ML platforms. The kind of ambitious thinking that only happens when you feel like you can actually build the things you’re imagining.

The Workflow Evolution

By the end of the month, I’d settled into a surprisingly effective workflow:

First, I’d use Gemini for deep research. When I needed to really understand a problem space, Gemini became my research partner. Sometimes ChatGPT would jump in for specific questions.

Then came Claude Code for the 0 to 1 phase, and honestly up to about 80% completion. This was the magic. Give Claude Code a problem, and it would just build it. Single shot, working code, ready to run.

Once I had something working, Cursor’s agents were perfect for those 80 to 95% refinements and targeted changes.

For the final 5%, I’d go back to traditional editing. Some things you just need to touch yourself.

ChatGPT handled documentation images because even the best code needs good visual docs.

I also discovered task master early on, which became essential for keeping my todos persistent across multiple Claude Code sessions. Game changer.

The Productivity Paradox

The highs were incredible, but they came with a hidden cost. I felt “switched on” in terms of output. I was shipping more projects in weeks than I had in months. There were nights when I’d finish a session and genuinely not want to stop building.

My Instagram reels addiction got completely replaced by what I can only call “vibe coding.” Instead of mindlessly scrolling through 30 second videos, I was mindlessly asking Claude Code to build things for hours. It felt more productive, but was it really that different?

The uncomfortable truth started setting in around week three: I was becoming a manager of AI output rather than a programmer. I’d give Claude Code increasingly abstract instructions like “build me a tool that does X” and it would just do it. My role became reviewing code I didn’t write, making high level decisions about features, and occasionally fixing bugs I couldn’t have debugged from first principles.

The workflow felt brittle in ways that worried me. I wasn’t testing enough. Why would I, when Claude Code seemed so confident? I was lazy about switching between Claude Code and traditional editors because the context switch felt like going backwards. Why debug line by line when I could just ask for a rewrite?

Most concerning: I started avoiding projects that seemed too complex for Claude Code to handle in one shot. My problem solving muscle was atrophying in real time.

The Uncomfortable Truth

Looking back, this month wasn’t really about becoming a better programmer. It was about becoming a more productive one. There’s a difference, and it’s not always a comfortable one.

I shipped more projects in 30 days than I had in the previous six months. My GitHub activity chart looked incredible. I felt creative and motivated in ways I hadn’t in ages. But I also became demonstrably worse at writing code from scratch. And my sleep schedule completely imploded.

The “just one more feature” mentality became genuinely dangerous when Claude Code could actually deliver on it. I’d start a session at 9 PM thinking I’d be done by 10, and suddenly it’s 2 AM and I’m still going. The low friction to keep building combined with the productivity high created a perfect recipe for insomnia. I eventually had to stage a self intervention just to get my sleep back on track.

It’s like having a calculator in math class. Sure, you can solve complex problems faster, but your mental arithmetic skills quietly deteriorate. Except this calculator can also do calculus, linear algebra, and occasionally makes up theorems that sound plausible but aren’t quite right.

The question I’m left with: is this trade off worth it?

For building prototypes and exploring ideas quickly? Absolutely. For maintaining deep technical skills? I’m genuinely not sure. For most practical projects? The productivity gains are hard to argue with.

I think we’re in a weird transitional period where the models are good enough to be incredibly useful but not good enough to be fully trusted. They can work for minutes or hours, but not yet days or weeks. The human is still critical, but our role is shifting from “writer of code” to “director of code writing.”

Maybe that’s fine. Maybe that’s the future. But it does feel like I’m trading one kind of competence for another, and I’m not entirely sure what I’m giving up in the process.

What I Learned

My sleep took a serious beating. The “just one more feature” mentality became dangerous when Claude Code could actually deliver on it. I’d start a session at 9 PM thinking I’d wrap up by 10, and suddenly it’s 2 AM and I’m still iterating on ideas. The combination of productivity highs and low friction to keep building created a perfect storm for terrible sleep hygiene. I had to stage a self organized intervention to get my sleep schedule back in order. This week has been a deliberate break.

Claude Code is brilliant for 0 to 1 projects. Give it a clear problem and it will build you a working solution faster than you thought possible. But that final 5 to 20% still needs human intuition and taste.

Documentation hallucinations are real. Claude Code would sometimes write beautiful docs for features that didn’t quite work the way it described. I had to constantly remind it to actually look at the codebase when generating documentation.

Distribution is still the hardest part. I built all these things, posted about them on LinkedIn, and got crickets. Either I’m building the wrong things, or I’m terrible at explaining why people should care. Probably both.

The creative muscle atrophies fast, but recovers faster. I was surprised how quickly I went from “I have no idea how to start this” to “let me build three things this weekend.” The rust came off faster than I expected once I had the right tools.

So yeah, my lunch money went to AI subscriptions instead of sandwiches. I’m more productive than I’ve been in months, but I’m also probably worse at programming than when I started.

I’m still trying to figure out if that’s a problem or just the new reality.


The projects mentioned are on GitHub if you want to see what a month of AI-assisted building looks like.

Related Posts

Modern ML Cookiecutter Template

From dependency hell to device confusion - I built a modality-aware cookiecutter template that gets you from idea to training in minutes, not hours. Here's why modern ML projects need modern tooling.

Machine LearningDeveloper Experience