Writing and software development
I’m reading Stephen King’s On Writing and, as I expected, noticing some pretty direct parallels to software development. Here’s one: write the first draft with the door closed and the second draft with the door open. Translation: write the first one for yourself, and once you’ve got the gist of the story, rewrite it so that anyone can read it and feel like they own it.
In software, we call the second and subsequent drafts refactoring. So, to use King’s door metaphor, a software developer should crank the first one out, using code of his choosing. Once that first revision is complete, step back and look at it from the maintenance programmer’s perspective. Consider who the next person to look at this code and write it for them. Of course, we don’t crank out entire programs before we consider refactoring. We keep the cycles small, but the close door/open door metaphor stil works. I like it.
I’ll hopefully post more thoughts about this the further I get into the book.
