There was an excellent programming conference last weekend, and the first talk was this one: https://www.youtube.com/watch?v=wo84LFzx5nI

It's one of my favorite categories of thing: a deep dive into the history of how things got to be the way they are. So much of modern culture is ahistorical, and IME our field is particularly bad in this respect. It is worthwhile to learn about how theories and techniques developed over time, and to be conscious of the historical context in which we work.

Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025

YouTube
In this case, the talk is about the history of what we today call OOP, and specifically the now-popular technique of creating compile-time hierarchies of classes that mirror a domain model in order to achieve encapsulation, polymorphism, and code reuse. This is contrasted with another, less well known approach, Entity Component Systems. I was surprised at how far back these ideas go.
@aminom whereas ECS is very datalog. so even older.