Kill Your Darlings
A programming genius I know is helping me crunch data that I’ve been collecting for this book I’m writing about the public radio pledge drive. The plan is that tranche A, after it’s washed and tumble dried, will be a template for tranche B; using one as a control for the other to find patterns that aren’t obvious.
I know a little about spreadsheets, and that’s how I gave my programmer friend the data I’d gathered. But they weren’t exactly in love with it. “You need to reformat this”, they said. “Otherwise, I need to write a whole language subset (whatever that means) before you can see this data the way you want to see it.” In other words, they didn’t like my spreadsheet.
I like to think I’m a smart person. I like to think I’ve been around enough to know a little about a lot, but that little bit I know is really good. Turns out, spreadsheets are high school level data collection to graduate level people writing programming in languages like Perl. So, here I am, reformatting my spreadsheet in a way that my programming friend’s program can better search it, parce it, slice and dice it.
And you know, their way is better.
There isn’t as much ambiguity. There’s much more consistency. And I’m finding mistakes, not in the original data, but how I notated it. It’s like when writers are taught to read their copy backwards as a way to catch mistakes because reading it forward makes it too easy to miss them. Rearranging my twenty columns into their three is a brutal exercise in utility. But it’s exactly the kind of brute force utilitarianism that a programming language needs to create elegant results.
“Kill your darlings” is what editors tell writers too in love with what they’re written.
I can tell you, programmers are even worse.