Hacker News new | ask | show | jobs
by dijksterhuis 6 days ago
put simpler, you learned what not to build.
2 comments

It's definitely that, which is very valuable, but it's also the optionality value additionally. You had the option to launch the thing, which you wouldn't have had if you had never worked on it at all. It's notoriously difficult to properly value optionality, but it definitely has value, and often a lot of value.
sorry, but this just sounds like a rationalisation for "we built the wrong thing".

we should just be straightforward, say "we built the wrong thing" and then ask how we built the right-er thing.

No, optionality very literally has value. If I buy an option to purchase some commodities at some price, and the market moves against me, I lose the price of the option. By your logic here, the thought should be "buying the option was wrong, because it didn't go my way and I lost the price of the option". But it's often the case that actually buying that option was a good move.

The kind of optionality I'm talking about in software projects is not so clean to account as the financial instrument, but it has real value in just the same way.

see my reply further down the thread https://news.ycombinator.com/item?id=48503075
> sorry, but this just sounds like a rationalisation for "we built the wrong thing".

If it were so easy to decide what the right thing is to build before you build it then business would be easy.

That's the whole reason options have value. Having 3 shippable products ready to go when you can only effectively ship 1 puts the whole team in a much better position than choosing 1, focusing everyone on it, and hoping you hit the lottery with product-market fit.

So yes, an engineer may work on something that doesn't ship. That doesn't retroactively make their effort worthless, and that's not even counting the experience gained by the endeavor which may well pay off on the next round of products to ship.

> If it were so easy to decide what the right thing is to build before you build it then business would be easy.

It's not easy. That's why it's important to be straightforward and just move on without all the navel gazing.

> ... hoping you hit the lottery with product-market fit.

There's this thing called "research" where you talk to real people, instead of guessing.

> That doesn't retroactively make their effort worthless

No-one said building the wrong thing was worthless. Life is one continuous mistake.

---

we are saying mostly the same thing i'm pretty sure, especially in your other comment reply (https://news.ycombinator.com/item?id=48498912). although i feel you're dressing it up a little too much for my liking. i prefer being a lot more plain and direct about it (and probably a bit arsey).

ruthlessness is an asset when it comes to we built the wrong thing. ruthlessness gets us moving on faster.

> There's this thing called "research" where you talk to real people, instead of guessing.

Obviously you should talk to people.

But that doesn't lead to guarantees of product-market fit. People can describe their problems, but they usually can't describe the solution. If they already knew the solution they'd likely have already addressed the problem!

> ruthlessness is an asset when it comes to we built the wrong thing. ruthlessness gets us moving on faster.

Sure, I think we are sort of saying the same thing. I'm saying you should work on it even though it may be ruthlessly rejected later, potentially even without ever shipping.

It's part of the game and it's not worth crying over. The ruthless thing is to acknowledge the work you did, that it had value to whoever was paying you to do it, and then move on to the next thing.

I don't understand why you interpret "we should recognize that it's worth paying for optionality and sometimes we decide not to exercise the option and that's normal and fine" as naval gazing. I think it's the opposite, that feeling butt hurt about the projects you work on not shipping is what is naval gazing.

To me all your "I prefer being plain and direct" just sounds like someone who hasn't thought much about why building the wrong thing is not worthless, and why those continuous mistakes in life are worthwhile, and isn't really interested in thinking about things at more than the surface level.

It does seem like you aren't really disagreeing with us here. But you're just saying "don't make me think about why we agree about this!"

> It does seem like you aren't really disagreeing with us here.

I'm not.

> But you're just saying "don't make me think about why we agree about this!"

My position is that you're overcomplicating it with business doublespeak.

----

edit

> someone who hasn't thought much about why building the wrong thing is not worthless, and why those continuous mistakes in life are worthwhile, and isn't really interested in thinking about things at more than the surface level.

I have just spent the last two years writing over a thousand pages of very heavy introspective stuff about a bunch of stuff i've done, and things that have happened to me, over the last thirty years.

"surface level" is most definitely not the person you're speaking to.

Shouldn't companies figure this out before wasting tens of millions in budget + working hours? All I'm reading is that corporations are not taxed enough if they are okay with such opulent waste.
Knowing what to build (and that it hasn't already been built or bought elsewhere in the company) requires bits of information / person-to-person networking / visibility into the state of the company that not all managers or VPs have.

In fact, most people don't have that knowledge, because they're busy with existing or "local" problems , or because they didn't know to ask Davis the DBA or Kris the Kafka Cluster Manger or Alex from accounting if we have <resource> our team can plug into and use. "Oh, yeah, El has one under their desk they kick occasionally, ask them to hook you up!"

If you solve this problem in a turnkey way Fortune 500 companies will write you very large checks to help them prevent such duplicate waste, and will in turn become the 15th system they need to integrate....

That XKCD joke about "how 14 standards becomes 15 standards" also applies to the class of "one system to integrate with and report from all other systems"

Story time. small business. less than 30 people.

ceo had invested £1 million to build a data analytics platform. "democratising data analytics" in a very specific domain. essentially, competing with someone like databricks in a niche. although they had never heard of databricks before i showed up.

For that million pounds they got a job scheduler written in pure django with a halfway finished react frontend. the whole thing was constantly broken. there were multiple race conditions throughout the product. i joined well after the million pounds was all gone. three years after i joined i had fixed the worst of the problems by rewriting massive swathes of the thing.

i eventually convinced the ceo they'd been doing the wrong thing all this time -- they should focus on analytics + specific domain consultancy services instead of software products.

the major failure was no-one ever moved on from idea V1. they never moved to idea V2. which meant they never got to idea V3. instead, everyone spent a hell of a lot of time talking about how great V1 was going to be, and how they planned to build V1 and what V1 would look like, check out this status update about our progress on V1, check out this mock up on what V1 is going to look like etc. they had an agile consultant come in to tell them how to be more agile. a scrum-master to tell them how to scrum.

3 months after joining was the first time i mentioned apache airflow. they literally could have just stuck a nice frontend on top of it and written a backend data transfer library. job done. very cheap idea V1. unfortunately, the previous team of django developers could only see their trusty django hammer. edit -- and i should add their big £1 million budget too.

multiply the budget by 10x or more. exact same thing at some big corpo. bigger budget = room for more bullshit.

Yes, thanks for the story. This is what I was trying to say. The idea that it's completely okay for companies to misallocate billions of dollars across the industry while people are legitimately suffering do to myriad of reasons is just bonkers level of selfishness.

I worked at a company that had an $80,000 monthly AWS spend when the total users in question was less than 100,000. The most concurrent users was <500.

This obscene waste actually isn't health for society nor the economy.

Ah I see the point you're making now. Yes, sometimes (often) businesses make very bad decisions.

But that doesn't imply that every project that does not ship was a poor investment of time and resources.

I disagree, especially if we are talking about potentially hundreds of billions in waste. How much better would say software be if instead of Meta wasting $100billion on Reality Labs we gave one time $100,000 grants to open source developers? That would be helping over 1,000,000 open source developers that are actually writing useful helpful software for others.

Instead we had a corporate jobs program that benefited no one outside of Meta's offices.

The existence of initiatives that did waste money does not demonstrates that all initiatives that don't work out are a waste.

I agree with you about facebook's poor decision making.

Software engineering projects expand to fill the deadlines you set for them (usually going over). Same thing for budget. You'll waste a bunch of a million pound budget. People are forced to get creative and thrifty with a £20k budget.

constraints can be useful https://en.wikipedia.org/wiki/Oblique_Strategies

> The idea that it's completely okay for companies to misallocate billions of dollars across the industry while people are legitimately suffering do to myriad of reasons is just bonkers level of selfishness.

Yes. The metaverse bullshit comes to mind. Something no-one wanted or needed, and exorbitant amounts of money spent on it.

No. This is like saying "shouldn't scientists figure this out before wasting tons of money running experiments?".
Not the same. Every corporation I've worked at (several dozen in my career across the F500) has had numerous stories about obscene waste in regards to building things in software.

Waste at all levels. I've worked at insurance companies that spent $100million on development where only 200 customers signed up (estimated to be 20,000 at start). I've worked at telecoms that spent $25 million developing internal tools that no one used. I've worked at big tech where entire teams sole purpose is to control a single widget on a UI page.

This isn't even on the procurement side. Recently left a company where a single org was paying $10,000 a month on licenses when only 12 devs existed. I've seen organizations waste tens of millions of salesforce licenses that no one uses.

I'm sorry but the waste is rampant. SMB's can afford to waste tens of millions of failures, but modern US corporations can because there is no real competition in US markets. Just monopolies abusing each other.

I'm sure scientists would love the chance to have stupid budgets and make stupid things.

So no not the same at all.

> $10,000 a month on licenses when only 12 devs existed

Depend, depending on the licenses in question, this could be a fantastic deal

Thought I wrote it, but this was for Postman (yes the GUI curl software).
It is true that businesses tend to have more money than scientists so the numbers are bigger, but scientists pursue failed experiments that are "waste" in just this same way.

"It only got 200 users" is the business version of the null hypothesis.

Nobody can perfectly predict the future.
So it's best to throw billions of dollars down the drain?
No, it's best to manage your software delivery organization to reduce the cost and time of experiments so that you can quickly and cheaply figure out what to build... and then build that.

But there will still necessarily be things that you build that don't ship, and that's inherent to the problem domain.

Best to shelve something and not ship it once you know it won’t work, than to continue to throw even more money down the whole after it.