I was trying to explain to a client why continuous integration works so well, but the value wasn’t evident to her. “Release time is already so fraught,” she said. “Everyone is trying to get in their features at the last minute. Who wants to do that more??
The word “release” clearly had different connotations for the two of us. For me, it meant an opportunity to get value to users and hear their feedback. For her, it meant miserable negotiations and conflicting demands raining down on her head. How could we get to a common understanding? If we couldn’t, I’d never be able to design with her a way out of the trap of painful, infrequent releases.
Then I remembered my journey to London that morning. I’d run at top speed to leap onto my train, which speeds at 150 mph from Folkestone to London in under an hour. Then I’d strolled calmly to the Underground, where I proceed at a leisurely 25 mph to my client’s office. Just like her demanding customers, I’d sprinted to make it onto the Folkestone train, since there wouldn’t be another for at least 30 minutes. But once in London, there was no need to rush for the tube, where trains ran every two or three minutes; if I missed one, there would be another very shortly.
I could see her figure it out as I explained my commute to her. “So if we release every day, there’ll be no reason to pressure me to fit in every last feature. Sales and marketing and operations can wait a day or two, no problem, so we can schedule them in instead of having a last-minute panic.” I could see this was getting us somewhere!
Are there important words you need to agree on? Can you illustrate your meaning with a powerful analogy?