Coding is like taking a lump of clay and slowly working it into the thing you want it to become. It is this process, and your intimacy with the medium and the materials you’re shaping, that teaches you about what you’re making – its qualities, tolerances, and limits – as you make it. You know the least about what you’re making the moment before you actually start making it. That’s when you think you know what you want to make. The process, which is an iterative one, is what leads you towards understanidng what you actually want to make, whether you were aware of it or not at the beginning. Design is not merely about solving problems; it’s about discovering what the right problem to solve is and then solving it. Too often we fail not because we didn’t solve a problem well but because we solved the wrong problem.
When you skip the process of creation you trade the thing you could have learned to make for the simulacrum of the thing you thought you wanted to make. Being handed a baked and glazed artefact that approximates what you thought you wanted to make removes the very human element of discovery and learning that’s at the heart of any authentic practice of creation. Where you know everything about the thing you shaped into being from when it was just a lump of clay, you know nothing about the image of the thing you received for your penny from the vending machine.
#AI #VibeCoding #design #development #making #creation #artiface #craft #coding #programming #technology #humanity
@[email protected]
One of the things you learn in many art classes as an adult is that the product is much less important than the process. Take pleasure in the process, and the outcome will take care of itself.
The artists I know draw and paint and sculpt (and since I know techie artists) “make” for the sheer pleasure of it.
Having said that, having programmed for fifty years, there’s a lot of boilerplate involved in programming. AI tools help one turn a human-language description of a problem and potential solutions into a partial solution in a matter of minutes.
One might ask: why is there so much boilerplate? Maybe our programming systems should seek to eliminate boilerplate by being more expressive?
To that, I agree. But one of the ways of being more expressive is using an expressive language to describe problems and possible solutions — and what is a coding-specific LLM if not that?
Of course, one can write buggy code in any language. The LLM does not free you from that, so walk through the output carefully, suggesting changes, asking for reasons of particular constructions. The LLM is also a pattern completer, so it will insert unnecessary, but frequently used things. The LLM has limited attention, so it may lose track of the project goal when down in the weeds.
#ai #vibecoding #design #programming #technology #llm