Some Stats on the "first" 4 chapters of Data Oriented Programming in Java

It took me a year to write 4 chapters. It took that long because most of the year was wasted working on a very different book than the one I have today. The original manuscript sucked. So, about 6 months into the writing process, I threw out pretty much everything and started over.

The problems with the original are too numerous to list, but the largest was just how much I got in my own way. I started with this deep desire to be a "writer." To be respected for the craft of writing. So, most chapters started from a bad place. Rather than asking "what would be valuable?" I started with "what would be clever?" Then I imagined people enjoying that cleverness. "Chris is so clever," they would say as they read. "It's as if George Saunders was a Java developer."

In pursuit of this, I would cook up impossibly complicated narratives and then waste multiple weeks trying to bring them to life. Why say something as simple as "values don't change" when you could instead spend pages berating the reader about algebraic principles, equality relations, and why – ahem – "therefore, it must be the case that values don't change."

As usual, failure is pretty good feedback. Those early chapters sucked. I didn't enjoy writing them. Reading them now causes me physical pain. Throwing them away made everything better.

The book finally started coming together when I began writing as my regular boring myself. I stopped trying to be "An Author." I stopped trying to write a Big Important Book. The vibe of the whole thing is "here's some stuff I've found to work pretty well. Maybe it'll work for you, too." That approach has led to the book I have today, and something I'm really happy to put out into the world.

Table 1.1: Stats on figures created versus used

ChapterFigures CreatedFigures Used% Not Used
146882%
233778%
313561%
4521276%

Chapter 01

Chapter 02

Chapter 03

Chapter 04