I've been thinking alot about the practical limitations of "vibecoding" software. On one hand, it's liberating to spin something up quick. On the other hand, the realities of software making (generative or not) can come into play, like maintenance, ownership, etc.

As tools like Cursor get adopted outside of our engineering org and as our Product Design function starts experimenting deeper with Generative Design workflows, I put together a list of criteria for what I'm calling "pain-free software making for non-engineers".

Where I started…

Where we're at…

This about sums up my thoughts on this kind of work, something I've been asked a lot about lately.

I showed this to few engineers today and there was a common sentiment that these criteria seemed unnecessarily conservative. Why can't we encourage folks to go further? Why are we limiting our teams in this way?

I don't see these as limitations, but rather realistic expectations. If you don't understand you're codebase, you can get by just fine, but will eventually run into some thorny issues if you don't know what you're doing.

These limitations are important IMO, especially for "Software internals not understood by the author".

Hopefully this helps ground conversations (often from higher places) that inquire about the ability for non-engineers to take on engineering work.

Here's what I mentioned to one of the engineers who brought this up:

I would say that the audience for these rules are primarily non-engineers to identify software-making opportunities with the least amount of friction possible. If you're an engineer, of course, these don't really apply since you have the skillset/context to know when and when not to use a workflow like this.

Each one of these attributes (if you reverse them) adds potential roadblocks to a project if you are fully removed from the codebase. These seem conservative, but you still have the freedom to go as deep as you want in the product you're making.

There will be a lot more where that came from, curious to see how this evolves over time as more eyes lay upon it.

Loading...