On writing a book

Well, I’ve performed my final author’s review, and Professional Cocoa Application Security is all with the printers. This post is about my experiences writing the book, not the book material itself.

My original motivation for writing PCAS was that it was a topic someone needed to talk about, and nobody had hitherto done the talking. I was actually initially approached by Wiley to see if I’d write anything at all – their commissioning editor had seen my Objective-C FAQ and this blog, and liked my style. I said that I didn’t want to write a book, I wanted to write this book. It was the best way I could pay back the community that has helped me so much in the years I’ve been a Mac developer.

It took about 6 months to write the draft – my original estimate was much shorter but once we realised I couldn’t meet that we revised it, after which I stayed on track with the updated schedule. That’s six months of nearly full time work. Some other books probably don’t take so long, but in this case I had set myself a very ambitious scope and needed to research quite a lot of the topics before I could write on them. If you’ve already got a series of blog posts, training material or something that you just want to turn into a book, I can imagine the drafting process being much quicker.

I’ve found that book authorship is not the best vehicle for self-study. You get a biased view of the material, looking for things that would be interesting to readers rather than things you will need to use yourself. Because the goal of the book is to provide utility to the readers, you end up with a gotcha-oriented approach to research, looking for the subtle benefits or issues that are not obvious on a casual inspection. That said, it was still a good motivation to learn about the technologies I wrote about, so I’m glad I did it. Parts of the writing process were a lot of fun: I got to find out about some cool frameworks and APIs, absorb loads of information and re-emit it in a form that is, I hope, engaging and interesting. I’ve looked at my bookshelves and have about 6ft of books that I used as source material – and that doesn’t include websites, ebooks and journal papers. On the other hand, I’m not going to deny that I had occasional days that just felt like a long slog to get the day’s section written. I didn’t mind solving hard problems, but there are some subjects that just seem impossible to say anything interesting about. It’s when writing those sections that you find yourself staring at a half-written sentence for an hour, wondering just what it was you were thinking when you wrote the ToC.

You’re not going to get rich off the advance :). I was in a good position where I could live off practically no income while writing, meaning that devoting a few months to producing the drafts was not a problem. What I have become rich in is exposure and recognition, even before the book was published. Because both the proposal and the book content must be peer-reviewed by a technical reviewer, “I am writing a book” says “there are people out there who trust that I know my subject”. Of course, “I have written a book and you can read it” carries more weight, so I expect this exposure to increase after publication.

I’ve worked on reviewing proposals too, and the things you really need to make sure if you are trying to punt a proposal to publishers are:

  • You need to tell the publishers that the market for your book exists, who is in that market and how big it is. They’re not going to go and look for the buyers on your behalf (but they will get a reviewer to make sure you’re not talking bullshit).
  • Having identified your reader, the goals and content of the book must be appropriate to the reader. Don’t put an introduction to Xcode in your Advanced iPad Apps book, just to make up an example.

This theme carries on into the review process for the actual content. The technical reviewer (a role I’ve also taken before) is not just there to check that the code compiles. Responsibilities include verifying the accuracy of the content and appropriateness for the target reader, and indeed review comments I’ve made on book drafts have been split roughly evenly between “this isn’t quite right” and “your reader won’t understand this” (though I’m more verbose in the actual review).

So, in short, you will not make money writing a book. You will gain kudos and satisfaction. If you’ve got something that you think the world desperately needs to know, and you know that you can explain it in a way the world will want to pay attention to, then by all means write! If you want to make a few thousand dollars, or want an easy project between apps, then I’d suggest finding something else. Writing’s fun, and it’s worthwhile, but it’s certainly not an easy life.

This entry was posted in book, cocoa, security. Bookmark the permalink.

One Response to On writing a book

  1. Unknown says:

    This follows pretty much my own experience. I'm at least fortunate that, as an academic, book writing is viewed as good thing. But over the course of the six months it took to write my own book I was more or less holding down two jobs. I'm not entirely sure how my editor convinced me to write another . Possibly he put something in my coffee, or possibly it had something to do with the fact that writing the book was a lot of fun. I can't really recall. But money? No, I certainly didn't do it for the money…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.
https://www.sicpers.info/2010/04/on-writing-a-book/
www.sicpers.info
CC-MAIN-2024-38
41517
application/http; msgtype=response
sha1:IKMXCXWAAK6IKUDC6T4STPTSHTQO2WIE
<urn:uuid:f5aa360f-64fe-4a06-8b71-10639c60f381>
2024-09-17T12:44:33Z
107.180.244.198
text/html
sha1:FQYSX3KIKZWIXLOBQRPXNQVGGG7M5GZP
<urn:uuid:c51703d4-68a5-4db0-b333-e97b90a60dec>
https://www.sicpers.info/2010/04/on-writing-a-book/
response
<urn:uuid:9ab0ab4d-9e18-462a-a20e-56c5b30579d9>
isPartOf: CC-MAIN-2024-38
publisher: Common Crawl
description: Wide crawl of the web for September 2024
operator: Common Crawl Admin (info@commoncrawl.org)
hostname: ip-10-67-67-55
software: Apache Nutch 1.20 (modified, https://github.com/commoncrawl/nutch/)
robots: checked via crawler-commons 1.5-SNAPSHOT (https://github.com/crawler-commons/crawler-commons)
format: WARC File Format 1.1
conformsTo: https://iipc.github.io/warc-specifications/specifications/warc-format/warc-1.1/