On working in Iterations (iterations, iterations)

Mike Giannakopoulos
7 min readFeb 14, 2023
3 times the word “iterations” connected with arrows to form a closed loop

As a high school student, I hated iterations. No matter the topic, it was hit and run. A small test, bam done in 20min and out of class! Exams? A drawing? Digital art? Hit and run.

As an adult, I’ve learned to love iterations. There are ways to work in iterations for things we all do daily. Business related or personal.

What are iterations?

In software, we call them “iterations”. These are the smallest possible chunks of work that offer value to the person that is going to use the deliverable.

In personal development, we call them “steps”. A step is the smallest chunk of effort you need towards a bigger goal and getting some value.

Two ladders next to a wall
A ladder usually represents a progressive improvement

In both cases we’re talking about the same thing; Reaching a goal in a way that we efficiently get or give value.

What is value, a definition

Before exploring how iterations work and what’s the alternative, let’s make sure that we know why should we bother. What’s in it for us?

Doing something, personal or business, we want to get some reward back. The bigger the thing we do, the bigger the reward. The bigger the thing we do, the bigger our efforts. Big efforts require greater will and a bigger drive! What drives and feeds our will is getting value at the end of the journey.

So it is “value” we’re after! If we leave it at this level, “value” is quite vague. To add more definition to value, here are the core value categories:

  • 😃 Value is having fun; an effing awesome experience! That experience is something that sticks with you and you want more of.
  • 🌱 Value is growing your character and skills. Learning something new, or developing a skill set will extend your horizons and capabilities.
  • ⏳ Securing more time is valuable. Automating the mundane or getting rid of the unwanted. Your time is value. Anything that secures you more time is more than welcome! With time available you can opt to do something interesting for you.
  • 🫶 Your life and health are value. Being able to live and get by is valuable in itself. We all work to secure resources for us and our families to live. Resources nowadays are mostly money that can buy us other resources; food, clothes, house, car, etc. So any activity that helps us live our life is adding value.

Iteration scenarios

With the end goal of value visible, let’s see how iterations can help us get there efficiently. Big goals tend to have many unknowns and some uncertainty around the outcome. After all, big goals are not about trivial stuff.

We’ll explore two scenarios and see how would each work when working in iteration and when working in a single go. I’ll try to keep the examples agnostic of a personal or business setting. If it makes things easier when reading the scenarios:

  • To relate on a personal level, consider writing an excellent blog post (like this one, sic).
  • From a business perspective, imagine the development and delivery of a new feature on a web application.

Scenario 01: All works great at the end

In this scenario, we’ll consider the best outcome possible, everyone is happy with the end goal. Still, when starting our efforts towards that goal we are not sure of the end result.

The iterative approach to scenario 01

Working in iterations means that you deliver smaller chunks of your work. Reaching a delivery step, or milestone, you have the opportunity to check how that stands and if it works. You can do that via self-testing and play-testing with other people, to get their feedback.

Evaluating at each step means that you can:

  1. Stop and admire your work so far, that will fuel you to move forward!
  2. Check that there is value coming out of the process and that you are actually getting that value!
  3. Gather important feedback, to feed to your next iteration. Apply any adjustments needed on the spot and move forward!

With more iterations added towards completion, you have already applied a multitude of corrections and have already gained or provided some value through the process! Finally, when you reach the end, you know that your work is play-tested.

Especially in the business setting, you’ve already gained some users along the way. Incorporated their feedback in work, and validated that they get value out of your work.

A graph showing smiley faces on an elliptical line representing the work towards completion. By time of completion 5 smileys have already been added in the line.
Scenario 01, iterative case. From a Lightning talk presentation.

The single-go approach in scenario 01

Working in a single-go means that you build everything from scratch to completion before you share it with others. You have a set of tasks leading to your end goal, and you implement them sequentially. In a similar manner, you perform internal audits to see if everything works and keep moving forward.

When done, you share with more people. In the case covered, people appreciate your work and have positive feedback. In a business setting, this means that by the time of completion, you start talking with possible users that might get value.

A graph with an elliptical line representing work towards a goal. A single smiley is added at the end of the elliptical line which is the goal.
Scenario 01, single-go case. From a Lightning talk presentation.

Scenario 02: There’s a big problem down the line!

In this scenario, we’ll consider the worst case possible, the goal down the line is simply wrong. Like in the previous scenario, you know “nada” when you start on it!

The iterative approach to scenario 02

You start work and deliver your first iteration. Through sharing and play-testing you identify some issues that need improvement. In the next iteration, you improve on the core parts and deliver some new ones. Evaluating the work so far shows disappointing results, you and the people you shared are not happy with the results.

Assuming that you have the internal drive, you keep improving on feedback and move forward with another iteration. Feedback is still negative after your efforts.

Halfway through the final goal, all feedback is still negative. There is work ahead, but you can weigh your options:

  • Change the initial goal and keep pushing, with the goal of making it work. You believe there is value in pursuing the generic direction, but a small pivot is needed to make it work.
  • Stop your efforts towards that goal. There are other ideas down your pipeline to test out. You identify that any more work down this path will be wasted effort.

Either way, you get feedback and adjust your goal accordingly. The effort you invested so far is another input to help you set your next step, alongside all other feedback. Working iteratively, you have this opportunity to adjust, pause, or stop at every step of the way.

A graph with an elliptical line representing work towards a goal. 3 angry faces on the line up to the middle. A bubble from the last angry face reading “Abandon or Pivot?”
Scenario 02, iterative case. From a Lightning talk presentation.

The single-go approach in scenario 02

You start by defining the task sequence needed to reach your end goal. Then it’s simply a matter of implementation. You perform internal audits and get a hint that something isn’t working but you focus on your end goal, completing all the tasks.

You share with the first person when everything is complete. At this point, you get negative feedback. You still believe in your goal, you just shared with the wrong audience. As you share with more people, you realize that what you delivered doesn’t quite work as you imagined.

At this point, you have already invested all the effort needed to create something that doesn’t have the expected value. You started gathering feedback too late. More time is required to get enough feedback and realize that your deliverable is essentially unfinished — little to no value is in there. In a nutshell, all your efforts haven’t yet paid off; and you don’t know why.

A graph with an elliptical line representing work towards a goal and an angry face at the end of the line, when all work is done. Some dotted lines past the end of the line a bubble reading “Failure realization moment”
Scenario 02, single-go case. From a Lightning talk presentation.

Iterations, iterations, iterations

Working in smaller chunks and evaluating with more people makes your effort worth it. Working on something personal or in a bigger business setting with many teams, iterations are helpful.

You could be cooking, and simply taste midway through — to add a pinch of salt. You could be writing a post, and sharing a draft before releasing it for feedback (thank you, Nikos, Anastasia, Igor, Kostas). You could be drafting a quarterly roadmap, and need more eyes — a feasibility check (thank you, Metalheads, Hack The Box Product team, and Gerasimos).

Iterations help to shape better end results! Try to include them in your workflow. When you have a goal to reach, try to break it into smaller chunks that require less effort and share early for feedback!

This post is part of a series of posts, inspired by my product management experience and my current job at Hack The Box. The whole series of approximately 5 posts was a lightning talk to the entire HTB team💚!

Here are all posts from the series:

--

--

Mike Giannakopoulos

Thinker, solver, experiences aficionado. Remote worker, product Manager for hackthebox.eu, teamoclock.com co-founder. Striving for self-improvement and calm.