Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have the opportunity to get involved in authoring a programming book on a relatively new and interesting technology.

For those who don't know authoring a programming book is really an investment in your own technical knowledge and reputation. The raw money you are going to make out of it is not likely to ever be particularly significant, unless it is a blockbuster hit book.

So with that said, is it worth authoring new programming books? Or are we better served writing blogposts and creating screencasts or just using SO?

share|improve this question

migrated from stackoverflow.com Sep 19 '11 at 6:29

This question came from our site for professional and enthusiast programmers.

We have quite a few book authors here, so this could be a pretty nice question. –  Ólafur Waage May 16 '09 at 16:14
See also this question; the answers deal with similar issues (some of them from an author's perspective): stackoverflow.com/questions/347821/… –  Jonik May 16 '09 at 16:49
...worse yet, it seem tha Webster's is OK with it, so I retract my advice. But it still grates on my nerves. –  dmckee May 18 '09 at 1:11
Have you given any talks? –  Andrew Grimm Jun 20 '10 at 23:33
When did author become a verb? –  TRiG Jun 18 '12 at 18:11
add comment

6 Answers

up vote 47 down vote accepted

It depends on what you're looking to get out of it:

  • You're right, the money is unlikely to be fantastic - but it is a nice little bonus on top of salary.
  • I'd say there's more of an ego boost from seeing a book in print than from blog posts - but then there's a lot more work too.
  • Writing a book forces you (or at least should force you) to get to know your material really well. You should expect to learn a lot while writing.
  • I expect the credibility you gain in the eyes of future employers is likely to be greater due to authoring a book than a blog/screencast unless the latter becomes really well known.
  • Authoring is likely to lead to opportunities to give presentations at user groups and similar events, which may appeal to you. Of course, many user groups are eager for speakers to volunteer anyway :)
  • Authoring a book involves a lot of polishing: going over the same paragraph again and again, knowing that you're really only got one chance to get it right. It's hard to go back and edit it after it's in print. (Yes, there are corrections for later printings, but you really try not to need them.) That time feels like it's "wasted" in some senses, especially if you're quibbling over a few words - but it can be rewarding when you feel you've finally cracked the explanation of a tricky concept.

From my own experience, I'd say that if you have the chance you should go for it. Just realise it's a big commitment.

share|improve this answer
Nah - I'm a novice really. I've helped out on a couple of books and written one. That's nothing. My wife, on the other hand, has about 30 or 40 published children's books, and another 20 on the cards for the next couple of years :) –  Jon Skeet May 16 '09 at 16:28
-1 For Jon Skeet :) –  TheSoftwareJedi May 16 '09 at 16:28
Or rather, to vote down people who you confuse with people you don't like. It's childish behaviour either way. Why not rise above behaviour you don't like? –  Jon Skeet May 17 '09 at 7:15
@ScottCher: If it's too Orwellian for you, and you haven't managed to persuade enough other people that closing shouldn't be allowed, then do as I've suggested to TSJ: start your own community. If indeed it works better without questions being closed, then your site will become more popular than SO. That's fine. That's a mature way of dealing with things you don't like. Calling people names, downvoting based on personality (and having identified the wrong person to start with!) is not appropriate behaviour. –  Jon Skeet May 18 '09 at 22:55
@TSJ: Rising above it in that case means moving on to another question, and posting your feelings in a responsible manner. It doesn't include name-calling etc. No, you won't be able to have the world exactly as you want it in every respect. None of us can... but responding to that disappointment in a polite way is the only positive thing to do. Negativity breeds negativity. –  Jon Skeet May 18 '09 at 22:56
show 9 more comments

I have authored a total of seven books and find that they take a lot more time than one would think. If you compare how much you get compensated in royalties vs time, you would quickly figure out that there is a better ROI working at McDonald's bagging fries...

share|improve this answer
add comment

You are right in saying that your reputation is invested in the book, so make very sure you really are the expert you think you are, or you risk ending up being reviled as a second Herb Schildt. I'd recommend writing a couple of sample chapters first, without any contractual commitment. I did this for a putative C++ bookfor AW back in the late 80s and discovered I didn't really know as much C++ as I thought I did. Still don't for that matter..

share|improve this answer
I think I'll always be a C++ novice. I've read several books on the topic and I just can't seem to think in C++ like I can in other languages. –  Bill the Lizard May 16 '09 at 16:33
I wouldn't classify myself as a C++ novice, but I do look back and shudder at the job I had where my job title was "C++ Guru". –  anon May 16 '09 at 16:57
@Neil: I didn't mean to imply that you were a C++ novice. I just meant that after reading the books and even finishing a few projects in C++, I always struggle remembering what seems like novice-level stuff. For example, I still keep Effective C++ close by so I can look up all the different things const can mean. –  Bill the Lizard May 16 '09 at 17:08
And I didn't mean to imply that you meant to imply ... oh, nevermind :-) –  anon May 16 '09 at 17:17
Haha, okay. Just making sure. After re-reading my first off-the-cuff comment I realized that it could be misconstrued that way... –  Bill the Lizard May 16 '09 at 17:31
add comment

Yes and Yes.

Actually there is no right answer to this question. I'm sure the adventure of writing a technical book is well worth undertaking just for the experience if and only if that is the sort of thing you are interested in. I'm sure for someone who's never endeavored to be a writer it would be a nightmare.

Likewise, writing blogs and such disseminates knowledge in a way that writing a book doesn't. Blogs are immediate and interactive. Book are snapshots of the past. Both have value and both, again, are worthy ways to spend your time.

Notice I have discussed finance or subject matter. They aren't really important. You are already aware that you won't become rich and as the subject matter whether it is a niche or a well-mined subject a new book can't hurt. Another beginners C++ book isn't needed but maybe the next one will be the best one. Can't tell unless someone writes a next one. Likewise a niche book (embedded toaster oven programming) probably isn't worth the time unless you have a passion for it.

Ultimately, you really need to decide if you can devote yourself to the 3, 6, maybe 12 months being fully absorbed in writing/tuning/editing the book or not.

share|improve this answer
add comment

I hope I can say this without offending any authors here but I feel like there are only three reasons to buy a computer book.

  1. You are a beginning programmer
  2. You need a reference guide
  3. You're looking into a niche technology that doesn't have a lot of resources on the web

Other than that my feeling has been that the internet makes a far better resource than any book you can find. Especially with quickly evolving technologies like ASP.Net MVC. Any books that were written on the subject 6 months ago are probably filled with techniques and advice that is no longer best practice or perhaps no longer supported.

With that in mind I would suggest sticking with blogs. If you want to write extensively on a certain subject perhaps make an e-book. I think either of these options would both benefit the community as well as your reputation.

share|improve this answer
There's a fourth reason, IMO: you want a complete guide which someone has carefully structured to teach you in an appropriate order. My own book, C# in Depth, doesn't help in any of your categories - but readers have found it helpful. This certainly isn't because any of the information is unique. It's all around in blogs, the language spec etc. But a book provides that information (and commentary/advice) in a carefully constructed order. I think that's important. –  Jon Skeet May 16 '09 at 16:35
I'll take a look. Maybe my problem is that I just haven't read one of your books yet. –  Spencer Ruport May 16 '09 at 16:39
I would disagree with most of that. Agreed that a book can become outdated. A well-written book by someone knowledgeable is worth more than all the blog posts put together on the same subject. Books tend to have a flow - they start at the beginning of a subject and work you through the details. Blog posts tend to be short, to the point an lacking in detail. Often, blog authors assume too much knowledge and leave out the exact detail that people are looking for. Also, with blogs it is hard for someone looking for advice to separate the wheat from the chaff. –  Steve Claridge May 16 '09 at 16:39
Oh it's not limited to my book, certainly. Good books should always be carefully designed in this way. I've seen some which aren't, but it's an advantage which books generally have over blogs which are usually somewhat haphazard (and incomplete). –  Jon Skeet May 16 '09 at 16:40
(I should have said before, btw - no offence taken at all. I've pondered the value of books over blog posts quite a lot myself.) –  Jon Skeet May 16 '09 at 17:14
show 1 more comment

the books I'm interested are usually niche market books (GIS for Transportation, GIS-Transportation Programming, Transportation python/C++). AS niche markets, those books don't usually have high sales but are invaluable to my work so i don't mind spending the $140 for one. That's my recommendation at least: Write for niche markets

share|improve this answer
But the disadvantage of course is that the total sales would be a lot less than a more popular title. –  dodgy_coder Apr 18 '12 at 6:59
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.