Every problem is a software problem
March 7, 2026Every problem is a software problem.
A little bit of hardware makes up for a lot of software.
Software and hardware are used broadly here.
Software being the realm of understanding and concepts. Hardware being the realm of irreversible reality and embodiment.
Every problem being a software problem means every problem can be solved with a better and stronger understanding of the problem and the underlying system.
Though building the right understanding can be really hard because the solution space with respect to software is extremely big.
Right contact with reality can prune the solution space to be much more manageable, and help you arrive at the right software solution effectively.
Every problem is a software problem is the philosophical foundation of Theoric. We believe everything which matters can be modeled, explicitly using types or implicitly using AI models, LLMs, etc., and can be solved as a software problem.
Implication of this is that even hardware problems are software problems. You can model the behavior of the hardware in software, to an extent that you almost never need to touch the actual hardware. In terms of GPU programming, we can create GPU kernels and host code which are fast and correct, without even having access to the hardware.
Every problem being a software problem applies to pretty much everything, including sales problems, people problems, infra problems, security problems, everything.
A sales problem being a software problem means you know so much about the prospect and the market that the sale is almost guaranteed before the actual sales conversation even happens.
People problems being a software problem means you understand the motivations, incentives and emotions of people really well.
An infra problem means you understand the system really well, therefore can anticipate and mitigate problems before they arrive.
This does not mean that you never lose a sale, or people, customers or employees, never get angry with you, or you never encounter a production bug. But done right, the amount of interface you need with the actual irreversible reality drastically reduces. And for the interface you have, each interaction, good or bad, strengthens the understanding, and the overall system becomes much better.
Aviation is the top example of an industry treating every problem as a software problem. They are so good at it that an activity which would look like magic to someone from 1902 is an everyday mundane activity for people in 2026.
Aviation treats every problem like a software problem. Every situation is known, modeled, trained for and prepared for. What happens when a bird hits the engine, what happens when the plane is low on fuel, what happens when you have to land on water. Takeoff, landing, in-flight, pre-flight, fueling, manufacturing, maintenance, testing, for everything there are SOPs, for everything the failure cases are known and modeled.
So when out of 35 million flights a year something goes wrong, it is a big deal, but the wrong happening is not left as a one off case. It is investigated and understood, and the process or parts improved, and overall the understanding and strength of the system improves.
The operating principle of the company is:
Model everything that matters well. Be deliberate about how you interface with irreversible reality. And with every interaction, learn and build an even stronger model of the reality you operate within.
Do this well, do it continuously, and the impossible becomes possible, leaving you enough surplus to go after the next impossible.