{"id":36466,"date":"2026-08-27T15:01:39","date_gmt":"2026-08-27T13:01:39","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/?p=36466"},"modified":"2026-08-27T15:01:41","modified_gmt":"2026-08-27T13:01:41","slug":"the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/","title":{"rendered":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">At the last event I spoke at, I asked the audience to raise their hands three times: those who have ever tried vibe coding, those who have generated an entire project fueled by prompts and coffee, and those who eventually threw it all away and rewrote it from scratch. The hands went up almost in unison, and almost always, it was the exact same people all three times.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dejected faces, almost resigned to having to rewrite something that seemed perfect after the first few days of development. <em>It seemed<\/em>, indeed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The reality, however, is very different from the one told through clickbait titles and online banter. The truth is that leaving an AI ungoverned is like giving a marker to a toddler and leaving the room, convinced that the piece of paper you gave them will be used to create a masterpiece rather than a handful of confetti, which is what will actually happen.<\/p>\n\n\n\n<h2 id=\"h-the-blame-lies-partly-on-a-tweet\" class=\"wp-block-heading\">The blame lies (partly) on a tweet<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you are looking for a culprit, the most cited name is Andrej Karpathy. Co-founder of OpenAI, former head of Autopilot at Tesla, and now at Anthropic\u2014Karpathy is someone who knows a thing or two about language models. In January 2023, he tweeted that &#8220;the hottest new programming language is English&#8221;. The tweet reached millions of views and triggered apocalyptic headlines for software developers. Two years later, he doubled down and coined the term &#8220;vibe coding&#8221;: you accept everything the AI generates, you don&#8217;t read the diffs anymore, you paste errors without commenting on them, and you request random changes until the bug disappears. He said it with a smile, referring to weekend throwaway projects, but half of the Internet took it as a serious working methodology.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This approach brings to mind a famous line by Italian director Nanni Moretti in &#8220;Ecce Bombo&#8221;: &#8220;faccio cose, vedo gente&#8221; (&#8220;I do things, I see people&#8221;). It seems very productive, until someone asks you what you have actually built.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then there is what we might call the &#8220;Next, Next, Next laziness&#8221;: how much pleasure do you get when you install software by clicking &#8220;Next&#8221; repeatedly, without having to answer any questions? In vibe coding, the same thing happens: we write a poorly written prompt\u2014the kind our elementary school teacher would have ripped to pieces in front of the class\u2014but the model, trained on trillions of parameters, understands and interprets everything correctly.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-2-1024x572.jpg\" alt=\"\" class=\"wp-image-36467\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-2-1024x572.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-2-300x167.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-2-768x429.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-2.jpg 1376w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 id=\"h-the-myth-of-zero-to-prod\" class=\"wp-block-heading\">The myth of zero-to-prod<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Vibe coding works beautifully in online demos, where the AI behaves like a senior fullstack developer capable of solving everything in five minutes. The problem arises when you apply it to a real company&#8217;s legacy management software: a hundred thousand lines of code written by people who have since changed jobs.<br>In that context, the AI stops looking like a senior dev and starts resembling an hyperactive intern on their first day of free coffee: the one who, panicking, tries to fix bugs by commenting out random lines of code just to show you that &#8220;it compiles&#8221;. And you are left staring at the screen, wondering why you accepted that pull request.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The reason is technical and has a precise name: context rot. The more tokens enter the context window, the less reliable the model&#8217;s response becomes. As the chat grows longer, the system forgets the decisions made at the beginning and ignores the constraints established ten messages before. How many times did you feel like punching the monitor when the model, for the nth time, started including that library you had explicitly told it not to include, or got fixated on creating variables in camelCase when the entire program is written in snake_case? Without a spec anchoring the conversation, you aren&#8217;t optimizing anything: you are simply losing context with every exchange.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The practical effect is a spaghetti code born from different chat sessions: three distinct conversations produce three different ways of handling errors within the same project, and no one remembers which one is the &#8220;right&#8221; one anymore.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The worst problem, however, is not the obvious error that stands out immediately. It is the plausible hallucination: code that looks correct, passes a superficial review, and hides a subtle bug. The example I use most often is a fictional native <code>Array.shuffle()<\/code> in JavaScript, which simply does not exist. The generated code invokes it with such natural confidence that your instinct is to to nod, think &#8220;ah, finally they standardized it,&#8221; and let it pass because &#8220;after all, it&#8217;s an edge case.&#8221; Then, production goes down.<\/p>\n\n\n\n<h2 id=\"h-horse-rider-and-harness\" class=\"wp-block-heading\">Horse, rider, and harness<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The thesis I brought to the stage is not that vibe coding is dead: it is dead as a unique approach. There is a way to turn the AI from an unpredictable assistant into a governable executor, and it&#8217;s called Spec-Driven Development (SDD).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The metaphor of harness engineering illustrates the concept better than any formal definition: AI projects fail in production due to a lack of infrastructure surrounding the model, not because of the model itself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The language model is like a fast, powerful horse that doesn&#8217;t know where to go on its own. The harness represents the set of constraints, guardrails, and feedback loops that direct that energy in a controlled way. In this scenario, the developer is the rider: providing the direction and validating the path, without having to hold the reins at every single step.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-3-1024x572.jpg\" alt=\"\" class=\"wp-image-36469\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-3-1024x572.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-3-300x167.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-3-768x429.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-3.jpg 1376w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Spec-Driven Development is a methodology where specifications assume the role of first-class executable artifacts. The flow is reversed: you write the contract first, and then let the AI generate the code respecting it. The most effective synthesis is encapsulated in this principle:<\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">The prompt must not make the AI guess what you want. The spec must tell it exactly what to execute.<\/code><\/span><\/pre>\n\n\n<h2 id=\"h-writing-a-contract-the-ai-cannot-misunderstand\" class=\"wp-block-heading\">Writing a contract the AI cannot misunderstand<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The instruction &#8220;I want a secure login&#8221; might be enough for an experienced developer who has faced the problem a thousand times and knows the company standards.<br>For an AI agent, however, it is not enough. Without details, it will fill the gaps with assumptions, and the hypotheses of a language model are statistically plausible, but not necessarily correct. The skeleton of a structured spec I adopt for any complex task is essential, fits in a few Markdown lines, and is enough to eliminate most of the ambiguity:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\">## OBJECTIVE<\/span>\nWhat the system must <span class=\"hljs-keyword\">do<\/span>: one clear line\n\n<span class=\"hljs-comment\">## NON-GOALS<\/span>\nWhat it must NOT <span class=\"hljs-keyword\">do<\/span> (refresh token, OAuth, unapproved libraries...)\n\n<span class=\"hljs-comment\">## CONSTRAINTS<\/span>\nStack, allowed libraries, expected performance\n\n<span class=\"hljs-comment\">## EXPECTED OUTPUT<\/span>\n- &#91; ] Verifiable success criterion <span class=\"hljs-number\">1<\/span>\n- &#91; ] Verifiable success criterion <span class=\"hljs-number\">2<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">You don&#8217;t need proprietary tools: Markdown is easily readable by the team and represents, at the same time, the mother tongue of Large Language Models. If you want to eliminate natural language ambiguities altogether, you can use EARS (Easy Approach to Requirements Syntax), a rigorous notation created by Alistair Mavin at Rolls-Royce in 2009 for jet engine requirements. Patterns like &#8220;WHEN [event] THE system shall [action]&#8221; map every decision to a logical constraint that can be tested automatically.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Although it was not born for artificial intelligence, this syntax neutralizes the main weakness of autonomous agents. A solution designed to prevent misunderstandings between humans turned out to be ideal for regulating communication between developers and machines.<\/p>\n\n\n\n<h2 id=\"h-a-real-case-from-two-hours-of-chaos-to-half-an-hour\" class=\"wp-block-heading\">A real case: from two hours of chaos to half an hour<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The difference is best seen with a concrete example.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Imagine a PHP API that stops working after upgrading to PHP 8.1. In vibe coding mode, the workflow quickly degenerates: you write &#8220;it&#8217;s not working anymore&#8221;, the model suggests a patch, you reply &#8220;it&#8217;s still not working&#8221;, the system generates a second version that breaks another component, and finally a third version that goes back to the first with a new bug. The tally? Two hours lost, wasted resources, and no clear record of what actually changed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">With a minimal spec, the same problem is solved in a fraction of the time:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\">## PROBLEM<\/span>\nAPI \/v2\/orders returns <span class=\"hljs-number\">500<\/span> after PHP <span class=\"hljs-number\">8.1<\/span> upgrade\n\n<span class=\"hljs-comment\">## CONTEXT<\/span>\nError: &#91;specific log] | File: OrderController.php:<span class=\"hljs-number\">45<\/span><span class=\"hljs-number\">-67<\/span>\n\n<span class=\"hljs-comment\">## OBJECTIVE<\/span>\nFix <span class=\"hljs-keyword\">while<\/span> maintaining backward compatibility with v1 client\n\n<span class=\"hljs-comment\">## DO NOT TOUCH<\/span>\nsrc\/Models<span class=\"hljs-comment\">\/* | migration files\n\n## VALIDATION\n- &#91; ] Test suite passes\n- &#91; ] v1 API continues to work<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">If a test highlights a missing detail\u2014such as date serialization in the server&#8217;s time zone instead of UTC\u2014the solution does not consist in arguing in chat. You update the spec by adding the explicit constraint on the time zone and rerun the task. This way, the knowledge remains formalized and tracked on Git, available to anyone who needs to modify that code in the future, instead of being forgotten in a chat history that no one will ever reopen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The gap between documentation and source code has always been a primary cause of bugs and regressions. Spec-Driven Development solves this problem at its root, turning the spec into an indissoluble contract that guides the code&#8217;s evolution.<\/p>\n\n\n\n<h2 id=\"h-when-the-approach-is-not-needed\" class=\"wp-block-heading\">When the approach is not needed<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">It would be naive to present SDD as a cost-free solution. Writing a fifteen-minute spec for a bug that can be fixed in two minutes is bureaucracy, not engineering: for elementary tasks, vibe coding remains the most logical option. Moreover, specs are code in all respects and require maintenance. If the software evolves through manual hotfixes while the contract remains obsolete, the spec transforms from a source of truth into a source of lies. A constant alignment process is necessary: you cannot just write the document once and forget about it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is also a more subtle risk: an extremely precise but incorrect spec will produce, with deterministic rigor, the wrong software. The requirements document must be validated with the same care reserved for code, as it does not constitute an automatic safe conduct.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-infografica-1024x572.jpg\" alt=\"\" class=\"wp-image-36470\" srcset=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-infografica-1024x572.jpg 1024w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-infografica-300x167.jpg 300w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-infografica-768x429.jpg 768w, https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-infografica.jpg 1376w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 id=\"h-code-is-a-side-effect\" class=\"wp-block-heading\">Code is a side effect<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The true value of Spec-Driven Development emerges in medium-to-long term projects or those developed in teams: in these scenarios, the benefits materialize after a few days, with a reduction in iterations and unexpected issues.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is a cultural revolution: source code shifts from being the primary product of work to the role of a simple compilation artifact.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The spec becomes the real asset. Today, knowing how to write it in a clear, verifiable, and unambiguous way represents the real competitive advantage for those who want to govern AI instead of being subjected to it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you too have clicked &#8220;Accept&#8221; after endless chat sessions that had melted your cerebral cortex, just to finish the job and go home, approving a PR with the solemn promise &#8220;I&#8217;ll review it on Monday&#8221;; if you too are part of this club, SDD won&#8217;t magically solve all your problems, but it will drastically reduce the number of coffees you have to buy your colleagues for losing the race of the code with fewer errors.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>At the last event I spoke at, I asked the audience to raise their hands three times: those who have ever tried vibe coding, those who have generated an entire project fueled by prompts and coffee, and those who eventually threw it all away and rewrote it from scratch. The hands went up almost in&#8230; <a class=\"more-link\" href=\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/\">Read more<\/a><\/p>\n","protected":false},"author":246,"featured_media":36468,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[46],"tags":[14195,14194,14197,14188,14184,14185,14198,14193,14187,14183,14100,12065,12079,14182,14190,9951,13166,14191,14192],"collections":[14279],"class_list":["post-36466","post","type-post","status-publish","format-standard","has-post-thumbnail","category-ai-ml","tag-ai-agents","tag-ai-assisted-development","tag-ai-coding","tag-ai-development","tag-ai-programming","tag-claude-code","tag-context-rot","tag-developer-productivity","tag-ears","tag-github-copilot","tag-large-language-models","tag-llm","tag-prompt-engineering","tag-requirements-engineering","tag-sdd","tag-software-architecture","tag-software-engineering","tag-spec-driven-development","tag-vibe-coding","collections-dalla-community-en","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>The end of the prompt era: why the future of AI development belongs to those who write specs (SDD) - Codemotion Magazine<\/title>\n<meta name=\"description\" content=\"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)\" \/>\n<meta property=\"og:description\" content=\"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-27T13:01:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-27T13:01:41+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1376\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Matteo Baccan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matteo Baccan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/\"},\"author\":{\"name\":\"Matteo Baccan\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/58743a83113a6ac22788ab19bea03ad1\"},\"headline\":\"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)\",\"datePublished\":\"2026-08-27T13:01:39+00:00\",\"dateModified\":\"2026-08-27T13:01:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/\"},\"wordCount\":1707,\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/24-SpecDrivenDevelopment-articolo-1.jpg\",\"keywords\":[\"AI Agents\",\"AI Assisted Development\",\"AI Coding\",\"AI Development\",\"AI Programming\",\"Claude Code\",\"Context Rot\",\"Developer Productivity\",\"EARS\",\"GitHub Copilot\",\"Large Language Models\",\"LLM\",\"prompt engineering\",\"Requirements Engineering\",\"SDD\",\"Software Architecture\",\"Software Engineering\",\"Spec-Driven Development\",\"Vibe Coding\"],\"articleSection\":[\"AI\\\/ML\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/\",\"name\":\"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD) - Codemotion Magazine\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/24-SpecDrivenDevelopment-articolo-1.jpg\",\"datePublished\":\"2026-08-27T13:01:39+00:00\",\"dateModified\":\"2026-08-27T13:01:41+00:00\",\"description\":\"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/24-SpecDrivenDevelopment-articolo-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/24-SpecDrivenDevelopment-articolo-1.jpg\",\"width\":1376,\"height\":768},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AI\\\/ML\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/ai-ml\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Codemotion.Italy\\\/\",\"https:\\\/\\\/x.com\\\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/58743a83113a6ac22788ab19bea03ad1\",\"name\":\"Matteo Baccan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/matteo-baccan-100x100.jpg\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/matteo-baccan-100x100.jpg\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2024\\\/02\\\/matteo-baccan-100x100.jpg\",\"caption\":\"Matteo Baccan\"},\"description\":\"Matteo Baccan is a professional software engineer and trainer with over 30 years of experience in the IT industry. He has worked for several companies and organizations, dealing with design, development, testing, and management of web and desktop applications, using various languages and technologies. He is also a passionate computer science educator, author of numerous articles, books, and online courses aimed at all levels of expertise. He runs a website and a YouTube channel where he shares video tutorials, interviews, reviews, and programming tips. Active in open-source communities, he regularly participates in programming events and competitions. He defines himself as a \\\"realistic dreamer\\\" who loves to experiment, innovate, and share his knowledge and passions, following the motto: \\\"Never stop learning, because life never stops teaching.\\\"\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/author\\\/matteo-baccan\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD) - Codemotion Magazine","description":"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/","og_locale":"en_US","og_type":"article","og_title":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)","og_description":"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.","og_url":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2026-08-27T13:01:39+00:00","article_modified_time":"2026-08-27T13:01:41+00:00","og_image":[{"width":1376,"height":768,"url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg","type":"image\/jpeg"}],"author":"Matteo Baccan","twitter_card":"summary_large_image","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Matteo Baccan","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/"},"author":{"name":"Matteo Baccan","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1"},"headline":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)","datePublished":"2026-08-27T13:01:39+00:00","dateModified":"2026-08-27T13:01:41+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/"},"wordCount":1707,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg","keywords":["AI Agents","AI Assisted Development","AI Coding","AI Development","AI Programming","Claude Code","Context Rot","Developer Productivity","EARS","GitHub Copilot","Large Language Models","LLM","prompt engineering","Requirements Engineering","SDD","Software Architecture","Software Engineering","Spec-Driven Development","Vibe Coding"],"articleSection":["AI\/ML"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/","url":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/","name":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD) - Codemotion Magazine","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg","datePublished":"2026-08-27T13:01:39+00:00","dateModified":"2026-08-27T13:01:41+00:00","description":"Spec-Driven Development (SDD) replaces prompt chaos with structured specifications, reducing hallucinations, context rot, and AI-generated software defects.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg","width":1376,"height":768},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/the-end-of-the-prompt-era-why-the-future-of-ai-development-belongs-to-those-who-write-specs-sdd\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"AI\/ML","item":"https:\/\/www.codemotion.com\/magazine\/ai-ml\/"},{"@type":"ListItem","position":3,"name":"The end of the prompt era: why the future of AI development belongs to those who write specs (SDD)"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/58743a83113a6ac22788ab19bea03ad1","name":"Matteo Baccan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2024\/02\/matteo-baccan-100x100.jpg","caption":"Matteo Baccan"},"description":"Matteo Baccan is a professional software engineer and trainer with over 30 years of experience in the IT industry. He has worked for several companies and organizations, dealing with design, development, testing, and management of web and desktop applications, using various languages and technologies. He is also a passionate computer science educator, author of numerous articles, books, and online courses aimed at all levels of expertise. He runs a website and a YouTube channel where he shares video tutorials, interviews, reviews, and programming tips. Active in open-source communities, he regularly participates in programming events and competitions. He defines himself as a \"realistic dreamer\" who loves to experiment, innovate, and share his knowledge and passions, following the motto: \"Never stop learning, because life never stops teaching.\"","url":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-600x400.jpg","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-600x600.jpg","author_info":{"display_name":"Matteo Baccan","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg",1376,768,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-150x150.jpg",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-300x167.jpg",300,167,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-768x429.jpg",768,429,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-1024x572.jpg",1024,572,true],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg",1376,768,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1.jpg",1376,768,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-100x100.jpg",100,100,true],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-180x128.jpg",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-896x504.jpg",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-400x225.jpg",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-600x400.jpg",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2026\/08\/24-SpecDrivenDevelopment-articolo-1-600x600.jpg",600,600,true]},"uagb_author_info":{"display_name":"Matteo Baccan","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/matteo-baccan\/"},"uagb_comment_info":0,"uagb_excerpt":"At the last event I spoke at, I asked the audience to raise their hands three times: those who have ever tried vibe coding, those who have generated an entire project fueled by prompts and coffee, and those who eventually threw it all away and rewrote it from scratch. The hands went up almost in&#8230;&hellip;","lang":"en","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36466","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/246"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=36466"}],"version-history":[{"count":1,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36466\/revisions"}],"predecessor-version":[{"id":36471,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/36466\/revisions\/36471"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/36468"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=36466"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=36466"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=36466"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=36466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}