AI: The New Dawn of Software Craft

May 2025

AI is not the death knell for the software crafting movement. With the right architectural constraints, it might just be the catalyst for its rebirth.

The idea that AI could enable a new era of software quality and pride in craft is not as far-fetched as it sounds. I have seen the debate shift from fear of replacement to excitement about new possibilities. The industry is at a crossroads, and the choices we make now will define the next generation of software.

But there is a real danger: most AI coding assistants today do not embody the best practices of our craft. They generate code at speed, but almost never write tests unless explicitly told to. This is not a minor oversight. It is a fundamental flaw that risks undermining the very quality and maintainability we seek. If we do not demand better, we risk letting AI amplify our worst habits rather than our best.

This is the moment to ask whether AI will force us to rediscover what software crafting1 truly means in the AI age.

The Software Craft Agent: A New Premise

AI can be more than a code monkey. Imagine an agent guided by rigorous, off-the-shelf architectural patterns, not just churning out code but building with intent and discipline. If you give AI a really tight architecture, it might produce whole systems more autonomously, and with a level of quality that rivals the best human teams.

This is not a theoretical exercise. Research shows AI thrives in environments where patterns are discernible and constraints are explicit.2 I have seen teams where a single early architectural decision made the difference between chaos and clarity3.

The foundation for a renaissance in software craftsmanship is a strong architecture that lets both humans and machines do their best work.

The Renaissance We Need

The software industry is at a crossroads. AI coding assistants have led to a surge in productivity, but also a risk of amplifying complexity and technical debt. Without robust architectural oversight, AI-generated code can introduce service duplication, unwanted dependencies, and an uncontrolled sprawl of microservices.4

The answer is not to shun AI, but to pair it with rigorous architectural patterns that act as guardrails. By constraining AI within proven architectural frameworks, we can elevate the quality of the systems it produces. The craftsperson agent is not a replacement for human expertise, but a force multiplier, allowing us to focus on higher-order aspects of design, intent, and user experience.

Testing and Patterns: The Foundation of AI-Driven Development

Testing remains the backbone of quality in software development. Despite less than one percent of developers using Test Driven Development (TDD) in practice, the rise of AI makes rigorous, test-first approaches more crucial than ever. AI can generate code rapidly, but without tests, there is no guarantee of correctness, reliability, or maintainability.5

The uncomfortable truth is that unless you explicitly ask for it, coding agents rarely provide tests by default. They tend to write code in the way most developers do: without tests, because that is what the vast majority of code in the wild looks like, and that is what they are trained on. This is a significant gap, and it is holding us back. We should be demanding more from our tools. Why are we accepting agents that cut corners, when we know that test-first and great practices are what make teams truly fast and resilient?

Perhaps the solution is to build this discipline in at the agent level. Imagine a software craft agent that produces well-tested code as the default, not the exception. If this becomes the norm, teams could move much faster over time, with quality and confidence built in from the start. In theory, this approach could become a clear competitive advantage. But it will not happen unless we insist on it.

The renaissance in software craftsmanship will not come from AI alone. It will emerge from a renewed commitment to practices like TDD, continuous integration, and architectural fitness functions. The best results occur when AI is guided by clear, testable requirements and a strong architectural vision. I have observed teams that treat testing as an afterthought struggle with quality and maintainability, while the best teams treat tests as first-class citizens. We must make this the default expectation for our AI tools, not a rare exception.

Patterns serve as the shared language between human and machine. They provide a predictable framework that AI can leverage to understand the roles of different system parts and their interactions.6 For example, in an MVC architecture, AI can focus on generating or modifying code for the View component, knowing exactly how it should interact with the Model and Controller.

AI requires structure to excel. The modularity and explicit interfaces provided by these patterns create bounded contexts where it can operate with greater efficacy and precision. I have found this approach valuable in my own code already.

Trust, Transparency, and the Human-AI Partnership

Trust is the linchpin of effective AI adoption. Developers need to trust that AI-generated code is not only functional, but also readable, secure, and aligned with architectural principles.7 This requires transparency and explainability. AI must be able to show its reasoning, justify its decisions, and provide clear, actionable feedback.

There are limits, of course. AI still struggles with high-level planning, abstraction, and nuanced reasoning over long-term system evolution.2 It can hallucinate, generate unsound designs, or introduce subtle bugs. I have seen AI generate code that looked perfect but failed in subtle ways. The lesson is clear: trust, but verify. Human oversight is essential, especially as AI becomes more capable.

The future is not AI versus human, but AI and human in partnership. The most successful teams will be those that embrace the “centaur” model: human architects providing strategic direction, critical evaluation, and contextual understanding, while AI handles the labour-intensive analysis, generation, and verification tasks.8

This partnership is already transforming workflows. Documentation, for example, is no longer a neglected afterthought. With AI, documentation becomes a living, dynamic part of the codebase, continuously updated and aligned with the system’s evolution.2 I have worked in environments where documentation was always out of date, and with AI, I have seen it become a living part of the system, always current and always useful. This is a game changer for teams and for the craft.

The Virtuous Cycle: How Good Architecture Makes AI Better (and Vice Versa)

A well-defined initial architecture acts as a crucial enabler for AI tools. It provides the structure and clarity that AI needs to interpret, generate, and modify code effectively.9 In turn, AI can help maintain architectural integrity, detect drift, and automate compliance checking. This creates a virtuous cycle: good architecture makes AI more effective, and AI helps preserve and enhance architectural quality over time.

This is not just theory. Case studies already show that AI-driven compliance checking can reduce analysis time from weeks to minutes, while identifying thousands of issues and violations.10

When architecture and AI work together, the result is a system that is easier to maintain, scale, and evolve.

This is the future of software craftsmanship.

The Real Challenge: Training the Next Generation

If AI handles the routine coding tasks, how will junior developers develop the intuition and expertise needed for higher-level work? The answer may lie in pairing[^coding-with-ai], mentorship, and a renewed focus on architectural thinking, complexity recognition, and product intuition. The job was never just about writing code. It was about solving problems within constraints, understanding what to build and why, and making intentional design decisions.

I have mentored junior developers who learned more from pairing and architectural discussions than from any amount of solo coding. The next generation will need these skills more than ever, as AI takes over the routine work.

Takeaways: The Path Forward

AI is not the end of software craftsmanship. It is the beginning of a new era, where the craftsperson agent, guided by rigorous architecture, can produce systems of unprecedented quality and reliability. The renaissance will not come from AI alone, but from the partnership between human expertise and machine precision.

But this partnership will only succeed if we demand more from our tools. We must not settle for AI that cuts corners or skips the disciplines that underpin real speed and quality. Ask your agent for tests, or use an agent that produces well crafted code by default. Insist on test-first, insist on great practices, and let us raise the bar for what AI can and should deliver.

And above all, remember that the true value of software craftsmanship lies not in the code itself, but in the clarity of thought, intent, and design that underpins it.

Thanks to Rob Bowley for comments on a previous version of this post.


  1. I use the term “software craft” to refer to the software craftsmanship movement that emerged from the Agile Manifesto and was formalised in the Software Craftsmanship Manifesto of 2009. The movement emphasises well-crafted software, steady value delivery, professional community, and productive partnerships. I prefer the terms “crafting” and “craft” to avoid gender assumptions. 

  2. Artificial Intelligence for Software Architecture: Literature Review and the Road Ahead. A comprehensive academic survey of the current state and future directions of AI in software architecture, including capabilities, challenges, and open research questions. Also cited for its discussion of AI’s role in dynamic documentation, architectural knowledge management, and the current limitations of AI in high-level architectural reasoning and planning.  2 3

  3. At a previous startup, I chose microservices too early and allowed too many languages to proliferate without having a large enough team to require that level of autonomy. This was a mistake and harmed our efficiency. 

  4. Rethinking architecture in the age of AI: Findings from our latest research report. This industry report explores the risks and opportunities of AI-driven development, especially the dangers of architectural drift and technical debt without strong architectural guardrails. 

  5. AI-Driven Innovations in Software Engineering: A Review of Current Practices and Future Directions. A peer-reviewed paper on how AI is transforming software engineering, with a focus on productivity, code quality, and the importance of testing and verification. 

  6. Software Architecture Patterns: What Are the Types and Which Is the …. An accessible overview of major software architecture patterns, their principles, and their impact on system qualities like scalability and maintainability. 

  7. AI Software Engineer: Programming with Trust - arXiv. This paper explores the challenges of trust, explainability, and verification in AI-generated code and architectural decisions. 

  8. The Role of AI in Software Architecture: Trends and Innovations. A practitioner-focused article summarising the latest trends in AI for software architecture, including the “centaur” model of human-AI collaboration. 

  9. The Use of AI in Software Architecture - Neueda. An industry insight piece on how AI is being used for architectural compliance, governance, and continuous validation in real-world organisations. 

  10. Enabling AI to assess code for compliance against software architecture design principles. A case study showing how AI tools can automate architectural compliance checking, dramatically reducing analysis time and improving code quality. 


More articles

The Huge List of AI Tools: What's Actually Worth Using in May 2025?

There are way too many AI tools out there now. Every week brings another dozen “revolutionary” AI products promising to transform how you work. It’s overwhelming trying to figure out what’s actually useful versus what’s just hype.

So I’ve put together this major comparison of all the major AI tools as of May 2025. No fluff, no marketing speak - just a straightforward look at what each tool actually does and who it’s best for. Whether you’re looking for coding help, content creation, or just want to chat with an AI, this should help you cut through the noise and find what you need.

Read more

Building AI Cheatsheet Generator Live: Lessons from a Four-Hour Stream

I built an entire AI-powered app live, in front of an audience, in just four hours. Did I finish it? Not quite. Did I learn a huge amount? Absolutely. Here is what happened, what I learned, and why I will do it again.

The challenge was simple: could I build and launch a working AI cheatsheet generator, live on stream, using AI first coding and Kaijo1 as my main tool?

Answer: almost! By the end of the session, the app could create editable AI cheatsheets, but it was not yet deployed. A few minutes of post-stream fixes later, it was live for everyone to try. (Next time, I will check deployment on every commit!)

Try the app here: aicheatsheetgenerator.com

  1. Kaijo is a tool I have created to helps you build and ship AI products faster and more reliably - see the announcement post here

Read more

Why Graph RAG is the Future

Graph RAG

Standard RAG is like reading a book one sentence at a time, out of order. We need something new.

When you read a book, you do not jump randomly between paragraphs, hoping to piece together the story. Yet that is exactly what traditional Retrieval-Augmented Generation (RAG) systems do with your data. This approach is fundamentally broken if you care about real understanding.

Most RAG systems take your documents and chop them into tiny, isolated chunks. Each chunk lives in its own bubble. When you ask a question, the system retrieves a handful of these fragments and expects the AI to make sense of them. The result is a disconnected, context-poor answer that often misses the bigger picture.

This is like trying to understand a novel by reading a few random sentences from different chapters. You might get a sense of the topic, but you will never grasp the full story or the relationships between ideas.

Real understanding requires more than just finding relevant information. It demands context and the ability to see how pieces of knowledge relate to each other. This is where standard RAG falls short. It treats knowledge as a stack of random pages, not as a coherent whole.

Time for a totally new approach.

Read more

Introducing Kaijo: AI functions that just work

kaijo

For months, I have wrestled with a problem that has consumed my thoughts and challenged everything I know about software development.

This week I wrote about building the future with AI agents. One of the key areas for me is moving beyond prompt engineering to something more reliable.

I have spent decades learning how to craft reliable software. Now I want to bring that reliability to AI development.

Today I am ready to share what I have been building in the background.

It started with a game. It ended with something that could change how we build AI applications forever.

Read more

Building the Future

A diagram of the future of AI agents

Something has been on my mind for months. The rapid evolution of AI agents has opened up possibilities I cannot ignore.

We are witnessing the emergence of semi autonomous agents that will fundamentally reshape how we work and communicate. The opportunities in this space are extraordinary. I am diving deeper into this world of AI agent development and product creation.

My newsletter is evolving. Instead of dispensing tips from a position of authority, I invite you on a journey of discovery. I will document my experiences building with AI, how to apply my tech experience in a new world, and navigating the inevitable struggles and setbacks.

Read on for several key areas I am exploring.

Read more