Monday, May 13, 2024

Good Ideas in Computer Science

Good Ideas in Computer Science ・ Daniel Hooper

"By 1974, 50 years ago, we had most of what we call modern computing. Today’s fundamentals are the same — a C programmer from 1974 would feel at home on a modern computer except for the alien-like speed. I hope we have new ideas that in 50 years will be universally considered good."

Arrays (1942)

Hashmaps (1953)

Portable Programming Languages2

Processes (1958)

Graphical User Interfaces (1973)

Intentionally excluded:


Garbage Collection

Databases:  Databases are more than just one idea, with many ways to combine those ideas into a “database shape”. Some good ideas in databases: Structured query language, B-trees, ACID transactions.

Other data structures and algorithms: There are too many to list. Few are as universal as arrays and hashmaps, which appear in almost all programs.


Object Oriented Programming: There is a large group of programmers that do not consider Object Oriented Programming good5. I recommend data oriented design as a replacement worldview.

No comments: