Solve Any Problem in Any Field
Von Neumann built mental models that worked across every domain he touched.
A chance encounter led to modern computers
In August 1944, two mathematicians wait for the same train in Aberdeen, Maryland.
Herman Goldstein was working at Aberdeen proving grounds supervising computational efforts for weapon trajectories. John von Neumann was working on the Manhattan Project with Robert Oppenheimer.
Goldstine recognized von Neumann from university lectures and approached him. They talked for a bit until von Neumann asked him about Goldstine’s work.
Goldstine described his work on an electronic computer called ENIAC, capable of about 333 multiplications per second, and von Neumann was interested. He asks a few questions, and within minutes von Neumann grasps something Goldstine's team has missed.
World War II is the first war where computers led the charge in logistics and determining attacks. But at the time, they had to either do hand calculations or run calculations on the Mark I computer at Harvard. The methods were slow and error prone.
But von Neumann sees past the immediate problem of slow computations. The same mathematical logic he uses for quantum mechanics and game theory could revolutionize how machines process information entirely.
The machine has universal potential far beyond artillery calculations.
Von Neumann connected the ENIAC’s capabilities to his broader work on computational machines and began plans to help expand and formalize its design concepts.
Six months later, his systematic methodology produces the "First Draft of a Report on the EDVAC" created the architectural blueprint that powers every computer you've ever used.
World War I was the first modern war.
World War II was the first computer-led war.
Computers helped the Allies win the war, and computers were popular for solving larger scientific and military problems.
The war was won through computational advantage. The peace would be won by whoever could make the better computer.
More computers were being developed such as ENIAC, but they all had the same problem: you had to manually remove switches and rearranging patch cables to route data and control signals between various units.
Programming was more on configuring hardware rather than writing software we know today. Each time you wanted to run a different program, you need to reconfigure the hardware to run the program.
After World War II, governments saw the future in computing and put money into it.
Instead of working on improving calculation speed like others, Von Neumann focused on a different problem: programming.
He worked with J. Presper Eckert and John Mauchly on drafting a paper called "First Draft of a Report on the EDVAC" which laid out the architecture for modern computing.
Foundation for Modern Computers: Memory
Von Neumann develops an architecture of storing data & instructions in memory, so we don't need to physically remove the wires to run a different program. This is a CPU blueprint.
The memory stores both the instructions and the calculations.
The Central Processing Unit (CPU) has a control unit, Arithmetic Logic unit, and registers.
Arithmetic Logic Unit (ALU): Performs arithmetic (like addition) and logical operations (and, or, etc).
Control Unit (CU): Directs the execution of instructions by coordinating tasks between the memory, ALU, and input/output devices.
Registers: Small, fast memory locations in the CPU for temporary storage
Memory Address Register (MAR): Holds the memory location of data that needs to be accessed
Memory Data Register (MDR): Holds data that is being transferred to or from memory
Accumulator (AC): Where intermediate arithmetic and logic results are stored
Program Counter (PC): Contains the address of the next instruction to be executed
Current Instruction Register (CIR): Contains the current instruction during processing
Before Von Neumann’s idea, if I needed to add 1,000 pairs of numbers, I’d have to unplug wires to create the addition program for each pair of numbers.
Using this Von Neumann architecture above, we can create a program that accesses data stored in memory to run the calculations without needing to change any hardware.
Faster setup time. More calculations. And we can expand into automation and sequencing.
But my favorite part is this, Von Neumann was a mathematician. He wasn’t versed in computers like Herman Goldstein, Grace Hopper, and others.
Yet, he was able to redefine computing entirely.
How a Mathematician Rewrote Computing
Mental models help you understand new information.
What helped him develop the idea for memory for computers was reading Alan Turing’s concept of the universal machine. Turing’s universal machine could process any computable function if provided with a suitable set of instructions encoded as data.
Von Neumann took that idea and applied it to hardware.
Storing data and instructions as binary words, enabling the machine to read, execute, and modify programs stored in the same memory. He also expanded the idea into self-replicating universal constructors where machines capable of building copies of themselves using encoded instructions similar to our use of AI today.
Von Neumann relied on his mathematics background to build a mental model for computing but also quantum mechanics, neurology, and economics where he established ideas for game theory and cognitive computing.
5 Steps for building Mental Models from von Neumann
While von Neumann never documented his mental models and how he developed them, we can reproduce his patterns. The problems we encounter are different flavors of a generic one. Mental models help bridge that gap.
Here are 5 steps to build mental models like von Neuman’s:
Step 1) What are the basics?
Von Neumann saw ENIAC and remembered Turing’s universal machine, an abstract machine capable of symbol manipulation and universal computation.
He saw that computers, at their core, were logic processors, not fancy calculators.
Step 2) What’s holding you back?
Everyone knew ENIAC and other computers needed manual rewiring for different programs.
If computers were to move forward, we’d need to solve the manual rewiring problem before anything else.
Step 3) What does it remind you of?
Von Neumann saw patterns across domains easily.
When he saw ENIAC and remember Turing’s machine, he realized instructions and numbers are both data. They’re information. Why should they be treated differently? Why can’t we store instructions the same we store numbers.
“Almost every problem you encounter is just a more specific instance of a generic problem, and the sooner you realize that, the faster you’ll be able to pull yourself out and move forward.”
—Ray Dalio, Principles: Life & Business
Step 4) What’s the procedure? (Algorithmic Thinking)
Algorithmic thinking means sequences and operations.
He loved breaking ideas and processes into steps, pioneering Merge-Sort Algorithm & the Monte Carlo method
He worked with others to develop the CPU by breaking down exactly instructions & data work together so the computer can store data.
Step 5) What does this build? (Constructive Thinking)
Constructive thinking means ideas, concepts, algorithms that build upon each other.
Von Neuman was fascinated by systems built on top of systems which led to his idea of Von Neumann machines, self-replicating probes.
He didn’t stop at the next step but saw a system on top of systems. Von Neumann designed architectures that build on themselves, such as his universal constructor automaton, which serves as a metaphoric and engineering blueprint for self-reproducing machines.
His mental models helped him to contribute to early artificial intelligence, computational biology, and complex system simulations.
Every breakthrough in your industry will come from someone who sees patterns across domains that others miss. Von Neumann's methodology gives you the systematic approach to build those insights before your competition does.
Which cross-domain breakthrough will define your next chapter?