The Definition of Done

See These Bones

Status: “Done” (136,344 words)


After somewhere between seven and nine months of writing, I finished the first draft of See These Bones last night. I then imported the manuscript into Calibre, converted it to mobi format, dropped it on my Kindle, posted a quick Facebook status update to crow about being done, and marched off to bed to sleep the sleep of the just and mighty.

A full night of sleep later, I’m once again remembering that the first draft is just one of many steps in writing a book. I’m not done. I’m not sure I can even see done from where I’m standing.


The Definition of Done - code snippet


Software development & you…

When developing software1 under the agile methodology, one of the conversation topics that just won’t die is the definition of ‘done’. Is software done when the coding is complete? When there are unit tests written to provide 95%+ code coverage? When it’s passed black box testing by QA? When load and performance tests are also complete? Should there be some sort of customer acceptance testing before a given feature or task can be considered done?2

From the outside, it seems a little silly to have a bunch of highly-paid professionals sitting around in a room3 trying to define exactly what done means. Shouldn’t they instead be writing algorithms to fix global traffic problems or developing AI and advanced robotics that will one day change our kids’ diapers for us?4 But the truth is, all collaborative processes require some level of accountability, and the more accelerated a process is, the more important it is for people to know exactly what sort of output they should be expecting from it.


Wait… why am I reading about software development on a writing blog?

Those of you who haven’t already fallen asleep are probably wondering what the hell any of this has to do with writing. After all, even with feedback from readers and/or writing groups, writing itself is a fairly independent, individualized process. We don’t have QA waiting5 to tear apart our code. We don’t have business system analysts double-checking to make sure what we’ve created actually fits the requirements, or sales people who have already upsold customers on an idealized version of whatever it was we were supposed to be creating.

Except…6 we kind of do. At its most grossly commercial, writing a book is about selling a product. Maybe you don’t have QA (an editor), or a BSA (agent) or sales teams (publisher/marketing), but you do still have customers, and the definition of done still matters.

Here’s an example: when I wrote my first book, I was so happy to have accomplished something that I turned around and immediately wrote the second. Then, without taking much of a breath, I started on the third. At the same time, I started sending out agent queries for the first book… because who doesn’t want to profit off their work?

The problem is, that first book wasn’t done. Oh, it was written, sure… but I spent the next two+ years revising it, drastically changing the beginning, cleaning up the language, and fixing a lot of rookie mistakes I hadn’t recognized at the time.7 Writing a first draft is all well and good. Making sure there aren’t any typos or bizarre grammatical constructions is a necessary piece.8 But is that done? Probably not.

As I’ve mentioned many times,9 I’ll be hopefully self-publishing that first book this year. Starting next month–almost four years after I “finished” the book–I’m going to make yet another editing pass on it. Part of that is because I need to hunt for anachronisms–the book was written in 2013, and both the world and San Diego have changed just a bit in the ensuing four years10–but the other part of it is that I’ve (hopefully) grown as an author since then, and I think I can and should polish up the book so it better reflects my current skill level.11

One of my great regrets with the whole traditional publishing push I made is that I started it way too early.12 I saw significantly more success13 with later drafts of the book, but by that point, I’d already submitted queries to most of the agents I was actually interested in.


Wasn’t this blog post supposed to be about the new book, not the old one?

Which brings me back to See These Bones, the book I just ‘finished.’ It’s obviously not done yet; this is just a first draft. My wife14 is going to do a read-through this weekend; she read the whole thing in pieces as I wrote it, but there are a lot of issues that only become apparent when reading from start to finish.15 Once I’ve fixed the issues she encounters, I’ll send the book off to beta readers. Some of those readers have likewise been reading the book as I wrote it (albeit in hundred page chunks) while others will be reading the manuscript for the very first time. I think that mix is important to have. Feedback during the writing process is invaluable, but by the time the first draft is complete, those people can sometimes be so invested in/familiar with the material that they might miss glaring issues that someone coming to the book fresh will notice immediately.

Once the beta readers have finished, I’ll fix any typos or mistakes they happened to find, and look for consistent themes in their feedback. If one of ten people thinks a particular character is kind of shrill, that may be okay. If eight of those ten people want to murder the character with a butter knife… something probably needs to change. I don’t always listen to feedback–at the end of the day, it is my book, so there are times when I just stick with something I feel strongly about16–but I find that even the feedback I choose not to heed ends up informing the changes I do make.

Once those changes are complete, will I be done? Well, not really. Because sometimes fixing one thing breaks ten other things.17 Changing that one character in that one part that everyone hated is fine… except you had a section a hundred pages later that referenced back to it, and your edit didn’t take that latter section into account at all. Every reasonably sized change demands another total readthrough.18 Edit and re-read, then edit and re-read, then edit and drink whiskey until you pass out.

So how long should that process continue? Until you’re happy with the book? Until your readers are? That kind of depends on your definition of done. But don’t be surprised if, when you finally decide that your book is complete and perfect in all ways and send it off to a handful of literary agents so that one or more of them can anoint it as the next great novel, half of those agents ignore it entirely, and the other half send back comments and a request that you revise and resubmit it at a later date.

You see, everyone has their own definition of done.





  1. The code snippet above is just for fun. Also, it’s secretly killing me that, for the sake of a joke, I set the return values to strings, when they totally should have been booleans.
  2. In my experience, the definition of done depends almost entirely on who is talking (and what their role is in the development pipeline)… which is why this is a conversation that never ends.
  3. No doubt, a room filled with fancy tech and toys to keep them from ever wanting to go home.
  4. If you’re nodding your head now, you may have a grossly distorted view of what most software developers do!
  5. With sharpened knives and hungry, almost feral, expressions…
  6. And here’s the logical leap I’m asking you all to make.
  7. While completely missing other rookie mistakes that I won’t recognize as such for another few years… many of which will bother me tremendously during the twilight years of my life.
  8. Despite what you might think after reading many self-published books
  9. This is what passes for marketing at this point.
  10. This is why my new series is set in a post-apocalyptic, alternate reality where the world was broken in the 1980s; I don’t need to care what happens in 2018!
  11. On a scale of 1 to 10, where 1 is ‘What tense am I using again’ and 10 is ‘Read my words and weep, puny mortal’ I feel confident I am now at least a 3. Maybe 3.5
  12. And then stuck with it way too long.
  13. Just not… you know… actual success
  14. Universally hailed as an angel with the patience of a thousand saints.
  15. Things like consistency in tone and characterization.
  16. To writers, this is considered ‘staying true to our convictions.’ To everyone else, it’s considered ‘being stubborn, pompous, assholes.’
  17. This is another software development truism that is equally suited for books.
  18. This is the stage of the process where beta readers start ‘having other plans’… and who can blame them?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: