AI made me 10x more productive. It took three years to do it.

The graph is a hobby project I’ve been building since 2019: total Python lines, measured at the end of every quarter.

From 2023 to early 2025 it grows the way every side project grows: slow, steady, nights and weekends.

Then it goes vertical. 62,000 lines in March 2025. 639,000 by July 2026. Ten times the codebase in under a year and a half.

Here’s the part that matters: I started using AI to write code in 2022. The vertical part starts in 2025. For three years, I had an excuse.

A Lab With One Variable

Back in 2019 I started the project for fun: a user tracking platform with a dashboard, to show off what I’d learned in seven-plus years in ad tech.

No customers, no deadlines, no team. That’s what makes the graph honest. Nothing moved that line except how fast I could build.

Three Years of Bad

In 2022 I brought AI into the loop.

First ChatGPT, then Copilot. Helpful. Not visible in the graph.

When GPT-4 came out in 2023, I ran the big experiment: I loaded my entire codebase plus the database schema into a vector database and used RAG to generate code.

It was bad.

I tried cleaning up the output with ChatGPT. Still pretty bad.

By late 2024, Copilot inside VS Code could rotate through models. Better. Still bad. The output needed cleanup, and more importantly, it needed a process to follow. The model alone wasn’t enough.

Three years of “AI writes my code now,” and the graph barely noticed.

Then the Tools Caught Up

Then 2025. I gave o3 a shot at cleaning up the old mess… still pretty bad. But Sonnet running inside Copilot was different.

Then Cursor with Opus. Today it’s Cursor and Claude, with whatever the latest model is, right now, Fable.

That’s the wall in the graph. Not AI, good AI.

I get why a 2023 engineer was reluctant. The models weren’t there, the tools weren’t there. A 2025 engineer has no excuse. Download Cursor, turn on Auto mode, and watch your own hockey stick.

And yes, engineers are complaining about vibe-coded monolithic messes. We complained about human-generated monolithic messes long before AI. The mess isn’t new. The speed is.

Lines of Code, Really?

I know, lines of code doesn’t necessarily mean productivity. But it has a direct correlation.

Unless your team has an obsessive rockstar developer who takes pride in shipping results with the least code humanly possible, lines of code is a safe proxy for how fast your product is expanding.

What it can’t tell you is whether the product should be expanding. Speed and direction are different problems (that one is Fake Velocity.)

The Zero-Cost Fork

Where does this go? Honestly, I can’t tell. Maybe the models plateau. Maybe they don’t. Maybe non-developers pick up these tools next, and every PM starts shipping code.

I can only tell my own story, and it ends at a fork. When the cost of building drops to nearly zero, when the tools are so good and so fast you can confidently ask them to build anything, there are only two paths: infinite scope creep, or infinite ROI.

The building is free either way.

The thinking is what got expensive. As I wrote in AI Moved the Bottleneck to Your Head, and the thinking is what decides which path you’re on.

Both paths produce the same beautiful graph.

I’m betting on ROI. Ask me in another 600,000 lines.

Leo Celis
Latest posts by Leo Celis (see all)