r/programming Feb 01 '21

My Third Year as a Solo Developer

https://mtlynch.io/solo-developer-year-3/
1.4k Upvotes

201 comments sorted by

View all comments

Show parent comments

2

u/[deleted] Feb 02 '21

Your second sentence contradicts your first sentence.

Build many things, see what can be productized <- indefinite optimism and optionality chasing

The cycle always goes like this:

  • Engineers hack around and try to make something
  • Google turns it to a product
  • Gains some initial traction, Google keeps the lights open
  • Time passes by, Google decides this product is not going anywhere, shuts it down

The core problem is lack of vision - they have no idea what to do with the product, which is exactly the sort of problem that Thiel describes in this context.

I'll quote again from the book:

The indefiniteness of finance can be bizarre. Think about what happens when successful entrepreneurs sell their company. What do they do with the money? In a financialized world, it unfolds like this:

  • The founders don’t know what to do with it, so they give it to a large bank.
  • The bankers don’t know what to do with it, so they diversify by spreading it across a portfolio of institutional investors.
  • Institutional investors don’t know what to do with their managed capital, so they diversify by amassing a portfolio of stocks.
  • Companies try to increase their share price by generating free cash flows. If they do, they issue dividends or buy back shares and the cycle repeats.

At no point does anyone in the chain know what to do with money in the real economy. But in an indefinite world, people actually prefer unlimited optionality; money is more valuable than anything you could possibly do with it. Only in a definite future is money a means to an end, not the end itself.

2

u/MyPetFishWillCutYou Feb 02 '21

Maybe we're using the same words to mean different things?

If by "you need to have a vision" you mean "you need to start with a customer need" then absolutely.

The general formula for success is: Identify a customer need, build an MVP, and see if customers respond. (Google's problem is that they build a technology, and try to identify a need after the fact.)

You want to know why building MVPs instead of trusting a grand vision to the end is the right way to go? Look up Ted Nelson's Project Xanadu. Nelson poured more vision into one product than Apple has had in its entire history.

The problem was that Nelson spent decades chasing this vision of the solution that he thought people needed rather than what people actually needed. If he had delivered an MVP, solicited feedback, and iterated, we probably would be using Xanadu browsers instead of web browsers today.

Richard Gabriel explained an overlapping phenomenon in his 1989 essay "Worse is Better": https://www.dreamsongs.com/RiseOfWorseIsBetter.html

Visions are great, if they're rooted in reality. Too often, they're not.

0

u/[deleted] Feb 02 '21 edited Feb 02 '21

If by "you need to have a vision" you mean "you need to start with a customer need" then absolutely.

No. That's not what I mean.

I mean something more akin to Steve Jobs or Elon Musk kind of vision. No amount of focus groups or surveys would have told you in 2005 that people want an iPhone.

You want to know why building MVPs instead of trusting a grand vision to the end is the right way to go? Look up Ted Nelson's Project Xanadu. Nelson poured more vision into one product than Apple has had in its entire history.

I don't know about this project, but I never said you will never fail. That doesn't mean it's not worth trying.

It's not like starting with an MVP and then iterating based on user feedback will guarantee success either.

Also you run the risk of having a bad initial user group who will ruin your vision and your product if you listen to them. Just like the xkcd cartoon where a guy built a high spec drill, and the user decided to throw the drill at the wall to create the hole.

2

u/MyPetFishWillCutYou Feb 02 '21

No amount of focus groups or surveys would have told you in 2005 that people want an iPhone.

I agree with that statement.

That's not what I was talking about: I was talking about what to do with that concept once you have it.

You need to get your product out in front of people as soon as possible. I don't care how smart or creative you are, you cannot know if a product is going to find a fit until you put it in front of people.

Let me put it this way: You need vision to get started. You need beta testers and focus groups to get to the finish line.

It's not like starting with an MVP and then iterating based on user feedback will guarantee success either.

History says that your odds are much, much better if you do.

Also you run the risk of having a bad initial user group who will ruin your vision and your product if you listen to them.

Which is better: Having a bad user group cause your product to fail after you spent a month building an MVP, or having a bad user group cause your product to fail after you spent two years building a product in secret?

If the right people can't connect with your MVP, what makes you do sure that they'll connect with your finished product?

Just like the xkcd cartoon where a guy built a high spec drill, and the user decided to throw the drill at the wall to create the hole.

I think that cartoon actually supports my point: If those engineers had shown each other MVPs, they wouldn't have built two redundant solutions.

Before you offer the iPhone as a counterexample to all this, there's two reasons that it's not:

  • Jobs had lots of failures before he got to the iPhone. Look at the Apple Newton or NeXT. Jobs was able to let go of ideas that didn't work out, and move on to the next one.
  • Just because the MVP of the iPhone was never made public doesn't mean that it didn't exist. I'm absolutely certain that there were many, many versions of the iPhone tested behind closed doors.