Sitemap

The ease of expertise

10 min readJun 16, 2026

I recently posted a picture of potato latkes I made and got one reaction that I didn’t expect — “I don’t even attempt to try making these”. That surprised me, because I consider them to be not very complicated to make — they only have a few ingredients, and the technique is not difficult. Then I started to dig into all of the things that went into that opinion, and that led down into thoughts about the nature of expertise in a much more general way.

Press enter or click to view image in full size
The latkes

The latkes are actually really easy to make, but in making that judgement, I’m taking for granted a WHOLE bunch of things — I have a nice food processor, big pots, a lot of cooking experience, my mother’s recipe (which is pretty simple but refined over many attempts), peelers, specific experience to know they’ll come out better if I strain the batter for a few hours beforehand, a really nice fairly large capacity straining pot to do that in, large pans for frying, a bunch of big sheet pans with racks for letting them drain and crisp up after frying, more specific experience to know they’ll get crispier if I drain them on racks first instead of putting them direclty on plates lined with paper towels. Not much trouble at all really.

By many measures, I’m an expert home cook. I’m not a professional, but I’ve spent a lot of time thinking and doing about how to make things easier. I can pick up a new dish and apply all of that immediately. I am comfortable with knives, heat, and seasoning. I have a lot of equipment, if not the exact pieces I need to make most dishes then something proably very close to that. I have enough experience to know when something is going right or wrong, and course correct.

For all of this, a lot of the work is not around doing the work, it’s around building systems to make the actual work itself easy to do, or at the very least, easier.

This has some parallels in the practice of karate. We develop skills over time by repeating the basics until they are second-nature. The doing itself is what builds experience. Refinement can’t happen at the beginning, because you’re focused on what to do rather than how or why. But as you repeat the same thing over and over again, the sequences and motions become ingrained. You don’t have to think about the broad strokes anymore and you can focus on the details — what’s my other hand doing, are all of the parts of my body synchronized, am I striking with the correct part of my fist, etc… The hard stuff becomes easy, but it can’t be done without doing the work to make it easy. I do this because I want the end product, but also because I love everything about the process along the way.

There’s an old joke (with many variations) — a repair person is called in to fix a malfunctioning fridge. He listens to the machine and taps it once with a hammer, and says to the owner “that will be $150” The owner says “but all you did was tap it once with a hammer”, and the repair person says “oh, it’s $10 to tap with a hammer, but $140 to know where to tap”. It’s easy if you already know how (and have a hammer).

When I was a kid, I had a conversation with my father about how school was teaching me to think instead of memorize things and he responded that the things you memorize are the things you think with. (I didn’t remember everything, but I remembered that.) I’ve been reading a number of articles about the specific erosion of the pathways to build expertise in the age of AI — by having an agent “do the grunt work” for you, we’re hollowing out the development of expertise that turns a junior at something into a senior. The phrase “eating your seed corn” has been making the rounds. This is directly relevant here.

This essay wasn’t originally about AI, but I’m seeing these lessons all over the place. When you ask an AI to do something for you, you’re losing a big part of the experience that comes with understanding how the underlying system works. For years, when interviewing programmers, I used to ask one very specific question all the time, a very simple one:

What is 2¹¹?

The answer to this question gave me a very reliable predictor, at the time, of whether the person I was interviewing understood the internals of how computers worked. I’m personally not great at math, but when I was learning computer science, powers of two were drilled into everything until we breathed them. So for a programmer of that era — did they understand powers of two? Could they compute one in their head that was just slightly large enough that they probably wouldn’t know if offhand from memory? Did they have specific domain experience in something like computer graphics that would result in them knowing the answer immediately? The people who answered with odd numbers did not turn out to be good programmers, as a marker of not having done the work. As the years went on, the number of people who could accurately answer this question dwindled, and I replaced it in my interview process because it was no longer giving a good signal, partially because the number of common programming tasks a person could be good at that required a solid understanding of binary relationships had dwindled. Doing the work meant something else.

But the point remains — as a very broad generalization, experts in a field want to know how the internals of that field work and they get deep into the details. Often they have no choice, because they’ve seen over years or decades of hard work how things fail, in those very details. Every failure is a learning experience that builds durability and a better mental model of the problem space. “Hey robot, fix this for me”… is not that. Yes, it’s true that computing is more democratized now, and the number of things that non-experts can accomplish is much greater.

Thirteen years ago, we had the same debate about computing usability, mostly in the context of iPads. I wrote this:

Yes, it would be better if people had better critical thinking skills and looked at all problems as things they could fix — and the increase in the number of people who do is obscured by the stratospheric rise in the number of people who don’t but can still participate in modern computing society. Let’s have better technical training in general, but let’s also step back for a minute and appreciate how amazing it is what people can do even without it.

I’m still in awe of how we’ve evolved computer technology to allow people without programming experience to do assisted work. This is fundamentally leverage — allowing people with skills to write modeling programs that let other people use those skills. AI as it exists today is a massive expansion of that, and scarily so. It begs us to ask the questions not just of how those skills are applied and whether it’s efficient to do so, but also where do they come from in the first place and how are they developed, and do we even need humans to do that? At the moment, the machine can’t do your job well enough to replace you, but it can do it well enough to convince someone who doesn’t know any better that you do it poorly. AI still, for now, lacks an accuracy filter, and as useful as it may be as a force multiplier for someone who has some expertise, it also at the same time has the vast potential to lead people without that expertise astray in ways they don’t even have the framework to understand.

I have been developing software for nearly my entire life. I’ve never written an iPhone app. I am now using AI coding tools to develop some apps, and it’s been shockingly easy. There’s that word again, which I just effortlessly dropped in here. It has been easy. But I already have a good sense of what the pieces of an app are, how they should flow, what a good user experience looks like, why testing is important, how software should be architected, how to debug things when they don’t go as planned, and again the specific expertise to know how to describe what’s wrong and what things should look like. It’s not 100% because I lack specific domain knowledge of app development and I am not a seasoned developer in this ecosystem, but I still have a good sense of when the machine is giving me answers that aren’t right. Can someone without the experience that I have use an AI to make an app? Will it be as good as one that I make? Will mine be as good as one produced by a developer more experienced in this domain? All good questions.

I’ve learned some things while developing these apps, but I haven’t fooled myself that I’ve learned how to develop an app all on my own. I absolutely still could learn to do that, but the very important question at the end of that is: do I need to? Arguably no, in this case all I want is an app that does what I want it to do. The barriers to my learning to do that (mostly “I don’t want to spend the time”, not “I lack the ability to ever do this”) are all still there. I’m using AI tools because they’re great for me at filling in two kinds of gaps that I have: 1) that specific domain knowledge I don’t have and don’t want to spend the time to learn how to do but where I do have enough of a picture of the final product to evaluate whether it’s good or not because it is related to knowledge I do have, and 2) getting over the energy of activation where I look at a problem that involves those kinds of tasks and say “that is not a thing I can accomplish by myself in a reasonable amount of time because it requires learning too much of the part that I don’t know”. Scaffolding those gaps allows me to move ahead and build with the pieces that I do know how to build.

I’m under no illusion that this is a substitute for a person who’s skilled and experienced at those tasks, but this nevertheless solves a very real bootstrap problem for me. I can’t hire those skilled and experienced people without validating that the concept I’m building works by signing up customers. Previously, I would have had to build a team similarly engaged, but now I can do that by myself and build the team later after I already know some of what works. But importantly, I already have a lot of skills and experience that I built over years of failure and success of doing things by hand, and with teams of other experts or people on their way to being experts. I recently wrote another piece about AI coding and maintainability. In that piece, I used the phrase “it’s a mixed bag of horrifying failure and horrifying success”, which I think encapsulates how I feel about all of this. The tools are useful… to me. Would they be useful in becoming me?

The work is not just doing the work, it’s building the support systems to make the work repeatable and durable long-term. I’ve been able to identify five major pieces to this:

Expertise, Abilities, Practice, Process, and Equipment.

  • Expertise answers the question “am I building the right thing in the right way?”. Building the right thing is just as important if not more so than building the thing right.
  • Abilities are the specific underpinning skills to execute the work within the context specified by the expertise.
  • Practice is the application of expertise and abilities together in larger and larger contexts to develop instincts to be able to do the work efficiently and quickly, and build the foundations for increasing those skills. Within practice, there’s also an aspect of perseverance — using the lessons of failure to develop resilience and experience.
  • Process is a framework for repeatability — is there a formal method by which the work gets accomplished (and do you understand what it is), or are you just feeling your way through it every time? Can you teach someone else how to do the work? Have you interrogated the nature of the work or are you just winging it on instinct?
  • Equipment is the least complicated but also a significant potential barrier — do you actually have the tools to do the work?

When learning a new skill, I try to approach it from this viewpoint — what am I building in myself to be able to make this easy. What are the experiences and abilities I need to stack on top of what I already know in order to make this easy. Sometimes, what do I need to unlearn, to make this easy? Sometimes I look at tasks and think “it’s too much work to make this easy”. How can I both do this work and build durable systems to enable other people to do the work without me? (This piece isn’t really about building communities of expertise, but that’s also a whole other dimension.) Sometimes the answer will be that I want to build the capabilities in myself, and sometimes the answer will be just that I want the job done, but even in the latter case I’m still trying to do it in such a way that I make systems for doing the job rather than just a one-off of a particular task.

I am more conflicted about this than when I started writing it. I don’t think the value of expertise is going away anytime soon, but computers have always been tools for literally codifying experience and process, and making it available to others. Sometimes that represents expertise and sometimes it doesn’t. Sometimes it’s useful and sometimes it’s not. Sometimes it’s easy and sometimes it’s not. I wish I had a more pithy conclusion about this, but all I have are more thoughts and questions.

(This piece was written without the assistance of AI, so if you hate it you can feel free to come yell at me about it on threads, bluesky, or mastodon.)

Adam Fields
Adam Fields

Written by Adam Fields

Co-Founder www.graphika.com, Human Full Stack Systems Architect, this is my personal account. https://counter.kitchen * https://adamfields.com