There's no meaningful taste-skill gap in programming because programming doesn't involve tacit skills. If you know what you're supposed to do, it is trivial to type that into a keyboard.
The taste-skill gap emerges when you intellectually recognize what a quality creation would be, but are physically unable to produce that creation, and judge the creations you are physically capable of producing as low quality
The oft cited example is drawing a circle. Everyone knows what a perfectly round circle looks like, but drawing one takes practice.
It doesn't take practice to type code. If you know what code you're supposed to write, you write it. The problem is all in the taste step, to know what code to write in the first place.
> There's no meaningful taste-skill gap in programming because programming doesn't involve tacit skills. If you know what you're supposed to do, it is trivial to type that into a keyboard.
Strongly disagree here. The taste-skill gap still applies even when there's no mechanical skill involved. A lot of amateur music production is entirely "in the box" and the taste-skill gap very much exists, even though it's trivial to e.g. click a button to change a compressor's settings.
In programming, or more broadly application development, this manifests as crappy user interfaces or crappy APIs. Some developers may not notice or care, sure, but for many the feeling is, "this doesn't seem right, but I'm not exactly sure what's wrong or how to fix it." And that feeling is the taste-skill gap.
I'm not Ira Glass, I have no idea what he meant. I would argue that taste-skill gap doesn't exist in writing either.
You either know what you want to write or you don't. If you hate the words you wrote, write something else. If you don't know what you want to write, that's undeveloped taste, not a gap preventing your from expressing your good taste.
Yes and for me vibe coding / agent assisted coding is not just pouring canned skills but about developing skills to handle this new machine in a way to produce intended results.
That's absolutely not the case. I can look at code and realize that it's garbage because the architecture sucks, performance degradation is out of the window, and there's lots of special casing and unhandled edge cases. That's the taste part. But I can also absolutely be underqualified and be unable to figure out how to improve the architecture, fix performance issues, or simplify special/edge case handling.
Then your taste hasn't developed. You don't know what good code for the problem even looks like. It's not that your code doesn't resemble what you wanted to make, you don't know what you want to make at all.
The taste-skill gap emerges when you intellectually recognize what a quality creation would be, but are physically unable to produce that creation, and judge the creations you are physically capable of producing as low quality
The oft cited example is drawing a circle. Everyone knows what a perfectly round circle looks like, but drawing one takes practice.
It doesn't take practice to type code. If you know what code you're supposed to write, you write it. The problem is all in the taste step, to know what code to write in the first place.