1 Data Oriented Programming
This chapter covers
- Introducing Data-Oriented programming
- Data as Data
- How representation affects our programs
Writing large software systems is hard. In many ways, it’s getting harder. Code now changes at an incredible pace. AI has given everyone the ability to generate more output than humans can review. How do we build maintainable systems in this new world? How do we know that the code being generated solves the right problems? What does “right” even mean?
No paradigm focused exclusively on code can get us out of this mess. We already have too much code and its complexity is only growing. The only way forward is to step away from code and focus on what it exists to manage: the data.
Data is simple in all the ways that code is not. No matter the paradigm, code is brittle. It can only be executed. It will only ever do what we’ve thought to make it do. But data is innately flexible. It can be endlessly analyzed, transformed, simulated, generated, and reinterpreted as new use-cases arise.