AI-native development: No code, no problem?
Will AI kill coding as we know it?
AI-native development shifts software creation from code to specs, promising developers a major productivity boost.
Writing and running software today means fighting a running battle against the forces of entropy. No matter how clean the starting code and how well-written the documentation, eventually one will be full of “Do not touch” flags and the other will fall out of repair.
“Eventually,” said Guy Podjarny, founder of Snyk and Tessl at OpenUK’s State of OpenCon last week, “you have a pile of code – and good luck trying to find the list of bug fixes, tests or even the original request [in the documentation].”
Today’s code-centric approach to software means there is no forcing mechanism requiring documentation to be maintained, which makes applications fragile.
But what if changing the documentation was all you needed to change the software? What if you could skip the code entirely?
That’s the vision for AI-native software development, where generative AI, rather than a human, writes the code to match changes in documentation.
“Our view is that software development will move from code-centric to spec-centric,” said Guy. “We’ll move from making the requirements disposable to them being central and long-lived.

“Code will become a build artefact, generated to satisfy the need of the requirements. The documentation will be the same: it will move from being decorative to something that is constantly descriptive.”
Advances in AI, specifically LLMs, make AI-native development possible. First, that systems can communicate in natural language (so they can understand documentation); second, that they can write code (to turn documentation into software); and third, they are capable of filling in the gaps (filling in what the documentation may have missed – like the colour of a button).
“A big, big unlock for productivity”
Switching to an AI-native development model isn’t just a big change in approach, but a whole new development paradigm.
What does that mean in practice – bearing in mind that no-one is doing this at scale yet?
“First, it means software is less fragile. You don’t risk breaking the existing code when you make a change.
“Second, software will be adaptable to different contexts; the code generated [by AI] will take the spec and context into account. Say you want it written in a specific language, or for a specific environment. It’s code that can adapt.
“Third, it creates software that is autonomously maintained. You can change the code without changing the spec – maybe to account for a vulnerable library without changing how the app works.
“It’s a big, big unlock in terms of developer productivity.”
“A feature, not a bug”
For now, AI-native development is a future to work towards, with questions still to be answered. For some of the event delegates, those revolved around code efficiency, persistent decisions and versioning.
“Creativity is a feature, not a bug,” said Guy. "Different developers would write different code, but they would all satisfy your request.
“Capture what the LLM has done that must be cemented and accept that the rest of the code may change – as long as it achieves your intended result.”
Unsurprisingly, the State of OpenCon attendees – who are mostly developers – also asked about the human’s role in the process.
“You should see [AI-native developers] as being less coders and more towards an architecture role; for example, understanding context and how the app will evolve.
“AI native development is not just a new app language but a new development paradigm.”
Tessl hosts a Discord community to discuss AI-native development, which you can find here.