Agile software development was born ten years ago, with a gathering of industry luminaries in Snowbird, Utah. They were frustrated that so much ceremony and effort was going into so little success, in failed project after failed project, across the software industry.
They had each enjoyed amazing successes in their own right, and realised their approaches were more similar than different, so they met to agree on a common set of principles. Which we promptly abandoned. The problem is that Agile calls for us to embrace uncertainty, and we are desperately uncomfortable with uncertainty. So much so that we will replace it with anything, even things we know don’t work. We really do prefer the Devil we know.
Over the last year or so Dan has been studying and talking about patterns of effective software delivery. In this talk he explains why Embracing Uncertainty is the most fundamental effectiveness pattern of all, and offers advice to help make uncertainty less scary. He is pretty sure he won’t succeed.
Two years ago, I looked back at over a decade of progress in the community of Agile software development practitioners. I talked about some alarming trends in our attitudes, our practices and what we teach, but also described the ways in which I believe we’d really advanced the art of software development.
Now, I explore a more interesting question: Where do we go from here? Those alarming trends haven’t all gone away. In fact, some have got worse, and I want to highlight some of things that I think we really need to stop before they destroy all the credibility we’ve built.
Of course, the picture is not bleak: we’ve helped make software development better for so many people, and I’ll talk about where I’d like us to focus our considerable energy to help make the coming decade even better for our field and the lives of our colleagues.