How hard can it be to write a book of small, useful programming recipes? Too hard as it turns out.
About a year ago I was prompted by APress publishing to submit a proposal for a book to be called Go Recipes. Knowing nothing about book publishing this surprised me: I’d always assumed that authors pitched ideas to publishers or publishers pitched ideas to authors. It never occurred to me that a publisher would ask an author to devise an idea to pitch out of the blue. I surmised that they must have spotted my Go Cookbook repository on Github. After a couple of weeks of hesitation I put together the table of contents and blurb for the kind of book I would want to use, and one I hoped I could write. The publisher liked what I put together and asked me to write it. After another couple of weeks of hesitation, knowing it would be a massive time commitment. I should have hesitated a bit longer because I completely underestimated that investment of time.
I had plenty of ideas and within a few weeks I had delivered the first chapter and then a few weeks later I managed a second. Then my enthusiasm and energy began to wane: I was busy with other things in my life; I fretted about writing compelling and relevant recipes; I was writing about things I wasn’t that interested in; I worried about repeating myself over and over when explaining things in Go. Most of all I was anxious that some of the things I was writing might not be complete enough or not perceived as correct by other Go programmers.
If you were waiting for that book then I’m sorry to disappoint you: it’s not going to be completed. I decided that it was going to take too long and APress can’t sit around forever waiting for this awesome book to emerge. I don’t know if they’ll take that idea up with someone else. Hopefully they will because it would be a great resource for new Go programmers.
All is not doom and gloom though: I have taken the best and most complete recipes I came up with and added them to the Go Cookbook repository. These are now in the public domain, free for anyone to use for any purpose. Go wild.