About the author
David Wilson
David Wilson is a software developer with more than 25 years of professional experience building and maintaining production software.
His work has included client/server systems using C++, Java, C#, PHP, SQL and other technologies, with much of his career involving multi-tier content-management systems for the newspaper industry.
That work has involved far more than writing code: understanding requirements, defining logic and behaviour, implementing changes, diagnosing defects, testing results and maintaining long-lived software as systems and teams evolve.
The perspective behind the book
The tools changed. The need for discipline did not.
AI can now produce implementation work at a speed that would once have required far more manual effort. That changes who can begin building software and how experienced developers can work, but it does not remove the need for clear requirements, controlled scope, testing or judgement.
In practice, faster implementation can make those disciplines more important. Poorly defined work can be turned into code just as quickly as well-defined work, and uncontrolled changes can accumulate before anyone has established whether the result is correct.
The ability to generate software quickly does not remove the responsibility to understand what is being built.
How PDAID developed
Established development discipline, adapted for AI.
PDAID grew from applying established software-development practices to AI-assisted work: define the intended result, resolve uncertainty before implementation, limit the scope of change, test against accepted behaviour and preserve a dependable baseline before continuing.
The method gives those practices a repeatable seven-phase structure that can be used by someone building their first application or by an experienced developer adapting an existing workflow to AI.
A practical view
Reliable software still depends on what you can explain and verify.
Frameworks, languages and AI tools will continue to change. The underlying questions remain more stable: What should this software do? What should it not change? How will you know the result is correct? What dependable state will you preserve before moving on?
Those questions are at the centre of PDAID and of Build Software Using AI.