The concepts behind Data-Oriented programming 
Writing effective information systems. Abstraction vs. Concretion. Functional programming vs. Object-Oriented programming vs. Data-Oriented programming. Dynamic typing vs. Static typing. Identity vs. State. The value of immutability.
Tags: programming, clojure, functional, objectorientedprogramming