5 min read
On this page

Reasoning from Fundamentals

Most thinking is by analogy. "Company X did it this way, so we should too." "The last team used Postgres, so we'll use Postgres." "Every blog post recommends microservices, so we need microservices." Analogical reasoning is fast and often good enough. But when the problem is genuinely novel — or when the conventional approach is failing — you need a different tool. That tool is first principles thinking.

What First Principles Thinking Is

First principles thinking means breaking a problem down to its most fundamental truths — the things you know to be true independent of convention, opinion, or precedent — and then reasoning upward from those truths to build a solution.

The phrase comes from Aristotle, who defined a first principle as "the first basis from which a thing is known." In physics, first principles are the laws of nature. In engineering, they are the constraints you cannot negotiate away: the speed of light, the CAP theorem, the number of hours in a day, the size of your team.

Reasoning by analogy:
  "Other companies our size use Kubernetes, so we should too."

Reasoning from first principles:
  "We need to deploy 4 services. We have 2 ops engineers.
   Our current deploy is manual and takes 30 minutes.
   What is the simplest system that automates this?"

The first approach starts from what others do. The second starts from what you actually need.

Elon Musk on Battery Costs

The most cited example of first principles thinking comes from Elon Musk's early work on Tesla. At the time, battery packs cost $600 per kilowatt-hour. The conventional wisdom — reasoning by analogy — said batteries are expensive and electric cars would always be expensive.

Musk broke the problem down to first principles:

Question: What are batteries made of?
Answer:   Cobalt, nickel, aluminum, carbon, polymers, a steel can.

Question: What do those materials cost on the commodity market?
Answer:   About $80 per kilowatt-hour.

Conclusion: The cost of the battery is not in the materials.
            It is in the manufacturing process.
            If we fix the process, we can get close to $80/kWh.

The analogy said "batteries are expensive." First principles said "battery materials are cheap — the manufacturing is the problem." That reframe changed the entire trajectory of the company.

Applied to Engineering

First principles thinking is not just for CEOs reinventing industries. It applies to daily engineering work. The pattern is always the same: stop accepting the current state as given, break the problem into its fundamental components, and reason from there.

Example: Slow Deploys

Problem: "Our deploy takes 30 minutes."

Reasoning by analogy:
  "Everyone's CI is slow. Let's upgrade to bigger build machines."

Reasoning from first principles:
  Why does the deploy take 30 minutes?
    Because CI runs all 4,000 tests.
  Why does CI run all 4,000 tests?
    Because we run the full test suite on every commit.
  Do all 4,000 tests need to run on every commit?
    No. Most commits only affect one module.
  What if we only ran the tests for the affected module?
    That would take 3 minutes instead of 30.

The analogy approach throws money at the problem. The first principles approach questions whether the problem needs to exist at all.

Example: Database Scaling

Problem: "Our database can't handle the load. We need to shard."

Reasoning by analogy:
  "Twitter shards their database. We should too."

Reasoning from first principles:
  What exactly is overloaded? CPU? IO? Connections?
    Connections. We have 500 connections from the app servers.
  Why do we have 500 connections?
    Because each app server opens a pool of 50, and we have 10 servers.
  Do we need 50 connections per server?
    No. Most connections are idle. The actual concurrency is 5 per server.
  What if we add a connection pooler like PgBouncer?
    We'd drop from 500 connections to 50. Problem solved.
    No sharding needed.

Sharding is a massive undertaking. A connection pooler is a day's work. First principles found the real constraint and solved it at a fraction of the cost.

Example: Hiring

Problem: "We need to hire 5 more engineers to hit our deadline."

Reasoning by analogy:
  "The other team doubled in size to ship on time."

Reasoning from first principles:
  Why won't we hit the deadline?
    Because we have 4 months of work and 2 months of time.
  Why do we have 4 months of work?
    Because the spec includes features X, Y, and Z.
  Are all three features necessary for the deadline?
    No. Z is a nice-to-have that the PM added because "everyone does it."
  What if we cut Z?
    We have 2.5 months of work and 2 months of time.
    That's a stretch, but adding one engineer covers it.

The analogy approach costs five headcount, six months of ramp-up, and organizational overhead. The first principles approach costs a difficult conversation with the PM.

The Process

First principles thinking follows a repeatable process:

1. State the problem clearly.
2. List everything you "know" about the problem.
3. Challenge each item: is this a fundamental truth or an assumption?
4. Strip away the assumptions.
5. With only the fundamental truths remaining, reason toward a solution.

Step 3 is where most of the value is. Most of what we "know" about a problem is actually convention, habit, or inherited assumptions. The gap between what is truly fundamental and what is merely assumed is where the best solutions hide.

"We know" our service needs Kubernetes.
  Fundamental truth? No. Assumption based on industry convention.

"We know" our users need real-time notifications.
  Fundamental truth? Maybe. Did anyone validate this with users?

"We know" our API needs to be RESTful.
  Fundamental truth? No. Convention. GraphQL or RPC might be better.

"We know" data must be consistent.
  Fundamental truth? Sometimes. But eventual consistency might be fine
  for 90% of our use cases.

The 5 Whys Connection

The 5 Whys technique, originally from Toyota's manufacturing process, is a structured way to apply first principles thinking. You ask "why?" repeatedly until you reach a fundamental cause rather than a surface symptom.

Problem: Users are seeing stale data.
Why?    Because the cache TTL is too long.
Why?    Because we set it to 24 hours when we launched.
Why?    Because we optimized for reducing database load.
Why?    Because the database was overloaded at launch.
Why?    Because we had an N+1 query that hit the DB 100x per page load.

Root cause: The N+1 query was never fixed. The long cache TTL was
            a band-aid. Fix the query, and we can drop the TTL
            to 5 minutes with no DB impact.

Each "why" peels away a layer of assumption until you reach the fundamental cause. The fix at the root is almost always simpler and more effective than the fix at the surface.

When to Use First Principles

First principles thinking is most valuable when:

  • The conventional approach is failing or has never been questioned
  • You are solving a problem that is genuinely novel for your context
  • The stakes are high enough to justify the time investment
  • You suspect that assumptions have ossified into "requirements"
  • You are designing a system from scratch rather than extending one
Good candidate: "How should we architect our data pipeline?"
                (Novel problem, high stakes, many hidden assumptions)

Bad candidate:  "Which JSON library should we use?"
                (Solved problem, low stakes, analogy is fine)

Common Pitfalls

  • Going too deep — reasoning from first principles about everything, including problems that are already well-solved. You do not need to derive sorting algorithms from the axioms of mathematics. Use the standard library.
  • Ignoring useful precedent — first principles does not mean ignoring what others have learned. It means not blindly copying it. Learn from precedent, but validate the assumptions.
  • Analysis paralysis — breaking a problem into fundamentals is not an excuse to spend three weeks on a decision that should take three hours. First principles is a tool, not a lifestyle.
  • Confusing skepticism with first principles — questioning everything is not the same as reasoning from fundamentals. First principles builds up from truths. Mere skepticism tears down without constructing.
  • Solo application — first principles thinking is more powerful in groups. Your assumptions are invisible to you. They are obvious to your colleagues. Do this in design reviews, not just in your head.

Key Takeaways

  • Most thinking is by analogy: copying what others do. First principles means breaking a problem down to fundamental truths and reasoning upward.
  • The process: state the problem, list what you know, challenge each item, strip assumptions, reason from what remains.
  • First principles consistently finds simpler, cheaper solutions because it questions whether the problem is correctly framed.
  • The 5 Whys technique is a structured way to apply first principles to root cause analysis.
  • Use first principles for novel problems, high-stakes decisions, and situations where conventional thinking is failing.
  • First principles is expensive. Reserve it for problems worth the investment.