Quite often web developers are faced with having to overcome problems quickly and efficiently without having much background in the problem area. Good tools and good documentation are your best friends in a situation like this. Recently, I was tasked with whipping up a website driven by Drupal in only a few days. I had used Drupal once before but this new site required going under the hood of Drupal and I hadn't done that previously. The project required creating some custom Drupal modules for content-types and blocks as the basic pages of the site needed some extra stuff in them besides the normal title, content, and categories. Clicking around the vast Drupal site was a bit of a help on the issue but my savior was the copy of "Pro Drupal Development" by John K. VanDyk and Matt Westgate, published by Apress, that landed on my desk.
The book isn't for Drupal beginners but it doesn't really claim to be either. It's helpful to have a Drupal site or two under your belt as the authors give a quick overview of the Drupal workflow and then they dive right into the guts of building custom modules complete with code examples. Building modules from scratch looked pretty daunting but this book takes you through step-by-step in various scenarios of why and how you'd need to create custom modules, complete with storing additional data in the database, creating admin screens, and utilizing the forms API. Once you go through about half of this book, you'll be able to bend Drupal to your will through the creation of custom code modules.
A few more high points of the book include the great descriptions of nodes and taxonomy which tend to trip up quite a few people using Drupal. Also, the authors show you right away how to uninstall your test modules easily which is a great help. It's this kind of extremely useful tip that pops up every few pages that make this book a MUST HAVE for every serious Drupal developer.