At work recently, just due to the sheer number of issues working on projects, I have been formulating a metaphor for software engineering. My first thought was the idea of making something with a lot of holes in it, like a cheese grater, where you make something and it’s got a ton of holes in it. The metaphor instantly breaks down because you don’t want to fill holes in a cheese grater, at least not if you want it to work.
So I shifted over to something like making a wall, where you would put up a mesh as a framework and then fill it in. However that is probably a terrible way to make a wall, so while comprehensible it’s not a good metaphor. I guess more standard carpentry / framing makes sense with that, but if I were to set out to build a house, I wouldn’t initially think of the frame as the finished product. So the metaphor is a no go for me.
What actually fits is resolution. You see a high level picture of a car and it seems simple, but when you zoom in, there are innumerable details that must be decided and fleshed out. A proof of concept for a product is that kind of high level picture. Looking closer is one thing, though. Trying to drive it is another. The wheels start falling off the car if you don’t have lugnuts put there once you try to use it. It’s quite fast and easy to get to a proof of concept, but it takes time and careful thought to make sure the wheels don’t wobble or pushing the facade of the button doesn’t leave you with your arm sticking through the dashboard when trying to press it. That changes how I read a demo now: a working proof of concept tells me the picture is right, not that the car is built.
Execution and follow-through can bring it to be something usable. This is probably where the vibe coding apps fail the most, because you have to push through and track down every gap. Even with AI it is still a slog.
My design skills are…limited, but maybe getting better with experience. I’m still not sure if I am making worthwhile apps on my own, but I do have some I am proud of putting time into and making myself what I like. The case of selling is another matter, slowly poking at that beast, but at least I am working on my projects every day instead of (just) watching YouTube.