LLenny's Podcast
← All frameworks
Innovation

First-Principles Re-Derivation (Rerun the Decision Tree)

Rebuild any product decision from today's building blocks instead of copying path-dependent solutions.

Difficulty
Advanced
Time to result
~weeks to results
Steps
5
Confidence
92%

Lütke treats every existing solution as path-dependent — shaped by compromises that were true when it was built but may no longer hold. Rather than making a 'good version' of what everyone else does, he re-derives the answer from scratch using every building block available now. Crucially, when new information arrives (a foundational assumption flips), he reruns the entire nested decision tree from the top, which can land the company in a radically different place.

Origin

Tobi Lütke's own operating method as Shopify CEO; he credits Elon Musk with the physics/atoms framing of first-principles thinking and distinguishes his own 'programming constructs' version (pure functions, rerunning over updated state).

Core principles

  • 01Everything that exists is highly path-dependent and often encodes obsolete compromises
  • 02Skipping the first-principles exercise is an abdication of product leadership
  • 03Sometimes the derivation returns what everyone else does — status quo can encode real wisdom
  • 04A single flipped foundational assumption moves the whole tree, not just one branch
  • 05Making only good local choices can still walk you into a bad local maximum

How to run it

  1. 1

    Name the problem, not the existing solution

    State the outcome you want independent of how anyone currently solves it. Reject any brief framed as 'make a good version of what people already do.'

    Pro tip Become suspicious the moment a pitch is 'a good version of the same thing everyone else does.'

  2. 2

    Audit path dependence and overfitting

    Ask what assumptions were true when today's solutions were built, and what each one is overfit to (e.g. enterprise software overfit to winning the RFP, not to quality).

    Pro tip An RFP checklist is a textbook example of overfitting — it tells you nothing about the quality behind each checkbox.

  3. 3

    Re-derive from current building blocks

    Ask 'how would we solve this given every building block available right now?' This requires genuinely understanding the power and composability of the tools that exist today.

    Watch out This is a tall order and no one is perfect at it — get close to the metal (the code, the atoms) so you actually understand the primitives.

  4. 4

    Only then consider shortcuts back toward the norm

    Once you have the from-scratch answer, you may deliberately talk yourself into a shortcut — but you now know exactly what you are trading away.

  5. 5

    Rerun the whole tree when an assumption flips

    When a foundational input changes, don't just locally optimize — rerun every nested decision over the updated state. The correct answer may be a very far-away landing zone.

    Pro tip Explicitly hunt for the earliest assumption in the stack that changed; the earlier it is, the bigger the move.

    Watch out Beware only making good choices — that is how you end up defending a bad local maximum you reached one reasonable step at a time.

In the wild

Shopify's remote-only pivot

Shopify was a determinedly in-person company that even open-sourced its floor plans. When COVID shelter-in-place flipped the basic Boolean 'are people allowed to leave their house?' — an assumption sitting near the bottom of the decision tree — Lütke reran the whole location-strategy function. Combined with already being spread across 4-5 cities and needing to hire everywhere to help small merchants survive, the rerun landed on 'remote only forever.'

Shopify committed to being a permanently remote 'digital by default' company: 'don't Port the office online, let's Port the internet into a company.'

Shopify itself

In 2004-2005 e-commerce software was built for existing retailers porting Byzantine business logic online. Lütke instead derived software for people starting brand-new online businesses on their lunch breaks — optimizing for ease of starting, not feature-completeness.

The from-scratch design later turned out to be better preparation for enterprise cases than enterprise-first software that was overfit to the sales/RFP process.

Common mistakes

Copying the market's 'best practice'

Making a good version of what everyone does is an abdication of product leadership; you inherit their obsolete compromises without questioning them.

Locally optimizing after an assumption changes

When a foundational input flips, tweaking the current plan is wrong — you must rerun the whole tree, because the optimal answer may be far from where you are.

Is it for you?

Best for

Founders and product leaders deciding whether to build a differentiated product versus a me-too version, especially when a market or technology shift has just changed the underlying constraints.

Not ideal for

Low-stakes, well-understood execution where the status quo already encodes the right answer and re-deriving everything wastes time.

From the transcript

you have to say how would we solve this problem given every fun like building block that we have available right now

30:00

but what isn't okay is skipping the exercise and doing the same thing everyone else does

31:00

rederive literally every decision that is valuable every foundational assumption every foundational

37:30

most of the time you end up in a bad part of a tree in a bad in in a local Maxima of a path…

42:30

From the episode

Tobi Lütke’s leadership playbook: Playing infinite games, operating from first principles, and maximizing human potential (founder and CEO of Shopify)