Continuous releases

My dad used to run a software company in the CAD/CAM space.

Back then, before internet was widespread, a software update was a momentous occasion. Months and months of updates had to be carefully scrutinised and tested before being sent out on floppy disks to all customers. I remember there being multiple floppy disks: it would start installing from disk 1 and then ask you to insert disk 2 instead, and so on, until everything was installed1.

Things are much easier now. Most software can be updated seamlessly over the internet. This could be occasional or it could be happening multiple times a day. You never even notice.

There’s no doubt the new way has a lot of perks.

But a huge thing was lost: the opportunity to celebrate.

Sure, it was hard work having a major software release. But once it was out the door, you could breathe. Have a party or meal or drink. Congratulate yourselves and one another.

The continuous integration we have nowadays makes it very easy to be very non-stop. As soon as something is shipped, there’s something else to work on. I worry that a consequence of this is that people start to resent being productive.

I’d love to see more companies and people dividing that never-ending stream of work into finite projects, and taking the time to celebrate and congratulate and rest between each one.

  1. Don’t get me started on licensing… every customer would have to phone and recite a long string of numbers of letters back and forth with my dad or one of his colleagues on the phone, to authorise their installation for another 6 or 12 months.