I imagine that it is theoretically possible to successfully vibe-code, but probably not with a conventional project layout nor would it look much like traditional programming. Something like your interaction primarily being a “requirements list”, which gets translated into interfaces and heavy requirements tests against those interfaces, and each implementation file being disposable (regenerated) & super-self-contained, and only being able to “save” (or commit) implementations that pass the tests.
…and if you are building a webapp, it would not be able to touch the API layer except through operational transforms (which trigger new [major] version numbers]. Sorta like MCP.
Said another way, if we could make it more like a “ratchet” incrementing, and less like an out-of-control aircraft… then maybe?!?
I vibe code helper functions and gut them to repurpose them for my needs. But I suppose even that isn’t really vibe coding, I guess that’s actually more like browsing stack overflow.
For that to work, the people doing the vibe coding would need to be experienced and skilled at writing test suites and managing strict version control practices. Which at that point, you’re not really a vibe coder, you’re an actual software engineer. So what you’re describing is just software engineering with extra steps lol
Well, I do have MBSE on the brain, but the idea here is more like a low-code/no-code environment with an ABSOLUTELY ENORMOUS “pit of success”… so large that even GenAI can reliably fall into it. Numbered tabs, you go left to right answering questions and fiddling with with prompts, paint-by-numbers for working software.
I imagine that it is theoretically possible to successfully vibe-code, but probably not with a conventional project layout nor would it look much like traditional programming. Something like your interaction primarily being a “requirements list”, which gets translated into interfaces and heavy requirements tests against those interfaces, and each implementation file being disposable (regenerated) & super-self-contained, and only being able to “save” (or commit) implementations that pass the tests.
…and if you are building a webapp, it would not be able to touch the API layer except through operational transforms (which trigger new [major] version numbers]. Sorta like MCP.
Said another way, if we could make it more like a “ratchet” incrementing, and less like an out-of-control aircraft… then maybe?!?
I vibe code helper functions and gut them to repurpose them for my needs. But I suppose even that isn’t really vibe coding, I guess that’s actually more like browsing stack overflow.
For that to work, the people doing the vibe coding would need to be experienced and skilled at writing test suites and managing strict version control practices. Which at that point, you’re not really a vibe coder, you’re an actual software engineer. So what you’re describing is just software engineering with extra steps lol
Well, I do have MBSE on the brain, but the idea here is more like a low-code/no-code environment with an ABSOLUTELY ENORMOUS “pit of success”… so large that even GenAI can reliably fall into it. Numbered tabs, you go left to right answering questions and fiddling with with prompts, paint-by-numbers for working software.