Value First, Price Second: How to make good decisions in life (and software development)

When making decisions, jumping to the price as the first mechanism for comparison is a common mistake we all make. Everybody has done it at some point already and I am willing to bet most people resort to price as their default assessment most of the time. I know I do.

But just because everybody is doing it doesn't make it right. In fact I propose that focusing on price is completely the wrong way to be doing things in both personal and professional contexts.

Don't get me wrong; price is a valuable metric to compare items on but it should not be the first metric. It should be the last.

Price is not YOUR measure of value

The problem with considering price first is you are then referring to someone else's value metrics. You are taking what that retailer/supplier has decided their product is worth and not considering what it is actually worth to you. (Theoretically they are defining what they think the market will pay for the product which, depening on your viewpoint, may not quite be the same as what the product is worth but it's close enough for this argument.)

I'll repeat the point so it's clear

Price is what THEY think their product is worth, not what it is actually worth to YOU

Why is that important?

Once you are assessing price you are trying to force your own values into their value framework. If you are comparing two items just based on price then, unless they are 100% identical, you have no clear decision path to which is the best to choose. You could take the cheaper option and save yourself some money but then are you getting the best product? More specifically are you getting the best product for your needs?

¯\(ツ)

No idea.

So let's take the more expensive one then because that surely means that it is a better product right? RIGHT? Not necessarily.

Maybe the more expensive item is bloated with unnecessary features, or at least features that you don't care about. Or maybe it's the same exact quality product but their salespeople just get a higher commission. Or maybe they just saw a sucker coming from across the street and raised the price.

There are countless reasons why similar products could have different prices and using this as the main comparison metric is a mistake. What you need to do is define your own value metrics first.

Define your own value first

Defining your own value (i.e. priorities) is about figuring out what matters most to you first before you consider price. Once you know what you truly value, or at least which features you value more than others, then you are more likely to make a better decision.

Only after you know what you value should you look at price.

Let's work through an everyday example…

Say we're in the market for a new TV. Lucky for us there are literally dozens and dozens and dozens to chose from. We're spoilt for choice! Picking a TV is going to be easy…

"Look at these three TVs.…The cheap one is simple but has 4 HDMI ports, the next one connects directly to the internet which seems good, and the last one is uber expensive but it has a gold plated coffee machine that connects to my alarm clock and makes me a coffee before I've even entered the room!"

There is a something called 'The Paradox of Choice' which essentially is saying that when we have (too) many options we end up struggling to make a decision and, even worse, we end up getting depressed about it.

But, one way to get around this is to start by defining what we value first BEFORE we even go looking at what is in the market. This helps us weed out the rubbish we don't care about and reduce the number of options pressing in on us. Then we can consider price.

"I've narrowed it down to three TVs that are all the same viewing size and have 4 HDMI ports. I've already got a coffee machine at home so I'll rule that one out…and I don't know if I need the internet connectivity thing. Hmm that one is only $100 more so I'll buy that just in case."

It's simple and sounds obvious when written like that but it’s not how most people, including me, operate. It's easy to walk into a shop and look at merchandise but it's extremely hard to make a good decision without first defining what your value is first.

There is another subtle point in that above example - value works hand in hand with price.

Value first, price second

Once you know what you value you can easily rule items in, or out, of your option list. Hopefully you can even put certain items about others in a priority order. But we still need to make a decision and this is where we can use price intelligently in conjunction with our value(s) list.

Let's do another example…

Say we're out for dinner at a nice restaurant to celebrate the purchase of our new TV and we're looking at the menu. There are six delicious sounding things on the menu. We're hungry but we're also budget conscious. How do we pick what to eat?

One method would be to shortlist the cheapest 2-3 items and pick the one that sounds the best. This would guarantee us to satisfy our frugality mindset but probably not maximise our enjoyment of the dinner.

"So the cheese risotto, pumpkin soup and tofu burger are all around the same price. None of them sound great…I guess I will have the soup.[insert huge sigh of unhappiness here]"

The point of have a dinner out is to eat good food and enjoy it. As such the top priority is picking food you will enjoy rather than picking what is cheapest. So the better option is to shortlist the 2-3 items you will enjoy most and then use price as a consideration. But only as a consideration.

"That grass fed, 90 day aged wagyu steak sounds amazing but it's pretty expensive. The lamb sounds nice too and is $5 cheaper. What should I get?"

Well? What would you get?

Me: "Ah fuck it, I'll get the steak!

Best decision ever. The values gave the shortlist and then the price was used to help determine if the differences between the options was worth the difference in price. In this case saving $5 was not worth missing out on that juicy tender and delicious steak. Hmmmmmmm steak.

But I have made this exact mistake before. I have sat there, really wanting to order the steak, but instead choosing my 2nd favourite option to save a few dollars. Every time I made this mistake (yes, I've stupidly done this more than once) it was because I started out referring to my values but then lost my way and let price become the determining factor.

Lesson learned. Unless two options are completely equal in every way then price should not be the determining factor. Price is relative to values. Value first, price second.

The Value-Price Battle in Software Development

Finally, after buying a new TV and eating a delicious steak, it is time to bring this concept back to the working world. Specifically it's time to look at how the value-price battle plays out in software development. I've written before about the working habits of product and engineering teams and the value-price battle is a prime example of the dichotomy between the two camps.

The same, value-first thinking works here too, specifically in picking what to build next. And if you think that knowing exactly what you should build next is easy then you obviously don't work in a software company.

Knowing, and I mean really knowing, what to build next is an extremely difficult and ultimately critical problem most software companies face. This one decision not only dictates how you perform in the marketplace (i.e. product-market fit) but also controls your internal expenditure (i.e. costs). And that's where the confusion begins.

Building something, anything, has a cost and because most businesses are driven by P&L statements, budget spreadsheets, and the deeply-ingrained human fear of losing money, everyone tends to focus too heavily on the cost.

But cost is just another word for price and focusing on it prematurely can have dire impacts, especially if you are trying to build great software. What's the answer? I think you already know what I will say…

Define your value priorities first!

And, funnily enough, I have previously given presentations on 'The Product-Engineering Funnel', talking about the ideal flow a product (or features and ideas) should take in a company. I will save diving in to that in detail for another time but for now I'll list the general concept:

1. Analyse product ideas + feedback (set high level capability goals)
2. Prioritise and flesh out requirements (commonly as Epics with Features)
3. Analyse top priorities for technology issues and dependencies
4. Estimate time/effort/cost to build
5. Adjust the priority (if needed)
6. Build the bloody thing(s)!
7. Go to step 1.

You can see that the price (i.e. cost to build, whether it be time or money) doesn't come in until step 4 and then it can be used as a driver for adjusting the original plan in step 5. But the prerequisite is that the items are already in priority order.

If the items do not start in a (roughly) prioritised order then what will the team analyse and estimate? Everything on the entire backlog? Ok, let's take them off tools for a few weeks so we can provide estimates for everything we think we might want to build sometime in the future. It's time consuming but at least then we can plan our next 27 years of feature development…

Except it never quite works out that way. We don't know everything right now, new ideas will pop up out of nowhere, and most of the backlog has not been fleshed out enough. The result is that most of those estimates will be blatantly wrong and useless.

There needs to be some idea, some level of commitment, to what should be built next and that comes by defining what we think will add the most value. That value could be value for the customers (and thus allow us to grow our customer base) or direct value for the company (e.g. increasing revenue). Whatever those value metrics are should drive the initial prioritisation of values.

And this is a very hard thing to do. The tendency, especially early on in a product's lifetime, is to think everything is a top priority and therefore rely on the development estimates (i.e. price) to decide what to build next. But that's like looking at the restaurant menu and picking the pumpkin soup and the tofu burger because they are cheapest when your customer would actually prefer to wait and just get the delicious steak.

Value first, price second.