6 Months of Claude
I try to commit to things. My relationship with the craft of programming is significantly more intense than most of people I have worked with in my career. I don’t say this to slight others, a more diverse set of interests makes for more well-rounded people and there’s a lot of things to do as a human in a lifetime! That commitment to the craft comes with a cost - I am extremely wary of adding dependents and taking on responsibilies which do not give me maximal time and space to further the work on my craft.
The reason for being dependant phobic is the effort takes time. Unbelievable amounts of time. Since I started to commit to programming as a craft about 13 years ago, I have programmed almost every day for somewhere between 8 to 10 hours. I have devoted tens of thousands of hours to understanding and contributing back to each ecosystem like Ruby, iOS Native, Node, Browsers and Platform Infra over that time. Those hours are based on one simple foundational concept which I grasped at the beginning of my career: Every day I build on the work and knowledge of past me - so any extra work I put in today gives me the chance to build upon this further tomorrow.
My last 6 months of using Claude Code has really shaken my foundations, because I think at heart, it allows for others to have access to the skills you can gain from that commitment, without putting in the time beforehand.
I find it both very exciting, and deeply epochal.
As this is the third in a series on using Claude Code: first, 1 week, second, 6 weeks. You can opt to skip them, but I will briefly get you up to speed, feel free to jump the next few paragraphs till you hit a horizontal rule to continue.
I’m Orta, one of the co-founders of Puzzmo (where we make daily web games with interesting systems around them, think Wordle meets Fortnite.) prior to that I worked on the TypeScript compiler team at Microsoft doing an odd compiler bug/feature but mostly working on docs and web infra. I have a pretty serious backlog of open source contributions.
I lead a team of engineers here at Puzzmo, who have a varied amount of willingness to use or experiment with LLMs for their daily programming. I have used GitHub Copilot since it was a wee baby only in Microsoft and have a world of respect to the team working on it - I debated working on that insead of founding Puzzmo!
I found Copilot underwhelming on the TypeScript compiler, but very effective at guessing the end of my sentence when working in the fledgling Puzzmo codebase. Then this year, I explored Cursor and found myself very impressed at Cursor’s ability to infer the rest of the paragraph.
Then Claude Code came out, and completely changed what it meant to be a programmer. I found myself being able to simultainously ship features and architectual refactors at the same time by using multiple clones. Maintainance wins which typically took substantial amounts of time and resources became commonplace everyday PRs as I flew through ~1,100 pull requests to Puzzmo since I started using Claude.
The list of changes from the first 6 weeks is formiddable.
Interestingly, I found it very hard to quantify the change in a concrete metric like Pull Requests, commits or lines of code changed. I will re-explore this.
One final note before I get started, these posts end up outside of the programing ecosystem - so if you are deeply pessimistic about LLMs and their consequences, so am I! I don’t want to just put my head in the sand and pretend we are still in a pre-Claude Code world though. This stuff should be understood