Peter Coates
1 min readAug 27, 2024

--

Yes, to some degree, what you say is true. The physical implementation of computing is a horror show compared to the clean, sleek, models of computation presented by higher level languages. But I think these quotes take the point too far. Algorithms still run in a physical world, and to an extent that many young computer professionals don't appreciate, they are often tuned to physical realities of hardware. Recursive miracles like QuickSort and the FFT are at one end of a spectrum of concern with hardware in that they are incredibly effective on almost any hardware. But more complex algorithms and designs used in relational databases historically were at the other, because of the radical differences between seek time and streaming rates, cache misses, non-uniform latencies, etc. The specific concerns change over time, e.g., seek and streaming are less of a concern now that silicon disks are cheaper, but big data technologies and NoSQL are entirely designed around hardware and are impossible to understand without extensive lower level knowledge. They are all about network latencies, trade-offs between seeks and streaming on discrete, hardware reliability when hundreds or thousands or machines cooperate, etc. Likewise, while the contents of most algorithm textbooks make sense in any language, that's not the entirety of computer science by any means. Much of CS, even theoretical CS is deeply connected to hardware realities and physics at every level.

--

--

Peter Coates
Peter Coates

Written by Peter Coates

I was an artist until my thirties when I discovered computers and jumped ship for a few decades. Now I'm back to it. You can probably find some on instagram.

Responses (1)