Can first principles help avoid 'technical over-design'?

Silja B.A.
Silja B.A.
Systems engineer with 10 years experience in first principles.

Yes, absolutely, and the effect is very significant.

Let me explain with a simple, straightforward example.

Suppose you want to solve the problem of "thirst."

If you don't use first principles thinking, you might think: "How does everyone quench their thirst? Oh, by buying bottled water, drinks, coffee." So you start researching various beverage recipes, flavors, and packaging, and even spend a fortune building a beverage factory. This is "analogical thinking"—seeing what others do and doing the same, even trying to make it fancier. The result might be that you were just a little thirsty, but you ended up creating a whole lot of complex things.

But if you use first principles thinking, you would break down the problem to its most fundamental elements: "What is the essence of 'thirst'?" It's the body lacking water. So the core of solving this problem is "replenishing water." The basic element that constitutes "water" is H₂O.

Once you realize this, you'll find that the solution to the problem doesn't necessarily have to be building a factory to produce beverages; you just need to find any clean liquid containing H₂O. A glass of plain water, a tap, or even an apple (which also contains water) can, to varying degrees, solve this core problem.

Now let's apply this thinking to "technical design":

The essence of "technical over-design" is, like the example above, forgetting that you were initially just "thirsty," but plunging into the fantasy of "how to build an awesome beverage empire." For instance, you just want to create a simple internal company forum, but right from the start, you use "microservices," "distributed databases," "load balancing"—a whole suite of high-end technologies designed to support tens of millions of concurrent users. Your justification might be: "Look, isn't that how Facebook and Taobao do it?"

This is typical "analogical thinking," not first principles thinking.

If you think using first principles, you would ask:

  1. What core problem am I actually trying to solve? -> Enable a few dozen colleagues in the company to post and reply.
  2. What are the most basic requirements for this problem? -> A place to publish content, a place to display content, and a user login system.
  3. What is the minimum cost to achieve these basic requirements? -> Install an open-source forum software (like Discuz!, Flarum), or use a cloud service; it might be done in half a day.

You see, by peeling back the layers of the problem and returning to the core needs, you naturally eliminate those complex, expensive, but completely unnecessary "advanced features" and "overkill solutions." You solve the problem in the most direct and efficient way.

Therefore, first principles thinking is like a powerful lens; it helps you identify what is the core of the problem, and what are "false needs" imposed by others or imagined by yourself. It forces you to start thinking from "I need a roof to shelter from wind and rain," instead of jumping directly to "I want to build a Palace of Versailles." This way, over-design is naturally avoided.