On Saturday night after ColdFusion Summit 2014 I decided I would treat myself to a show. I’ve always wanted to see a Cirque du Soleil performance namely because how good they look but also one of the trainers to Speed Flex Leeds used to perform with them.
Having given my session on Software Craftsmanship on Thursday with a lot of passion and feeling totally drained by the experience. As I put my all into it, I was really taken back by the number of people who thought it was the best session of the day (Their words not mine) both in person and on twitter.
So what does this have to do with Cirque du Soleil show, while I was watching it a lot of the items I spoke about in the session also applied to the performance.
These performers don’t just rock up every night and give one of the most amazing shows you’ll see without practicing their craft. Practicing is something that we as software developers very rarely do ourselves. If we practiced more we’d sharpen our skills and be more productive as these thing would just come to us.
How should you practice, one idea is the use of Katas. There are plenty out there; I like to use the Fizz Buzz one as a starter with teams, followed by bowling and then Roman Numerals. When you practice creating solutions for these problems you’ll come up with a different solution the first few times before you start to have it down to an art. You then change the game by applying constraints to your solutions like you can’t use conditional statements etc.
The other thing I noticed in the performance was trust. The level of trust between each of the performers is at a level where they are putting each other’s lives in the hands of their colleagues. I’m of course not saying that we need to do this in the office space, what we need to do is learn to trust others more. I know from my own personal experiences this is easier said then done.
A team can’t function at it’s full potential without trust. If you’re doing daily stand-ups you need to be able to trust everyone is telling the truth of what is the current state of play. People need to feel they can trust their fellow workers, when they admit they are stuck.
Behind the scenes the show also has the people who make sure the props are in place at the right time. In the software world I guess we could call these the operation teams. As the world moves to DevOps they become part of the performance, in the front of house rather then behind the scenes.
The show can’t be as great as it is without a great Choreographer to ensure that the show hangs together right. In the software world, this can be the Scrum Master, Lead Architect or Program Manager. These people are import to keep the show on the road and ensure that the end performance will keep people coming back. In the case of software keep the customers coming back asking for more.
What really brings customers back is the how everyone who is part of the show puts the effort in to perform to the best of their ability everyday. If the performers started to get sloppy in their work, the ticket sales would dry up and the show would be cancelled. This happens with software projects also, and a reason why technology changes happens. The people coding get sloppy cut corners which means new features take longer to deliver.
If we start to care more about what we deliver, practice our craft a small amount every month, trust each other to do our best and to cover our backs and help us when we’re in need. Our software projects will thrive and makes us all happy doing the hobby we love that pays the bills.