Skip to main content

One post tagged with "ai augmented"

View All Tags

Manifesto for AI-Augmented Software Craftsmanship

· 8 min read

Value-Driven Software Development in the Age of AI Assistance

"The craft of writing software will not become obsolete."
(Freeman J. Dyson, 1998)1

At the beginning of the 21st century, software development underwent a fundamental transformation: away from a purely scientific, engineering-driven discipline towards a value-driven one, understood by thought leaders under the term Software Craftsmanship. This craft is grounded in technical methods and tools, but just as much in personal and character traits - such as the willingness to take responsibility for code, to work as part of a team, and to continuously improve oneself.

With the rise of AI-assisted tools like GitHub Copilot, Claude Code and Gemini CLI, the landscape of software development has changed yet again - more rapidly and more drastically than one might have anticipated in an environment that is already shaped by constant technological disruption. With every new version, the models become more reliable and more powerful; they have established themselves as permanent assistants in our IDEs.

"The magic of myth and legend has come true in our time. One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be." (Frederick P. Brooks, Jr., 1978)2

Brooks’ 1978 quote describes the fascination and magic of software development as a creative act enabled by technology. Today, that magic manifests in a different form, realized through technologies that are largely shaped by artificial intelligence: the magic Brooks described has long since become our everyday reality, enriched by a new, synthetic kind of magic that might have been conceivable as a concept back then but was hardly predictable in its current ubiquity and turnkey availability.

And how are we supposed to trust the synthetic assistant, the artificially generated code? To what extent is it truly harmless to let these assistants modify and extend an existing, carefully crafted codebase? It feels like an abstract construct, like a strange loop borrowed straight from Hofstadter’s GEB.

Values that once seemed non-negotiable are suddenly being questioned. There is a growing concern that diligence and understanding could become obsolete in the face of AI-driven automation.

And this goes far beyond mere code generation: if tests and documentation are also created fully automatically, we risk losing the critical reflection on software design, architecture and functionality.

At the same time, we increasingly see that experienced developers - those who learned their craft with the Agile Manifesto, XP and The Pragmatic Programmer, and who today hold leadership positions and carry personnel responsibility - approach these systems with a healthy dose of skepticism. They recognize that software quality is not determined solely by the use of AI tools, but by the developer’s ability to use these tools effectively without sacrificing the principles of Software Craftsmanship. The goal is clear: to prevent so-called “AI slop” - low-quality, generated code garbage.

My own work as a software developer has always been guided by the principles of Software Craftsmanship and is built on practices like Clean Code, Test-Driven Development and Extreme Programming.

With the advent of generative AI, I now find myself confronted with the challenge of reconciling machine-generated results with work that I understand - and value - as a craft. I am moving within a field of tension between preserving craftsmanship and integrity, leveraging new powerful tools, and maintaining the transparency that clients and stakeholders rightfully expect.

I consider it essential to hold on to these proven principles while at the same time not closing myself off to new possibilities, but instead integrating them consciously and reflectively.

This is why I wrote the Manifesto for AI-Augmented Software Craftsmanship. It connects the traditional values of software development with the new realities of AI-assisted development. It builds on the following well-known core principles:

  • Collaboration over Automation.
  • Comprehension over Convenience.
  • Ownership over Delegation.
  • Verification over Assumption.

The manifesto is intended as a guide to ensure that quality, responsibility and craftsmanship are preserved even in a world where AI plays an ever larger role. My aim is that it not only reflects my personal stance, but also serves as a basis for discussion within the broader community - so that we can jointly shape a responsible way of working with AI.

Footnotes

  1. Science as a Craft Industry, Freeman J. Dyson, 1998, DOI: 10.1126/science.280.5366.1014 2

  2. Brooks, F. P. Jr. (1978). The mythical man-month: Essays on software engineering. Addison-Wesley. 2