I watched DHH's keynote from RailsConf 2014 and it re-iterated a few things for me but what stood out was the similarities between writers and programmers.

There's been a lot of talk in the Rails community about architectures, design patterns and testing recently. DHH touched on this in his keynote but one thing I wanted to mention here was the idea of drafts.

When it comes to writing code, your first attempt is never your last. Unless you have all the knowledge and time under the sun to get it right first time, there's always going to be scope to improve that code you just wrote.

I tell my clients when I think that a section of code could be improved by re-writing it. I'll pick the smaller sections of code to re-write as they offer the greater awards for the smallest investment in time. This suits my clients as they usually want features over improved code, but if I can improve the code base in anyway, then I'll aim for those bits of code that can be improved with just a small amount of time.

The same goes for writing. Your first draft is never your final piece. It might just flow from your pen but reading it back it might not sound as good as you first thought. Unfortunately re-writing my blog posts is something that I don't usually do. I'm just so busy at the moment that the most I can do is a first draft, a read through to correct mistakes, a quick couple of improvements and then publish it. It's hardly the process that I should be working towards.

Rather than worrying about the re-writing of these blog posts though, I'm looking at larger bits of writing that I have done. I have a first draft of my grass roots productivity series that I have compiled together for an e-book. I should make some time to go through this and re-write it. It's been a while since I looked at it and perhaps the unfamiliarity of it might reveal the places where I could improve it.

I know now though that regardless of whether it's source code for an application or words for a book, the first draft should never be your final attempt. Maybe there is more in common between writers and programmers than I first thought.