While you can do a lot of flexible and powerful things with Drupal (especially if you install Views and CCK) it offers a rich programmers API and application framework. Pro Drupal Development dives right into the middle of the code and spends very little time at the user interface pointing and clicking. In the second chapter you're shown how to write a module, and in every chapter afterward at least half of it involves coding.
The chapters cover modules, hooks, actions, triggers, the menu system, database abstraction, user objects, nodes, themes, blocks, forms, input filters, searching and indexing, files, taxonomy, caching, sessions, jQuery, localization, XML-RPC, security, optimization, and more.
In every chapter not only are the API's explained but so is the database storage. The latter can be a little obtuse to follow especially with the way CCK dynamically creates tables while lacking a schema declaration for the tables.
The writing is clear and fulfilling.
If you're looking to customize Drupal by adding new functionality, new node types, advanced themeing the you must get this book.
Not a very good book for newbies on the Drupal platform.
If you're an experienced developer, Pro Drupal Development is just what you're looking for. From the first chapter, Van Dyk immerses you in the myriad details of Drupal module development -- its hook architecture, the Forms API, content types and how to extend other modules.