Pilates: Parallels with Software Development Agility
About 18 months ago, my wife suggested our family take a weekly Pilates class with a local instructor. The intention was to do something together as a family, something fun and beneficial all around. Whilst I agreed, if I am honest, I was sceptical. I was very happy with the family and togetherness part, that was great. What I was sceptical of was the value of Pilates as an exercise discipline. However, I try not to pre-judge things in life, and as such the four of us were soon attending weekly Pilates sessions.
At this past Sunday’s class, as I was struggling with some particularly challenging front-line work, I started to think about how many parallels can be drawn between practicing Pilates, and achieving success as an agile software team.
Let me paint a picture for you:
Imagine laying on your front, your forehead on the floor, your nose squashed into the Pilates mat. Your arms are by your sides. Your feet are extended with your toes pointed, your heels pointing straight up towards the ceiling. Now, raise your head from the floor, just a couple of inches. Keep your chin tucked in, try to lengthen your spine so the top of your head is reaching towards the wall. Now, raise both legs in the air about 4-6 inches. Keep your belly button pulled in (which is really hard to do at first when you are physically laying on your front), and make sure the rest of your position isn’t changing as you raise your legs. Now, lift your arms vertically from the mat, turn your palms to face each other, and squeeze your shoulder blades together. Be careful though, don’t allow your shoulders to rise up – keep them away from your ears. Wait, are all your body parts still in the correct position? Your head, your chin, your lengthened spine, your belly button pulled in, your shoulders, your legs? They are? Fabulous. Now the real exercise can actually start! While still squeezing those hands and shoulder blades together, lift your hands towards the ceiling, working deep into your triceps.
Oh, and by the way, you haven’t forgotten to breathe, have you?
You Can’t Do It All At First
Clearly, I couldn’t do the full exercise I described above at my first Pilates lesson. In fact, simply lifting my head from the mat without losing the control of my core muscles was barely possible. Over time I have developed skills, strengths and awareness that allow me to take on harder and more challenging exercises.
- I have gained skills allowing me to consciously be aware of my body position and control my body parts more independently.
- I have gained strength in my core, back and other areas that allow me to make the physical movements.
- I have gained awareness to a degree that lets me self-assess whether I am doing the exercise correctly or not.
Even with the self-awareness I have gained, my teacher often subtly re-positions my body, forcing me to re-assess my knowledge.
I am hoping that you can already start to see the parallels with agile teams that formed in my mind.
If you are adopting agile practices, you can’t adopt them all at once. You need to start with the most important or high value practices and become proficient with them before you start to add additional complexity. In many cases, practices are additive, building on top of muscles you have already started to improve. So, what is your software team’s equivalent of pulling in your belly button, or breathing properly? What is the incremental change to master next?
Discipline Is Vital
There are some days when I am really not “feeling it”. I dread showing up at class, and I labour through an hour of exercise, often having to grit my teeth through the mild aches and pains one gets when you reach my age. Those are the days when it would be easy to shy away from giving it 100%. Sail through the class without making an effort. Cheat on exercises, ignore the correct posture and positioning designed to make you work hard. Those are the days, however, when you need to double down on your discipline and put in even more care to give 100% even when it would be so much easier to drop your standards.
In your software team, be disciplined in your approach. Even when the going gets tough. It might seem harmless to lower your bar temporarily in order to meet an iteration goal that you committed to, or ship something to a customer. The chances are the effects wouldn’t be immediately noticeable. Of course, you promise to pay back the debt you created, right? With the best of intentions, that doesn’t always happen. Sometimes you do have to be pragmatic, but your default position should always be one of discipline. In addition, if you do need to take a pragmatic view and temporarily lower your bar, your very next job once the crisis is over is to reinstate your discipline and repay the debt you created.
Focus Is Hard
Even on days when I feel good, my worst enemy is ever present – losing focus. You have to think about so many things at once. It is as mentally exhausting as it is physically to maintain all of the right body positions while breathing properly and keeping your body in motion. Even mid-exercise, when I am being disciplined and dedicated, I will often notice that I’ve wandered off mentally without realising and one of my limbs is doing something it shouldn’t be.
Similarly, as a software team, you collectively need to stay focused. On everything. You need to be clear about all of the pieces of all of the puzzles, how they interplay with each other, and the effect that a loss of focus can have on the team outcomes. As a team, find ways of capturing and paying attention to the little things. Review their status frequently.
Deliberate Practice Is Essential
Over the course of 18 months, I’ve attended class as regularly as my travel schedule allows, and I have applied self-discipline and focus to my learning and exercising. Without that deliberate practice, I would not have improved. More importantly, without a wonderful teacher to guide me, support me, and sometimes tell me off, I would not have improved. It has taken these very deliberate and guided practices to start to become more accomplished. In the future, I will be able to build on these accomplishments, becoming ever more skilled and strong.
So, with your team, practice. Practice. Practice, practice, practice. Practice your craft, every day. Practice being disciplined, and hold others accountable for the same. Start with one thing, practice that, know what good looks like, and then move on to the next additive thing that can help you be successful. Practice technical skills, practice people and team skills, practice your business skills so that you understand the value you bring. Be thoughtful and deliberate about all aspects of your practice.
Back To Last Sunday
By the way, while all of this was going through my head as I lay on my front with my nose squashed into the mat on Sunday morning, there’s a very good chance I wasn’t being disciplined and focusing on my Pilates. I’ll do better next time. Will you do the same?