Decades from now, I want the IT industry to be known not just for its innovation and creativity, but for its ability to deliver software projects reliably. There's a lot of work to do, and I think Agile principles of frequent, high-quality collaboration and embracing change are playing a big part in getting us there. Along with the human to human improvements, we're also adopting engineering practices to boost our chances of success - source control, continuous integration, and unit testing for example make an enormous difference.
Delivering even a small software project is a huge undertaking. There are an unlimited number of practices that we'd like to adopt, but since time is always so critical, we always have to make trade-offs. In my experience, there's one practice that always falls into the too-hard basket: automated deployment.
The state of the art in deployment on the .NET stack leaves a lot to be desired. At big companies and small, I see programmers routinely remoting into production machines to patch configuration files, or writing long and semi-complete documents because automating deployments was too time consuming. After months of repeated test deployments, production deployments still fail and are rushed because of bad automation or incomplete documentation. It's hampering our ability to deliver and give our customers confidence. We can do better.
I believe wholeheartedly that automated, frequent, repeatable deployments is one of the most important practices we can follow. There's no compelling, standardised, complete solution out there, and I don't know if Octopus will ever become one either. But I know that we as an industry would be much better off if we could nail this problem, and I'm going to try my best to do something about it.
Welcome, my name is Paul Stovell. I live in Brisbane and work on Octopus Deploy, an automated deployment tool for .NET applications.
Prior to founding Octopus Deploy, I worked for an investment bank in London building WPF applications, and before that I worked for Readify, an Australian .NET consulting firm. I also worked on a number of open source projects and was an active user group presenter. I was a Microsoft MVP for WPF from 2006 to 2013.