I just gave a talk at the DevOpsDays Nashville 2017 conference titled “Painful to Painless: Moving 100+ developers and 60+ apps to Continuous Delivery”. Which I thought was a good title at the time of my original proposal but as I got closer to the conference I identified the need for my presentation to be more memorable. So I decided to find an analogy to help folks remember the content.
I ultimately settled on comparing my teams’ continuous delivery journey to the way ants build a nest.
Do not wait
Ants start building fast.
Approval from a manager or a purchase order approval are not good reasons to wait to start implementing continuous delivery. Start today with small changes to make your process/people/tools better and prove our the approach.
Ants don’t plan out the full nest first.
Big changes require approval, take time to plan and are generally long running. All of which represents risk. Small changes limit risk and allow us to learn from and change the plan based on incremental results. To be clear, there are inefficiencies here but they are outweighed by having working system along the way and the flexibility to adjust.
Ants build many tunnels not all of which will be used.
Opposition to changes should be met with the concept of experimentation. If the experiment doesn’t work we can revert back to the old process or find another way. It’s doesn’t have to be a lifetime decision.
It’s a team effort
A single ant can’t build the entire nest on their own it takes a team.
Developers must enlist the help of other developers toward the end goal of improving their development/release process.
Ants continually seek to improve the nest.
We must continually look for opportunities/experiments to improve our process.
Change is constant
Ants’ nests are often destroyed but they accept that and continue to build them.
Similarly we must have the determination to work through the changes presented by the business or technology and meet the challenge head on to build a better process/culture.
Obviously, I’m not an insect expert and some of this content is a stretch but my hope is that it helps folks remember some helpful ideas around successfully implementing continuous delivery.
Does this help? What do you think? Please leave your comments below to continue the conversation and provide feedback regarding whether I should keep using this analogy.