Review: Pro Drupal Development by John VanDyk


I spent a long time on the fence about buying John VanDyk’s Pro Drupal Development because there’s so much documentation online and because I’m a cheap bastard. By about the middle of chapter 2, I realized what a stupid decision that was. I could have saved myself sooooo much time if I had just bought the damn thing when it first came out!

There are, I would say, two good reasons not to buy Pro Drupal Development:

  1. You are not a Drupal developer.
  2. You are such a Drupal ninja already that VanDyk mentions you in the acknowledgements.

If on the otherhand, you build Drupal sites and do any mucking about in the internals, this book will probably teach you a lot and, if it doesn’t do that, it is still probably a worthwhile reference. In my case, I learned a lot. It was a bit humbling actually, but damn useful.

I’ve tried to read through the forms API and the documentation for it, but it never quite came together for me and I found reading it online wearisome to be honest, in a way that I never felt when I was learning PHP and spending a lot of time with the online PHP manual. I suspect that’s because PHP ultimately has a lot of overlap with C++ and other programming languages, so I was mostly skimming for syntax, but Drupal is a complex system with an architecture that was utterly foreign to me with its massive collection of hooks, callbacks, templates and so forth. So how does hook_nodeapi() relate to theme_preprocess_node() and node.tpl.php? And that’s an easy one. Throw in the menu and forms APIs, filters and so on and it just gets hard to get started on really putting it together.

I’ve hacked together some modules and done quite a bit of themeing, but I never really took the time to really understand the underlying Drupal architecture. By the time I was a few chapters into Pro Drupal Development, I was already seeing better ways to do some things than my old bad “make it work” habits had taught me. Furthermore, with the excellent index in the book, when I came across roadblocks I could often find a solution quickly that allowed me to move on without having to sift through the documentation online.

Most importantly though, in almost every case, VanDyk’s explanations are just so much better than I’ve found elsewhere. I have no idea how talented a coder he is, but he definitely has real skill as a writer and a teacher. So many things that seemed arcane to me from other documentation, we’re absolutely clear and obvious in his able hands. I suspect some of that is because of good editing (not to be underestimated: it’s rare for a film to win the Best Picture Oscar without also winning the Oscar for Best Editing), and I find it much more comfortable to read print rather than onscreen, especially conceptually intricate material. None of that, however, takes away from VanDyk’s skill and my gratitude that he and others involved in the book put the time in to open up Drupal development to the rest of us.

If I have one regret about the book, it’s this: it covers only the core system. I understand the rationale behind that. With thousands, of Drupal modules, you simply can’t go down that road. Still, I think that the Content Construction Kit and Views have really become “pseudo-core” in that complex Drupal sites commonly use them and they are increasingly being folded into Drupal core. These modules are in and of themselves pretty complex, especially Views, and I would love to see a book that covers Views in the detail that VanDyk covers the core (and perhaps one of the other Drupal books does, I just don’t know about it yet). That said, having gotten a much better understanding of core gave me pretty much all the tools I needed to embed Views into my site in the way I wanted, and yet still have everything get themed and hooked properly and without using the Panels module, another complex module which, while powerful and useful, adds a lot of overhead for the simple task I needed (I actually originally built my “proof of concept” site using Panels, but realized after reading Pro Drupal Development that I could simply achieve what I wanted by making small changes in templates and template.php without weighing the site down with yet another massive module).

So in short: Thanks John! Now with take the massive riches flowing to you from all six of my readers, one of whom might actually buy your book, go write another one.

11 Responses to “Review: Pro Drupal Development by John VanDyk”

  1. blakhol

    I think the author is VanDyk, not Van Dyck. :)

  2. Very helpful in tipping me over the edge to buy the book – I’m a cheap bastard too and don’t like parting with money when I’m not 100% sure that I need to.
    Looking forward to taking a step towards being a Drupal Ninja :-)

  3. love the link chain i came to be here:
    Buy the book -> realize that exists -> follow a link from there to here.

    hopefully others go in the opposite direction, but yeah agreed its a great book.

  4. ussher,

    I was utterly baffled by your comment about “the opposite direction” then I understood that has a link to this review and you’re wishing that other folks go from here to there.

    Yeah, that’s cool he links this review. There must be dozens of reviews of that book and I would think he would have some great ones from people who are well-known in the industry and community. Maybe that’s the point — those might seem like buddy deals.

    Anyway, as I say in the review, I definitely concur. If you spend time building sites with drupal, even just as a themer, it’s an indispensable book. There are some new ones out too on SEO and module development and more, but I still haven’t bought any of those yet.

    If anyone is reading this and you know of a drupal book that is of top quality, please list the book and author (and a link to where to buy if possible).

    Thanks all!

  5. Pro Drupal Development is my bible. It was the first Drupal book that I’ve bought and I consider it an invaluable resource.

    My only addition to the review is that this book is also not for developers who aren’t already familiar with PHP. If you don’t at least understand basic PHP syntax, you may get a bit lost trying to understand the examples.

  6. Thanks Steve,

    That’s a good point. You need a basic understanding of php to really “get” the book and understanding the underlying drupal architecture. It’s definitely a developer’s book, not an admin’s guide.

  7. Hi, i read now you’r Blog a very long time but did not yet found a way to get News by Mail then RSS, if im to stupid i would be happy to hear from you or add my E-Mail adress to your Newsletter list. Thanks for your Help and greetings Roxana

  8. Hello! It’s a great and useful article! It’s the thing, what i searched all the day, and finally found! Thanks man! You ar the best! Keep on going!

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>