What’s a Zettelkasten Good for in the Age of Affordable LLM’s?

Last Saturday was Global Day of Code Retreat (GDCR) and one challenge session was to only use AI with prompts to implement the Game of Life rules. Folks who don’t use LLM’s a lot tried to describe the rules to the LLM in their prompts – while others knew that the rules are well-known and that the LLM could regurgitate them based on training data easily.

In some way, an LLM can appear omniscient. Prompt input merely primes their output, the actual info is already built-in.

We’re at a point where the large language models can immediately reproduce different things “from memory” without any additional input in the prompt. That makes relying on them more and more alluring, I notice in software craftsmanship meetups over the years. After all, they’re trained on everything, can produce anything (with varying levels of success).

Some junior dev GDCR participants mentioned that their day job already involves more prompting of Claude Code than actual typing to write software. (That’s so wild to hear. This escalated fast!)

Given the process of writing software with an LLM involves an all-knowing regurgitation device, what are your chances to add anything meaningful to the process as a junior developer?

A jaded senior may still feel like they know better and not worry as much; a junior certainly won’t have that self-esteem.

Wouldn’t it be rational to just tell the machine what to re-produce from “memory” and otherwise remove yourself from the production process?

A Human Edge

I’ve seen agentic coding tools clearly outperform me when it comes to creating working pieces of software. You cannot compete with an LLM on speed in a lot of cases. (That’s not a useful comparison: of course a computer is faster, even if the computer is wrong.)

Given both my positive experience with LLM’s and my years with a Zettelkasten, there’s no reason to stop using my Zettelkasten now: I’m writing about the whole “Zettelkasten” topic for more than 10 years, and I use my own Zettelkasten for more than 15 years.

The Zettelkasten as a work and thinking environment is an enabler. It allows its user to tackle hard problems over a span of years. I amassed a lot of tribal knowledge in macOS and iOS development over time; things that were never public, from a niche, or that are gone from old chat histories. For example, I can pull out instructions that were written to my future self, but that also work for other selves, including LLM’s.

A prerequisite of expertise is to work on problems others can’t. To outperform the majority.

An LLM can maybe speed up some tasks. It can also slow you down without you noticing. In short, it’s a mixed bag at best. The studies from this year indicate as much – e.g. Apple’s own The Illusion of Thinking: Understanding the Strengths and Limitations of Reasoning Models via the Lens of Problem Complexity was a real downer for people who were bullish about GenAI for coding.

So outperforming the majority by LLM’s is not a guarantee for success. (Out-produce – maybe.)

Meanwhile, the Zettelkasten is a companion for your whole career, your life even. It’s not a tool to merely finish a project in an orderly way.

For programming careers, the writing never stops: one feature or bug fix after another, the coding never ends. One experiment follows the next to deepen your understanding of a problem space. The performance of experts is not in scholarly discussions and leet code challenges, but in adapting the system you work on to do different things without breaking (too too much).

The proof of your expertise and understanding is in how the artifact, the software, behaves in the end.

You can work on the same code base for decades. Or can switch apps, projects, companies. The thinking, the knowledge, all the writing stays with you.

That’s what experienced programmers bring to the project: expertise, built over a long period of time.

Expert programmers bring depth to the table. Depth they developed and embody.

On top of that tacit knowledge, with a Zettelkasten, they even have a way to bring the community discussion forward.

An LLM doesn’t even compete in that space.

That’s where you can shine.