Durable on the Hard Software Podcast
I sat down with Antonio and Upal from bem.ai on the Hard Software podcast to talk about why raising the abstraction level of software development above code and into natural language requires not just the generation of correct code, but also handling the entire software lifecycle without code.
It starts by turning the initial idea into a deployable and working app. This is an interactive process over a natural language specification, potentially requiring the user to answer questions, approve assumptions, or provide alternatives if certain requirements are not possible or contradictory. I dig into why such an interface is necessary here.
Before deploying the application, users will want to verify that the specification correctly captures what they want, and that the built app correctly implements the specification.
The app must be built to be compatible with a target deployment environment. It must also be deployable without requiring user intervention to package it, handle its dependencies, or deal with authentication.
Once an app is deployed, users will want to monitor it and understand why actions did or did not take place. They may want to supervise certain critical actions until they build trust in the correctness of the app.
At any point, users may need to modify the app by going back to the spec and asking for edits.
We discuss how we think about these capabilities from a product perspective, and how we’ve architected the unique AI that powers it.