Here’s to trade-offs and compromises. Your product‘s best friends.



 
 
  

 

We are currently renovating our house. 

Working with a professional designer made me realize how little I know about interior design but it also thought me that all decision making processes are similar and they all involve dealing with trade-offs . 

 

This morning our renovations contractor realized the door in one of the rooms is about to hide a portion of the window when it’s open. 
He suggested we move the location of the window from the center of the wall slightly to the left, stating it’s a small change that doesn’t have any implication on the rest of the work.
Sounds simple, isn’t it? All we need to do is move the location of the window a little bit…  

“There are always implications…”

 (That’s my 20 years of software development experience voice talking…)

 

"Let’s call our designer" I said, “I’m sure there’s a trade-off here, I just don’t know what it is...” 

 

I was right. Her answer was short and simple: if we move the location of the window to the left it will be at the cost of reducing the depth of the shelves we planned for that left side wall.

 

 

So I guess there are implications after all… 

 

Once we understood the trade-off, we were able to make an intelligent decision based on our set of priorities. In our case, the storage for that specific room was top priority so we decided to keep the window in place. 

In product development, like in life - there's no right or wrong decisions. Instead, there’s a huge collection of possibilities, priorities, goals and... trade-offs.   

 

Every time we make a decision we are making a trade-off. 
Every time we make a trade-off we are consciously compromising on something. 

  

Every product decision you make has a trade-off: you achieve something at the cost of something else and you have to choose your priorities carefully.  

 

Usability vs appealing design

This one is a classic: a feature that looks great but affects usability in a negative way.
A trade-off: will you be willing to sacrifice your product’s usability for the sake of slick design? 
What about a UI solution that boosts usability but looks a bit outdated? 

Here’s a quick example taken from my reality these days: kitchen designs. 

 

 

On one hand: usability. Handles are easier to grab and work with. On the other: clean & modern look. 
Once you understand the trade-offs you are ready to make an intelligent decision aligned with your priorities. 

In our case - we hate the handleless experience (squeezing my muscular fingers uncomfortably to open the drawer is not my idea of usability) so we went with the handles option. 

However, we are on the minority side, as most people go with the handleless option these days. 
According to a research by NNGroup users are more tolerant of minor usability issues when they find an interface visually appealing. This aesthetic-usability effect can mask UI problems and can prevent issue discovery during usability testing. 

 

Users are more tolerant of minor usability issues when they find an interface visually appealing

 

Here’s another good example: Timepage app, an award winning calendar app. 

 

 

Timepage is one of the best looking mobile apps I’ve ever seen. 
It’s incredibly polished, it has slick design, endless themes, colors, unique swipes, animations and what not. 

 

Every time I use it I feel excited about the design. I never use it. 

  

Despite its’ incredible design I rarely use Timepage because the daily agenda is designed as a stack and not as a timeline (see right screenshot) which is important to me.

 

 

The app creators decided to focus on design aesthetics (see color themes on the left photo) while providing a very basic agenda view - the core of most calendar apps out there… .

A trade-off they were willing to consciously accept, based on their priorities. 

 

 

  

Shoring up the foundations vs new functionality 

How much of your roadmap should be spent on improving existing functionality as opposed to creating new functionality? 
The trade-offs here can get strategic: keeping your hard activated users loyal requires that you keep improving your existing functionality while adding new functionality may bring new users onboard. Shoring up the foundations can help you keep your competitive advantage in place while creating new functionality might lead to new opportunities.

 

Implementing a technology dept vs focusing on business requests

That Node.js module hasn’t been upgraded for a year? Sorry R&D, our backlog is full. 
Neglecting a constantly growing technology dept will eventually lead to dead-ends (in the absolute worst timing). That’s a trade-off (or a risk) you need to be aware of when prioritizing features over technical ongoing tasks. 

  

Speed vs configurability

Also known as:
- “Why is it taking so long to load?”
- “It’s because it’s downloading the settings from the server…” 

 

Data capturing during onboarding vs conversion rate

Every step you add to your onboarding process reduces conversion rate.
The trade-off is clear and it’s up to you to decide what’s mandatory, what’s optional, and what’s kept out…

 

Choose one technology over another 

The oldest example in the world wide web: native vs hybrid. 

Angular vs react.
Android vs iOS.
Messi vs Ronaldo. 

There are probably a million more...

 

Unknown trade-offs 

When we started Missbeez we made a decision to rely on Parse.com: an amazing back-end as a service that was acquired by facebook and widely used by young startups.
It took us 6 months to discover the trade-off we made… It happened when facebook surprisingly announced the shutdown of Parse, forcing us to look for alternatives in the worst timing possible. 

There are times you won't know what the trade-offs are.
Don’t fool yourself to believe they don’t exist. Not knowing what the trade-offs are means you didn’t do a good enough job assessing your alternatives and mitigating your risks. 

 

 

 

Security vs ease of use

I won’t mention specific product names, but every time I need to generate a new password in Microsoft Office 365 it takes me forever 😡 to pass those extra protective security rules they created. Frustrating the users in order to keep the system secure is a trade-off Microsoft is probably willing to accept but smaller companies with early stage products may not feel the same.

 

 

 

Feature richness vs simplicity 

Also known as “beat-the-shit-out-of-your-competitors-by-adding-all-the-features-they-have-plus-all-the-features-they-say-they-have-but-don’t-have-plus-all-the-features-they-plan-to-have vs making sure your core features are rock solid". 

This one happens a lot in B2B companies where products are often measured by the clients using features checklists. 
As the business pressure to add more options and features increases - there’s a risk of lowering your users satisfaction level. That’s an important trade-off to think about.  

 

  

 

Shipping vs perfection 

What’s the right balance between aiming for completion and aiming for perfection?
Each product has its’ own set of weighted priorities, but this trade-off always exists and your decisions need to take those weights into account.  
How far should you go with lean methodologies and when should you wait for the feature to be perfect before you release it?   

 

Strategic vs opportunistic decisions

If you want to make god laugh tell him your plans.
You can build a perfect 2 years roadmap and throw it to the garbage the minute a large deal comes in

It can be the best decision you made, or not. But you need to understand the trade-offs. 

 

 

 
 
 

The list continues...

These examples are just the tip of the iceberg. 

Every product decision has trade-offs and no solution is perfect or optimal on every dimension. 
What’s more important is that often enough, the implication of a given decision stays with you for long time; decisions your took long time ago are still out there, being part of your product, which means you need to support them, take them into considerations when making new decisions and deal with them.  

 

“There are no solutions, only tradeoffs”

-Thomas Sowell

 

 

You need to mitigate the risk. Invest in POCs, make sure to read enough to understand potential pitfalls and most importnalty: have an experienced developer working with you on the technical research. Ann experienced developer develops a hunch for potential risks. He brings a set of tools that will help you understand the trade-offs and make the right decision (just like an interior designer does for our …) 

 

 

Working with trade-offs

 

  1. Compromising is the name of the game, dig deep until you know what you are compromising about.
  2. There’s always a trade-off. If you don’t know what it is - dig deeper.
  3. Look at decision-making as a game you play with trade-offs until you achieve your objectives. 
  4. Remain loyal to your objectives and stick to your priorities.
  5. If you can’t explain the rationale behind your decision (to your boss, CEO, investors or customers) - you have a problem. 
  6. There’s no one right decision.
  7. Document not only your decisions, but also the reasoning. Trust me, you will find them beneficial someday.
  8. Some stakeholders (sales, engineering) see things as black and white. The product world is coloured with shades of Gray.
  9. Analyze trade-offs in an analytic way. Don’t let emotions get you carried away.
  10. Remember you cannot do everything.
  11. Don’t let local escalations mess-up your judgement. Ignore vocal minority and focus on the silent majority.
  12. Experienced technical people develop a special hunch for identifying trade-offs and potential pitfalls. Share your dilemmas with them.
  13. Use A/B tests to mitigate risks and validate your theories.
  14. When prioritizing, think about future versions as well as old ones. 
  15. It’s a game of trade-offs. Learn how to play.

 

 

More stories for you

What should you do when you can’t trust your users, friends and even you mom?

12 Reasons Your Presentation Sucks (and how to fix it)

5 Things I Learned In The Transition From B2B to B2C

 

 

Before you go...

Join my mailing list to get more of these directly to your inbox and become 23% more awesome than average.

Or, if you can’t stand emails then follow me on Twitter and never get lonely again. 

 

 

 

 

Comments