10 Years Since My Book Was Published
My book, “Continuous Delivery” was launched on 10th August 2010, so in a few weeks time it will be the 10th anniversary of its publication. Jez and I spent 4 years writing the book, and several years before that doing the work that informed that writing. Continuous Delivery has been a feature of my life for a long while now.
I very clearly recall the sense of pride when our book was published, nevertheless neither of us thought that it would have the impact that it has and that the ideas would become so widely recognised as the state of the art in software development approach. Continuous Delivery is now the approach behind the work of many of the biggest and most successful software-driven organisations on the planet.
Originally we had a few celebratory things planned for this 10th anniversary year. Jez and I spoke together for the first time at the DeliveryConf in Seattle, at the start of the year (you can watch it here: https://youtu.be/FVEWdatM8Uk). Then a global pandemic reminded us of the limits of our planning.
The Importance of CD
I have spent the last few years working as an independent software consultant, advising clients on how to improve their software engineering practices, with Continuous Delivery at the heart of those improvements. I have become more convinced, rather than less, that the ideas in Continuous Delivery are important, and bigger than I thought when we wrote the book.
I believe that the reasons why CD works is that it is rooted in some deep, important ideas. It is primarily focussed on learning efficiently. CD works by creating fast, efficient, high-quality feedback loops that operate from the few seconds of feedback from a TDD test run, to the feedback generated by creating a releasable thing multiple times per day. It also facilitates that most important feedback loop of all, from customer to producer. Allowing organisations to experiment with their products and hone them to better meet the needs of customers and so create great products.
When we came up with the ideas and practices of CD it was done as an exercise in empirical learning and pragmatic discovery. We did none of this based on theory, all was based on practical experience in real software projects. Since then, through my experience of helping people to understand and adopt these practices in all sorts of organisations, for all kinds of software, I now recognise some deeper explanations for why CD works.
CD As an “Engineering Discipline”
I believe that CD represents a genuine “engineering” approach to solving problems in software. By that what I mean is that we are applying some important scientific principles to software. Despite us thinking of our discipline as technical, it has been surprisingly un-scientific in approach. Most software dev proceeds as a series of guesses, we guess what users want, we guess at a design, we guess, usually based on a convincing expert or colleague which tech we will use, we guess if there are bugs in it on release. I believe that CD, when taken seriously and practiced as a core, organising, discipline for software development, rather than interpreted as meaning only “deployment automation”, helps us to eliminate much of this guesswork. Instead we create hypotheses, try them out as mini-experiments, we accurately measure the results and we work to control the variables so that we can distinguish signal from noise.This is “engineering” and the results when we apply it are astonishing and dramatic, as shown by Jez’s work with Nicole Fosgren.
My CD Mission
So ten years later, I feel like I am on something of a mission. Of course I am delighted at the success of our book and the impact that it has had on teams all around the world. I am also personally grateful for the impact that it has had on my career. I am now seen as an expert in this field and have travelled the world helping people and teams as a direct result of that literary success. However, my mission is not done.
I believe that CD matters because Software matters and CD is THE BEST WAY TO CREATE SOFTWARE with speed, efficiency and quality.
So thank you for your support over the years. I hope that you have enjoyed my book, and my other stuff.
I have some other things in the pipeline to, hopefully, help me with my mission which is to help teams and individuals improve their skills, techniques, and perhaps most important of all, engineering approach to software development.
A New Book?
I am working on another book, in which I explore in some depth this idea of what “Engineering” should mean for the discipline of software development. What form would a genuine “engineering discipline for software” take? I am not good at predicting when I will finish books, but this one is progressing quite well so I am hoping that it will be published next year.
My YouTube Channel
I had been very busy with my consultancy, and so in some sense the pandemic gave me the impetus, and the time, to do something that I had been thinking about for a long time.
I have begun a series of videos, published weekly (every Wednesday evening, UK time) on YouTube, in which I explore different aspects of, and different ideas that are prompted by, Continuous Delivery and its practice.
My “Continuous Delivery Channel” covers my thoughts and experiences on Continuous Delivery, DevOps, TDD, BDD and Software Development as an Engineering discipline. It is quite wide-ranging talking about the technical, cultural and organisational practices and impact of Continuous Delivery.
I have been very pleased with the growth of the channel so far, and naturally hope that it will continue to be interesting, and useful, to people.
Continuous Delivery Training Courses
I am also in the process of getting most of my training courses set up on-line. But that takes a bit longer, so I’ll be saying more about these later in the summer. My on-line training programme will include:
"Getting Started With Continuous Delivery" "Anatomy of a Deployment Pipeline" "TDD - Design Through Testing" "ATDD - Stories to Executable Specifications" "Leading Continuous Delivery"
I have plans for many more, but this is already a lot of work 🙂
My goal is to share the best ideas about how to build better software, faster. So if you have a particular interest that we can explore in one of my next YouTube videos, or if you have a particular training need, please let me know.
Finally I have set up a mail-list via which I will share thoughts and keep people informed of any news. To celebrate the 10th anniversary of my book, and to say thank you to subscribers to my mail list, I am running a competition, I am giving away a signed, first-edition, copy of “Continuous Delivery”. Everyone on the email list is eligible for the draw, so if you haven’t already, please sign-up.