Writing a Book For O'Reilly
So, big exciting news for me - I'm writing a book! Not a novel, I'm not that talented. It's a tech book on how to write Functional style C#. If it were a novel though, you can be sure that the Butler would turn out to have done it at the end! I was lucky enough to get accepted to speak at NDC Porto this year, and while I was there, took the opportunity to announce the book's (hopefully) upcoming release. I've had a few people since then, asking me questions about how I got the book deal, and what it's like working with O'Reilly. The book itself is far from finished, but I thought I'd write an ocasional blog article about how this all started and what the process is like.
How Did I Get the Book Deal?
I've been speaking publically for a while now, mostly on the subject of .NET and Functional Programming, with a few other random interests thrown in. I started at the Developer! Developer! Developer! (DDD) conferences held around the UK, branched into local user group meetups, then from there I've been fortunate enough to get accepted for a few international conferences too. My point is my name had been out there. You'll find quite a few videos of me on YouTube (apologies for the dodgy accent, there's nothing I can do about it!) and my name has turned up on the agenda for quite a few events. I've got this website as well, for keeping track of the stuff I do.
It was off the back of all of this that O'Reilly approached me via my website email address. They said they'd been wanting a book out on Functional C#, and they thought I might consider submitting one. I'd been thinking of submitting a book around to one of the other publishers, and I'd actually previously ruled out O'Reilly, assuming they'd be after smarter, more famous people than me!
The proposal took the form of a short word document, containing details of what the book would be about, who it would be aimed at, why I'm OK to write it, and a detailed chapter break-down. The final part was a few notes on how long the book is likely to take me to finish.
The plan at the start was a prologue and 12 chapters, each taking around a month or so to write, meaning I'd be done by the end of 2022. After a few meetings over the internet with the nice people at O'Reilly, I was eventually told that my proposal was accepted.
Was I excited?
No. Not because I wasn't grateful, or that I didn't think it would be an amazing opportunity - far from it. I have a horrible tendency not to let myself get excited about things when there's a lot to be done. I love going on holiday, but I don't usually let myself enjoy them until the travel is over and we're relaxing post-journey in our lodgings. Same with the book, there are hundreds of pages to be written, reviews, quality gates, any number of things that could go wrong for reasons - some in my control, some out.
When the book is finally available physically I think I'll finally allow myself a little excitement.
How is it written?
O'Reilly have a Git-based source control system with a build system attached that converts AsciiDoc format files into PDFs or EPUB docs. AsciiDoc is a text-based format, a little like Mark-down, with all sorts of extra styling mark-up for rendering source code, etc. It's pretty easy to use, and there's something kind of awesome about being able to build a PDF from it, and have my words with all of the O'Reilly styling I'm used to.
I tend to do the work very late at night. I've got 2 kids, and looking after them takes up an awful lot of my evening, plus I really need a bit of quiet, distraction-free time to work properly. It does mean that falling asleep at my keyboard is an occupational hazard now, mind!. By and large though, I'm finding a chapter a month fairly do-able, aside from a weirdly busy April, where I seemed to spend most of it travelling.
It helps that I've been giving talks on Functional Programming in C# for long enough that I've got a pretty decent grip on the subject matter already, so the amount of research required is fairly minimal. The harder part I find is coming up with the right wording for an explanation, or trying to decide on an amusing example function to show code for.
Me being me, I've also put plenty of terrible jokes in. To my surprise, with one exception, none of them have been removed by the editors.
What are O'Reilly like to work with?
Really nice, actually - and I'm not just saying that. Jill, my editor, meets me once a fortnight to check in on how I'm doing, and provide editorial feedback. She's lovely, and our meetings are pretty informal. There's no real sense of an intense deadline, although that would probably change if I stopped providing regular updates.
I've heard tell some publishers can be a bit over-bearing with regards deadlines and expected progress, but so far at least, O'Reilly don't appear to be one of them.
The process for the monthly release has gone something like this:
- I work on Chapter N+2
- The editors at O'Reilly look at chapter N+1
- Chapter N is released to the Learning site
The biggest issue I have in editing is that the official language of the book is American English, and I'm British, so I'm having to constantly correct my spellings. Changing 's' for 'z', removing silent 'u's, that sort of thing. They did let me get away with a reference to the 90s British Fantasy gameshow/RPG 'Knightmare' though. I'm chuffed to have managed that.
What Animal Will I Get?
I have no idea, and neither does anyone else. The editing team have no say in which animal goes with which book. Aparently there's a team somewhere in O'Reilly whose job is to make the Animal selection. It'll be determined close to release date - some time next year.
I don't get any say, but if I could choose I'd go with either a Eurasian Wren or a Eurasian Robin. I'm a keen birdwatcher, and those two are among my paricular favourites. If nothing else, the Robin would be nice, since it's the national bird of my home country - the UK.
Will you make any money off this?
I have no idea, in all honesty. Probably not. I get 10% of the royalties on paper copies and something like 25% on e-copies. I couldn't tell you what that'll equate to, but really and truely I'm not in this for the money. If I get a 50p piece sellotaped to a bit of cardboard in the post from O'reilly once a month I probably still won't feel too hard done by. A few months of that and I can even treat myself to a beer!
It has been suggested I could self-publish and keep 90% of the profit for myself. That might well be true, but the O'Reilly brand has a lot of pull in the market, and they have international contacts that I couldn't hope to make use of, so I can't help but think that 10% skimmed off the surface of O'Reilly's profits are probably still more than 90% of whatever I could hope to achieve as an almost completely unknown author. Maybe for the next book, who knows... I've not honestly planned that far ahead.
Keep my head down and write as much as I can the rest of this year. I've reached chapter 4 in draft, and I've got another 8 chapters still to do. that's really quite a lot of work. The pre-release version is available on the O'Reilly learning platform now, and they're hoping to update it with another chapter every month, going forward.
Tech review is ongoing right now, so I'm hoping for my first professional feedback in the next week or two, most likely followed by a late night of frantic alterations. I'm not sure they ever have enough reviewers, so do get in touch if you're interested in reading the early version of this book & helping me with feedback. You don't have to already be an expert, I'd love to hear what anyone from any level of skill has to say about what I'm writing.
I'll probably write a follow-up article once there have been further developments. Maybe towards the end of the year. I'll see how it goes...
I'm half tempted to spend a year learning painting when this is all over. I'm aware I've got a slightly ironic surname, but it is actually something I fancy learning to do. Would make a nice contrast with a solid year of tech stuff.