In the ever-evolving world of product development, the concept of iteration has become pivotal for achieving optimal results. If you haven't used it before, iteration revolves around the idea of making small, valuable changes and promptly seeking feedback in a tight loop.
This approach can encompass both additions and subtractions, with the central idea being to begin with a minimal version and progressively enhance it based on insights learned in real time.
Starting with minimal, viable versions and incrementally refining them based on feedback allows for the quick identification and correction of mistakes, reduces the risk of investing resources in the wrong features, and fosters a culture of continuous improvement. It empowers individuals to embrace the discomfort of change and well-placed risks, ultimately leading to the creation of more refined, valuable, and successful product outcomes.
Iteration can be embraced by anyone seeking to streamline their work process and enhance productivity. The important thing to remember is that the immediate objective is not to craft a flawless, final product from the outset, but to initiate with a basic feature set and continuously refine it based on feedback.
While many claim to practice iteration, truly grasping its essence remains a challenge for most, and requires some experience. There's a leap of faith when you first start experimenting with smaller iterations that it will work out, but the results quickly speak for themselves. It's hard not to start with the big picture and break it down into small pieces if that's what you're used to, but in fact you can build a big picture by starting with the small pieces.
Practically, a good rule of thumb is to keep things simple and focus on what's in front of your nose - delivering something small today is much better than a big plan that all comes together only in a few weeks.
Of course, you'll still be spending some time thinking about the big picture and where you're headed, but if you're doing it right you'll be spending a lot less time doing so.
The fundamental principle behind iteration is that it does not necessitate a compromise on quality. Rather, it's a method to concentrate on delivering value within a specific timeframe. The key is to assess what can be achieved in that time, whether it's a few minutes or several hours. By focusing on incremental improvements in that timeframe, the iterative process becomes more manageable. For example, if you had today to make your product better - what's the one thing you could do? That kind of thinking can lead you in the right direction.
One of the most challenging aspects of iteration is learning to deal with the discomfort it can bring. Paradoxically, discomfort is a sign that you are on the right path. Reverting work back to a previous state is viewed as a constructive step, not a regressive one. It signifies that feedback is actively being incorporated, and valuable lessons are being learned. Small adjustments made early on can prevent significant setbacks down the road.
Sometimes, the hard part is being comfortable showing someone an early iteration. When confronted with inquiries about the imperfections of your work, it's essential to communicate that the initial release was based on a specific time allocation and that future iterations are already in the pipeline. Often, doubters are convinced when they see the pace of small, meaningful improvements being shipped.
There's a great quote from Darren Murph, GitLab's head of remote, that he shared when I was there that stuck with me:
In many organizations, you take a risk when you put forth any work that's not perfect — where you haven't spent endless cycles planning for contingencies or counterpoints. Because of this, you're incentivized to invest a lot of time and effort into preparing for ‘What if?' scenarios before any work is presented.
The downside to that is clear. If you do eventually put forth the work, but it needed to be course corrected a long time ago, you've now squandered a lot of time that you could have spent improving it via iteration.
Having a low level of shame requires you to combat a natural inclination to conceal work until it's perfect, and instead celebrate the small changes.
In the world of project management and product development, iteration is a powerful concept. Success through iteration is available to anyone who wants to deliver more relevant features faster, and overcoming iteration anxiety can be done by focusing on delivering value within specific timeframes and effectively communicating the iterative process to stakeholders. By adhering to these principles, you'll achieve remarkable success through iteration, just as many have done before you.
Stay tuned for more articles deep diving on different aspects of the skills you need to succeed with iteration.
- Jason Yavorska