Petzold vs. Nathan? Books Like PowerPoint Presentations? Books Like Blogs?


Last week a coworker brought this article by Jeff Atwood to my attention:


Coding Horror: How Not To Write a Technical Book


Of course, I’m flattered by what Jeff (and commenters) said, and I’m happy that he gave my book a chance (especially since he didn’t seem to be familiar with my .NET and COM book). I’m also honored to be mentioned in the same breath as Petzold, who is clearly a really smart guy and a legend. What surprised me was the amount of interest the story generated. Even Tim O’Reilly chimed in and posted sales comparisons between our two books. (Although in addition to the funky math, it seems unfair to Petzold to omit the 3-4 months when his book was out and mine wasn’t.)


I didn’t think Petzold’s first reaction was an insult to my writing. Besides, I tried converting my book into a PowerPoint presentation and it didn’t quite work out:


    


Anyway, the biggest surprise came when Petzold posted a clarification of his reaction in which he called my book “remarkable and enlightening.” Wow. That’s a comment I won’t soon forget! What do you think the chances are that we could put that quote on the cover for the next printing of WPF Unleashed? 🙂


The conversations that spawned from Jeff’s post tended to focus on color, sidebars, and bullet points, and I don’t think that’s fair to either book. Like Petzold, I hope that content is still king. I work ridiculously hard at packing my books with valuable content that anticipates developers’ questions and helps them be successful. Perhaps my favorite comment on Jeff’s post is by someone (suspiciously) named Adam:



I’m going to beat a nearly-dead horse (I don’t think it’s fully beaten yet), but using the color samples and the like to describe Nathan’s book isn’t doing his book justice. The amount of insight he gives on so much of WPF is amazing; I’ve partially read his .NET and COM book and while the feel of the two books was different, they both provide one important goal: educate the heck out of the reader with information you won’t get without a lot of experience. The color samples are nice, the way he puts tips and sidebars is nice, but it’s his content that is the shining star. Every other resource I’ve read on WPF doesn’t cut it on the detail of the whys and the hows. Most other books spend too much time giving the “if you write code ‘x’ then ‘y’ will happen” and not enough “this is why ‘x’ causes ‘y’ to happen.”


I also recognize that just as a king usually needs a competent military to survive, content usually needs a good presentation. Do I think that some people are buying my book simply because of the color and scannability rather than my wit, writing style, or qualifications? Absolutely. And I’m okay with that. Otherwise, I wouldn’t have worked so hard to enable the syntax coloring and add various text elements that take much more time to create than simple paragraphs. (Yes, making the syntax coloring survive the journey from Visual Studio to the printed page was a lot more work than you might imagine.) I enjoy telling stories where it makes sense, but I know I’m not writing the next Great American Novel. To me, it just makes sense to use bullet points if I feel the need to explain the difference between six enumeration values, for example. I use my books as references all the time, and such elements also help me find what I’m looking for more quickly.


.NET and COM (now 5 years old and printed on demand) is a black & white book with longer code snippets and less scannability. WPF Unleashed (now 4 months old and in its third printing) might soon sell twice as many copies. Why the difference? Maybe it’s the subject matter. Maybe it’s the intimidating length of .NET and COM. Maybe it’s the price difference. Maybe I’ve become a better writer. Or maybe it’s the color and scannability?


Another part of Jeff’s post that struck me funny (and got a lot of attention) is:



The Nathan book is brilliant. It reads like a blog and competes toe-to-toe with anything you’d find on the web.


Blogs are brilliant? (Mine certainly isn’t.) I understand what he’s saying, in that I intentionally wrote in a casual tone (more casual than in .NET and COM). But don’t mistake “casual tone” for being sloppy, not giving a ton of thought to content and organization, or lack of authoritative perspective! I don’t know what blogs Jeff reads, but If my book read like the blogs I’ve read, it would look more like this (click for a bigger view):


   


Overall, I think Jeff’s original point was not “Books should have color, sidebars, and bullet points” but simply “Don’t judge a book by its cover.

Comments (15)

  1. Binaryjam says:

    Actually I picked yours over Petzold because of his own second clarification, that of structure, I want to dive in to xaml, I get c# and I hope that your book will give me a very quick start to this.

    I might buy the other book later, you can never have enough books and as both are said to be written from different viewpoints all the better.

    The winner of this is me, two great books to choose from.

  2. ROFL – you took down Scoble, Raymond bigtime. 🙂

  3. Adam,

    Cracking book – very well written, easy to read and easy to pick up and put down, well presented – colour! and covers technologies such as speech recognition and synthesis too…

    I’d highly recommend it.

  4. Adam says:

    I didn’t even realize you had a blog; I’m going to subscribe to it now. Hopefully my comment wasn’t too suspicious, I think I put my URL in there.

    Your book was great man.

  5. I’ve bought both your book and Petzold’s book. I appreciate both approaches to the WPF subject matter.

    If your 2nd edition is anywhere near as hilarious as this chapter 13 on your blog, I will certainly buy that book too 😉

  6. Mike Dimmick says:

    Excellent cover of Rory there too

  7. Dan says:

    Give that blog look a chance in your next book dude, if Petzold seems that is going to be crazy

  8. Chris says:

    Adam,

    I am a few pages from finishing your book cover-to-cover.  I loved it.  Vertigo Software suggested, in their Family.Show application notes, that developers should read your book and Petzold’s book … twice!  Did you notice the use of the exclamation point in the last sentance?  I am part developer and part designer.  I got Petzold’s book and it simply did not shine a light, in my opinion, on the incredible potential that is possible in WPF.  Whereas, your book iluminated both the coding and presentation features in WPF.  What more could we expect?  I am now planning to go back over some of the material, but, it’s highly unlikely that I’ll ever gravitate towards the Petzold book.  No offense.  It’s a new world and WPF is a new type of tool.

    Chris

  9. Rory says:

    I’m trying to figure out if I should be insulted, sue you, or thank you.

    My ego is pushing me toward thanking you, but my wallet says I should sue you.

    Maybe I should just swing by your office and poke you in the eyeball 🙂

  10. I read a sample chapter from Adam Nathan’s WPF book – Windows Presentation Foundation Unleashed – a few weeks ago. (This book has been getting some mad props from around the net recently).

    The chapter covers the new concepts in WPF which is super..

  11. Jules says:

    I have both books and preferred yours. But I’ll probably always love Petzold more for Windows 3.0.

    BUT: I’m still waiting for a good WPF equivalent of "Eric Meyer on CSS" that shows us a collection of short but slightly deeper case studies for doing in WPF what we used to do in WinForms and Visual Basic or MFC before that.

    And I really want to see an "Effective WPF: 50 Specific Ways to Improve Your User Interfaces" (after another famous Meyer). Actually, given the breadth of WPF, make that 100 Specific Ways.

    Without this, I think a huge number of WinForms programmers who are used to laying out 3rd party controls with hundreds of styling properties on a dumb canvas are really going to struggle to cross over.

  12. JasonG says:

    LOL that Powerpoint slide is priceless.

  13. Rudi Grobler says:

    Found the following interesting links while surfing the web: Snack Tutorials for the Hungry Celso Gomes

  14. I recently had the chance to read WPF Unleashed by Adam Nathan on the beautiful beaches of the Corsica

  15. My editor at Sams (hey Neil :)) and I decided to convert the book I am almost done writing into an Unleashed