home • APR 25, 2019

Premature optimization is the root of all evil.
Donald Knuth
We manage four critical fundamental resources when we program computers.
We like to do things as fast as possible. Given that hardware operations take fixed time, the way to increase speed is to come up with algorithms that use the least number of operations.
We have random access memory, internal permanent storage and external permanent storage. We can employ strategies that allow us to optimize computing speed via efficient storage and retrieval.
The labor inside a computer is represented by the processors. Better labor management includes asking less of each processor and employing strategies for optimal processor collaboration.
We manage the knowledge that we store in our computers. We decide what to keep and how to organize it. The algorithms we use are themselves knowledge.
We need to manage the same resources at a much higher level and at greater sophistication in real life.