July 26, 2026
Cache me outside
Introduction to Data-Oriented Design [pdf]
Programmers are fighting over whether this is genius or just fancy talk for organizing stuff better
TLDR: The presentation argues software runs better when developers organize programs around how information is used, not around tidy little code objects. Commenters agreed speed matters, but the big fight was whether this is a profound design philosophy or just old programming wisdom with flashy branding.
A dusty-but-fiery slide deck on Data-Oriented Design just kicked off a very familiar internet brawl: is this a breakthrough way to make software faster, or is it basically old advice with a shinier name? The presentation’s pitch is simple enough for civilians: stop obsessing over neat little software “objects” and start thinking about how information moves around, because fetching data can be wildly slower than the actual math. In plain English, your computer may be spending more time waiting than working.
And oh, the comments immediately split into camps. One side was the “this is just array programming in a trench coat” faction, with inigyou bluntly asking if Data-Oriented Design means anything more in practice. PessimalDecimal piled on, basically calling it a rebrand of cache-aware coding. That’s the real drama here: not whether speed matters, but whether this is a revolution or a very successful marketing campaign for common sense.
Meanwhile, defenders jumped in like they were protecting a cult classic. dustbunny argued the whole point is to put the data first and build the code around the job, not the other way around. One commenter even brought bonus chaos by noting Mike Acton now has an LLM skill for Data Oriented Programming, which feels like the most 2020s plot twist imaginable. The vibe? Half the room is nodding thoughtfully, half is squinting and saying, “wait, didn’t we already know this?”
Key Points
- •The presentation defines Data-Oriented Design as focusing on how data is read and written.
- •It argues that memory latency and cache hierarchy are central to software performance.
- •The article says effective multithreading requires understanding how data is accessed, and that locks protect data rather than code.
- •It states that unclear data organization makes offloading work to SPU, GPU, or APU hardware difficult.
- •An object-oriented Bot example is used to show cache misses, unused cached data, and repeated cycle costs that make optimization difficult.