This is an excerpt from the book Kanban Remastered: Agile Lessons from Strategy Games.
An individual game of StarCraft could be compared to a single iteration of a new product, a single evolutionary step after which you can examine the replay and discuss and improve your strategy and tactics.
This is time consuming, so to help this process, I have developed a tool, Evolution Forge, that speeds up these learning iterations. It works by running an abstract simulation of StarCraft to test how a certain strategy would actually play out. So, instead of having to play game after game yourself, you can use the tool to quickly try out different strategies and see how fast you would be in the real game.
On top of just testing the speed of a strategy, this tool was designed to come up with new random strategies to reach a certain predefined goal (e.g., building 10 Space Marines in the Barracks) as quickly as possible. I programmed it to make random changes to a basic strategy, run the simulation, test its speed, and repeat the process until the program came up with a faster strategy. Then the program used that faster strategy, made random changes to it, and on and on. In very small steps, the strategy became more and more efficient at reaching the goal.
SPACE MARINE · The Space Marine is the basic combat unit in StarCraft. It is the dominant unit in the early part of the game, the only protection between your own base and the enemy. Space Marines are produced in the Barracks and will be used as a basic example, in this book, for build orders. Just like a product needs a number of parts to be able to make a single sale, a lone Space Marine is the weakest unit of the game. Their real power shows when they act in a group, with other units supporting them.
BARRACKS · In StarCraft, the Barracks are the first production facility to produce combat units (the Space Marines). Building the Barracks also allows building other, more technologically advanced, production and research facilities, making the Barracks a cornerstone of any build order. The Barracks can be compared with the very basic structure of an enterprise with sales and marketing: No matter how good your product is, you still need to market and sell it!
Unfortunately, the program regularly got stuck because, most of the time, randomly rearranging your strategy leads to the exact same (or worse) outcome (in this case, time until the set of goal units were produced). To really improve, larger changes would have been necessary. But larger (random) changes typically lead to worse results. Does this sound familiar? It is the same situation that can be found in companies where large process changes are introduced. Suddenly, the promised improvement turns out to slow down rather than speed up project work! What to do?
In nature, transitory states become apparent in hindsight. Only then does it become clear how one thing led to the next. At no time could you point to one gene that could dramatically change a life form. No single change is a significant improvement over another because all the parts of a life form are highly optimized. Changing one thing might hinder the optimization of another. So, at first glance, it is a mysterious wonder how natural processes led up to the creation of complex organs. Looking more closely at the evolutionary process, it becomes clear that evolution really is based on very small changes. Nature cannot take a break for a few generations, working on a new prototype. Every single change has to make the life form more fit to its environment.
To suppose that the eye with all its inimitable contrivances for adjusting the focus to different distances, for admitting different amounts of light, and for the correction of spherical and chromatic aberration, could have been formed by natural selection, seems, I freely confess, absurd in the highest degree. Yet reason tells me, that if numerous gradations from a perfect and complex eye to one very imperfect and simple, each grade being useful to its possessor, can be shown to exist; if further, the eye does vary ever so slightly, and the variations be inherited, which is certainly the case; and if any variation or modification in the organ be ever useful to an animal under changing conditions of life, then the difficulty of believing that a perfect and complex eye could be formed by natural selection, though insuperable by our imagination, can hardly be considered real. — The Origin of Species, Charles Darwin
On its own, a part of an eye cannot see; it would be the same as if you (in business) involved only a single department in product creation. A product without marketing or sales literally will not sell, just like you cannot sell or market if you have no product, just like a part of an eye cannot see.
Or can it? Part of an eye can see if that “part” refers to an earlier stage in its evolutionary development. Just as you can release a software product before it has all its features, you can build a simpler version of an eye that can see. What is the basic element of an eye? The cells that react to incoming light. Imagine you have just a plane of cells that react to light. What can they “see”? They cannot detect the direction from which the light comes, so all they can perceive is whether their environment is light or dark.
You might say, well, this is not an eye! An eye sees images! But a shade of gray is an image, just an image of very low quality. And that is the core idea: find an indicator that describes your product that can easily scale. For an eye, it would be the resolution and definition of the perceived image.
For example, if your project is about building a car, maybe make the indicator speed in combination with fuel usage per 100 miles. If you write a book, try to split it into independent chapters. You can then write one chapter, add the front and back matter and a basic cover, and you have your first version. It might be short, and it might not be finished in terms of editing, but it is a book! Then add one chapter after the other, bringing it to a finish resulting in a complete book.
Coming back to our eye, we could bend the plane of cells in our next version. This allows a very rough orientation about where the light is coming from. We could bend it further and further until we have a basic pinhole camera with a small entrance for the light and a circular layer of cells that can detect the light. Later, we could add a lens and gradually improve the vision until we have an eye comparable to ours.
Complex things can be built by finding a ramp which we can use to gradually make the things better. Once you discover that ramp for your product or organization, improvement becomes very easy. And Kanban can help you find that ramp without making large changes to the organization. Kanban itself is a passive process on top of your existing processes. It only shows you where you should go. You can then take that path in small steps without ever disrupting your organization.
For my software tool, Evolution Forge, my solution was to find such a ramp. Instead of focusing on just one thing, namely the time until the goal is reached, I looked at the overall quality of a strategy. In StarCraft, I simply included the amount of mined resources as an indicator to compare two strategies with the same goal time. When a strategy achieves the same set of goal units with more resources in the bank, it gets ranked higher and is selected for the next generation in the evolutionary process. This is similar to comparing two project plans with the same release date but different costs.
I also apply this principle of small changes in my personal life. I follow the idea of removing one thing each day. I ask myself: do I really need that? How do I benefit from a particular item? Does the happiness it brings outweigh its upkeep? It is one way of simplifying my life. It might not pay off immediately, but eventually, it might just be what gets me ahead, having a clean workspace and home and being able to focus on what is important. This helps me to get unstuck, it gives me a “ramp” to improve when I do not see the next step.
Likewise, when working as an Agile coach, when there is some idle time between tasks, I check the (real or virtual) project room to see if there is one thing that could be cleaned up or removed. When you employ this approach, step by step, your workspace becomes better and people see steady progress—the core principle for motivation.
Kanban is usually focused on the flow of work and resources through a company. What is often missed is to also improve the processes of the individual workers or the workspaces themselves. This can require some outside encouragement to change inefficient processes that have become ingrained in an individual’s work habits. It sometimes requires throwing things away, ending unproductive projects, and maybe even firing people who might actually be much happier in another job. Think about scrapping 10 percent of your current projects and processes every year. If you do not, you will eventually end up with a company that is just busy with itself. Cutting away the unnecessary stuff makes room to focus on what is actually important—that applies to businesses with complex and opaque organizational problems as it does to life in general.
Instead of trying to implement huge organizational programs, think about what small things you can change to improve the situation. While small changes lead only to small improvements, at least they can be easily implemented and their improvements are easy to see. For example, saving your team a few minutes each day by having pens and paper ready when the meetings start might not turn around a failed project or double the sales. But it is something you can be sure will improve team performance. So, instead of thinking about the grand plan and huge change processes, think about what you can improve now. These small improvements might eventually pave the way for larger changes after all.
Teach your employees the costs of not cleaning up—program code, their work spaces, or projects that just increase costs and bring no value. Instead of rushing in to try to keep your team busy with project tasks when they are finished with their current tasks, have them work on issues that they want to fix. Ask the people who are actually working on the project what could be improved: even fixing small things adds up and will give your company the energy to tackle more complex problems. Ultimately, teach your teams to tackle the smaller issues when they are stuck on a larger problem.
Likewise, teach management and product owners not to take up any “monkeys”—work that should be done by someone else, not by them. Advise them that instead of trying to be the hero, adding more and more meetings to their schedules, they could do one or two projects and be fully focused.
Learning from nature requires us to unlearn the hubris of thinking that big drastic changes are required for positive outcomes. The bigger the ideas of how to change a company, the more in peril that company probably is. People promising big dreams bet on circumstance that luck will somehow turn into their favor, grandstanding as the hero. But they will probably have left the scene when it comes to implementing those ideas or will blame others or the very circumstance they bet on if their plan fails.
There is a time to stand up as a hero, though. Standing up against big, “revolutionary” ideas that will supposedly turn everything around and focusing on what can be done incrementally now: that is the time to show courage and perseverance.