Imagine you are driving a bus with 100 people on the highway. Pretty tough, right? Most people have never driven a bus in their lives. It probably is pretty easy after you’ve done it as a profession and gotten training in it.
Now, imagine a couple changes.
- Instead of one steering wheel that you control, each of your 100 passengers have a steering wheel. The bus turns as the average of all the passengers’ steering wheels.
- You have great rearview mirrors, but now your windshield is entirely blacked out.
- Your passengers’ side windows are entirely blacked out and have been replaced with a small tv connected to a low resolution, 5fps camera.
- You are given a paper map of the area, but it’s not very detailed.
The challenges of building good products is a lot like driving that bus. There’s several themes that stand out:
No visibility into the future.
Nobody has a crystal ball. The best you can do is take circumstantial evidence, past trends, and gut instinct to draw a crude map of what you think lies ahead.
Distributed decision making can threaten your ability to stay agile.
When an obstacle suddenly pops up, you can’t directly control the movement yourself. Instead, you have to convince a critical mass of people that it’s important to steer away from the obstacle. Well run organizations that value low overhead and have scrappy, thoughtful employees are able to stay agile. Imagine putting 100 Microsoft executives into this bus.
Experience can be detrimental.
You might think that a muni bus driver who has driven a bus for 30 years of her life would be well suited for this job. After all, it is a bus, right?
The professional bus driver will be really great at telling you how hard it is to steer a bus, how to brake, how to turn on the radio, where the fire extinguisher is. But not all that experience is very useful, and they might be more used to a specific type of bus, and have certainly only experienced being the only steerer.
You have small, fragmented pieces of information.
Many of your passengers will tell you that we need to react to X obstacle. But nobody has full context. Every passenger can only see a small sliver of the outside through a small, low resolution camera. And you can’t see out the windshield. How do you know what information is most relevant?
Surviving the trip
It’s important to acknowledge that you are guaranteed to have a bumpy ride. With limited, imperfect information and slower reactions, there is no way that you can be a perfect driver.
Some important tips:
Be on your toes.
Never become complacent. Never create inertia. You need to be capable of shaping and re-shaping your decisions quickly. If you start turning left and realize there’s a giant rock to your left that you will hit, you can’t say “well we already started moving so we shouldn’t waste our efforts”. You need to be willing and able to abandon work when necessary and abandon beliefs when you discover irrefutable contradictory evidence.
But don’t overdo it. Thrash isn’t helpful and being too sensitive and reactionary can just lead to treading water. You can overcome this by layering your beliefs and decisions so that the highest cost decisions are most grounded, and the lowest cost decisions are most susceptible to change.
Gather information before making decisions.
Normally you fully trust your senses and react immediately to stimulus. Here, it’s really dangerous because you have derivative information 90% of the time. When someone shouts “BRAKE!!”, you can’t just immediately get everyone else to swerve left. Why did someone say we need to turn left? What is the underlying information that caused that person to say such a thing? Is it a valid problem? Is it a valid solution?
Here it is really helpful to think about the 5 whys and constantly dig into what the underlying sources of truth are.
Don’t be paralyzed by indecision.
Don’t overthink things. The bus is going at 75mph. People are antsy. The information you have is imperfect. The longer you deliberate the more likely you will accidentally hit another obstacle you didn’t anticipate. And your decision isn’t necessarily any better, either.
Another analogy I like to use: imagine that there are 5 rocks in front of you. Try to guess what is hidden under one of the rocks without touching it. You can spend hours discussing secondary information like how the light reflects off the rock, what it smells like, whether there are any disturbances in the ground underneath it, but in the end all the information you can get will only give you a hunch — you will never actually know what’s underneath until you flip the rock over.
Avoid being average.
Have you ever mixed all the colors of paints together before? Instead of turning into a brilliant amazing color, it turns into this disgusting brownish-greenish murk that nobody wants to use. That’s what happens if you average out all the suggestions that people have. Average decisions are, by definition, average, and nobody wants to use average products.
You can avoid that by focusing on core facts (and not core opinions) and using that (and a mix of intuition) to make new insights.
Make sure to distance yourself once in a while.
It’s really easy to go into a rabbit hole. You might over worry about a single obstacle that many people have been clamoring about and accidentally ignored another problem. You might be so focused on figuring out how to turn left that you haven’t actually checked if you actually should be turning right.
The only successful way I’ve been able to do this is to periodically distance yourself from a project. Go offline, take time to be creative in other mediums (write, paint, draw, sing, enjoy unique stimulation), let what you have been working on digest and mull in your subconscious. Then, go back and review it with naive eyes and ask yourself “are we really doing the right thing?”