Recently, Paul Wade’s “Convict Conditioning” went viral in our team. It’s a book about calisthenics (strength training using only body weight for resistance). Yep, we developers ain’t couch potatoes! But that’s not the point. What has struck me is how many similarities Paul’s philosophy shares with Agile. Let’s hear what “The Coach” has to say, because he can teach us Agilists a thing or two:
1. You don’t need fancy equipment to achieve serious results.
Convict Conditioning: You already have all the tools you need: your own body. Building strength is the matter of intelligent technique, not complex, expensive equipment. You make progress not by buying progressively heavier dumbbells, but by using a progressively higher percentage of your bodyweight. An advantage of this approach, apart from its low cost, is that it allows you to achieve great results even when you don’t have access to equipment.
Agile methodologies: You don’t need fancy project management tools to achieve impressive results. You improve not by switching to progressively more complex tools or processes but by getting progressively better at the basic skills like communication, collaboration or empiricism. These skills allow you to succeed in any environment and with any tools – even the ones not designed for Agile.
2. Focus on mastering only a few holistic techniques.
Convict Conditioning: Isolated exercises are good for toning a particular muscle group but are useless for building strength. Strength is a skill, an ability to use the whole body together. Perfecting a few holistic, full-body exercises will not only build your major muscle groups, but also strengthen your core muscles, improve your posture, and train your coordination – the things that “glue” muscles together, make them all work towards a common goal.
Agile methodologies: Think of your process in a holistic way. Focus on the end result of the whole workflow, not local optimizations. What makes your process effective is how its parts work together, and how good you are at the core skills that “glue” these parts: communication, cross-functional collaboration, empirical way of thinking, transparency and so on.
3. Aim for simplicity (but don’t mistake simple for easy).
Convict Conditioning: There’s no point in doing five different kinds of a push-up. The benefits of exercising your muscles in a more varied way are much smaller than the benefits of perfecting your technique. Occasionally switching to a different exercise to avoid a plateau is OK, but otherwise stick to the basics. Don’t think it’ll be easier this way, though. The goal is to perfect your technique, not to make it easier to routinely go through the motions.
Agile methodologies: Agile is deceptively simple. It’s built around only a few core principles like empiricism, communication or transparency. These principles are straightforward. But mastering them is hard. You don’t need to constantly change the formula of your retrospective. You don’t need fancy electronic tools to run it. But you DO need to focus on doing it better, closer to its purpose every time.
4. Center your efforts around continuous progression.
Convict Conditioning: The whole Convict Conditioning program is designed around progression. Training in your comfort zone won’t make you stronger. Make your exercises more challenging every time: use more of your bodyweight, focus more, improve your posture a bit. There’s no fixed goal you can reach; the only goal is to get better and better.
Agile methodologies: You can’t ever fully learn Agile nor do it in the right way. It’s a continuous improvement process, a never ending “inspect and adapt” loop. Iteratively optimizing the way you work is equally important as iteratively building the right product. Remember this on your next retrospective: your main goal isn’t to solve current impediments but to get progressively better.
5. Progress in a safe way.
Convict Conditioning: Constant progression means getting out of your comfort zone, but not above your capability. Train hard but safe, or you’ll risk an injury and stopping your training altogether. Also remember, that you’re only as strong as your weakest link and that we tend to grossly overestimate our fitness level. Start with the exercises that seem too easy, and build your skill gradually, jumping to the next level of resistance only when you’ve fully exploited current one (by doing exercise slower, with more flexed muscles, correct body posture etc.).
Agile methodologies: Drastic changes are likely to meet resistance and fail. Prefer evolution over revolution and don’t rush. Every time you introduce a new process, take time to get comfortable with it before attempting another “level-up”. And first of all, try to improve inside the boundaries of your current workflow first, before introducing any new ceremonies or artifacts.
6. Progression is hard without metrics.
Convict Conditioning: Convict Conditioning is built around deliberate progression. And you can’t progress without metrics. To constantly push yourself, but in a safe, sustainable way, you must know your limits precisely. That’s impossible without measurements – our memory is unreliable. You don’t need fancy tools. A simple notebook will do. But keep detailed track of your workouts, so you can intelligently steer your progression.
Agile methodologies: Agile processes are informal. They rely mostly on “soft” skills like face-to-face communication. But that doesn’t make metrics any less useful. Velocity, lead time, defect rates, test coverage can all help you fine-tune your process. You don’t have to use all of them, and you don’t have to gather them in an overly complicated way, but without at least a few basic metrics you won’t be able to deliberately inspect and adapt – which is the core strength of Agile.
7. Make inspection and adaptation a habit.
Convict Conditioning: A training program is useful as a general guideline, but it can’t cover every possible situation. You may be tired or injured, your mood changes, you may hit a plateau, your different muscle groups may “level-up” at a different rate. You must learn how to notice and adapt to such conditions. And the faster you can adapt, the faster you’ll progress. The ultimate goal is to practice self-awareness until it becomes a habit, until you adapt continuously without a deliberate effort.
Agile methodologies: Inspection and adaptation is built-in into Agile. Iterative development ensures that it happens at regular intervals. But you don’t have to limit yourself to predefined “checkpoints” like a retrospective, sprint review or daily scrum. There are many more inspection opportunities in your daily work. Look for them until it becomes a habit, until inspection and adaptation are ingrained in your “muscle memory” – only then you can not only practice Agile but BE Agile.
8. Philosophy is more important than a particular method.
Convict Conditioning: Convict Conditioning contains a couple of simple training programs to reduce the friction for beginners, but otherwise the book focuses solely on the philosophy of gradual progression. To really progress, you must understand how the progression works and why, and how to fine-tune it for your particular needs. Following a detailed program, even the best one, won’t give you that.
Agile methodologies: In Agile, there are many mature, robust frameworks like Scrum. But we can’t forget that they are only that – frameworks. Sets of guidelines. Possible starting points for our journey. If we treat a framework as a recipe, follow it blindly by-the-book, we often lose the fact that Agile, at its core, is a philosophy, a set of universal principles. Only through a deep understanding of how these principles work and what problems they were invented to solve, we can truly reap the benefits of Agile.
An Agile revolution in strength training.
Calisthenics is catching like a fire recently. People are moving from the overly complicated, expensive, specialized training machines. They are looking back towards the basics, towards simplicity and fundamental principles of strength training. I see a striking similarity to the early days of Agile: people moving from complicated waterfall methods and re-discovering the power of direct communication and collaboration. This similarity is a great testament to the Agile philosophy, a proof that it is really universal. And the fact that it is universal means that we can look for inspiration far outside of our field. Who knows where you can find some tips on how to become a better Agilist?
Over to you
In what fields outside of the software development do you find inspiration? Have you imported any techniques from these fields into your Agile toolbox? If so, please drop me a comment, I’m really curious how far can we reach for ideas!