My partner and I started working on an uncomplicated collaborative calendar app earlier this year—mostly because we’ve wanted something like it for years—and we’ve been using Claude and Claude Code heavily to help us move faster. This is a high-level train of thought as it relates to how LLMs affect the feedback loop and honing your craft.

I could have built this app myself. I have enough experience as a developer to design the architecture, build the bones of the thing, and spot my knowledge gaps to fill along the way.

Using Claude Code has made the whole project faster because it’s helped me work in smaller, faster feedback loops end to end. We got a first functional prototype working within a day, had a stable version within a week, iterated on the collaboration mechanisms several times over a month, and ended up with a pretty solid app within a few months.

Some parts of this process I could’ve done on my own quite quickly. The feedback loop would’ve been real small. Other parts I’d have had to stop, learn a bunch of new things, klodge away at it to apply that learning, and then, eventually, I’d get my feedback loops going. The next time I’d have to do or think about things, I’d do them faster and with less conscious effort.

With LLMs, one can effectively skip the iterative learning and reinforcement process. When I was learning to play guitar, the feedback loop was klodgey and slow—it takes a long time master the chords, fingerings, and knit them together well enough to play the song. As a more experienced player, I know the chords, fingerings, and transitions unconsciously, making the previous feedback loop essentially immediate, and letting me shift to the next “level” of feedback loop, where I can work at the song as a whole, or compose my own music, rather than work at getting the chords and transitions right.

LLMs similarly let you jump over those early, slow feedback loops, right to the next “level” that those feedback loops unlock.

This is what makes working with LLMs feel super high velocity at times. You start closer to the outcome. That part’s great.

Of course, this means you skip the same iterative learning and reinforcement process, because the LLM is doing that part for you.

There is no way I would have been successful with building out this app if I didn’t have prior experience with both frontend and backend development. There were dozens of cases where I had to challenge Claude’s architectural decisions, tradeoffs, and solutions, and do it myself. I knew enough to reason about what Claude was doing, and what it might be doing wrong. But I only knew these things because I’d previously developed the unconscious understanding, mindsets, and approaches that come with developing your craft.

When you’re using a tool like Claude Code, you’re ultimately trading off your own mastery of your craft for immediate, short-term velocity, and rather than improving your own craft, the craft you’re iteratively learning and reinforcing is that of using LLMs.