Drupal 10 Module Development: Develop and deliver engaging and intuitive enterprise-level apps, 4th Edition

Drupal 10 Module Development

Develop and deliver engaging and intuitive enterprise-level apps, 4th Edition

2023 • 580 pages

Ratings1

Average rating4

15

First of all, a disclaimer: I have been working with Drupal since Drupal 6 and also one of the regular contributors to Drupal 8 and later. I am writing this review based on my reading of a reader copy provided by the publisher. This review is my own opinion.

I think this book is a great fit for someone who has moderate programming experience and a basic awareness of Drupal. This might be a little overwhelming if you have no experience with Drupal at all or at least with Symfony style of designing applications. This is because Drupal follows patterns typical to Symfony applications and uses several of the Symfony components. If this is not you, the first chapter does a decent job of explaining Drupal for developers but in my opinion, the latter part of the book can still be quite overwhelming. The book does explain some of the basic design patterns and concepts used in Drupal but does not wait long before jumping into example code that contains all the concepts that were just mentioned.

This is not a significant problem as I know a typical Drupal developer's journey is likely to begin with a lot of site building and community support. Most Drupal developers have entered the community in this fashion. By the time you need this book, you would have already worked enough with Drupal to build a moderately complex site by assembling various contributed modules and even writing a simple custom module or two. That is when you will begin to realize the lack of structured documentation in the official sources (the Drupal community is doing significant work to fix this) and you will go looking for a book such as this.

The book is meant to be read in any order you wish. If you haven't worked with Drupal before, you would probably read the first two chapters and then jump to the chapter you want. There are 18 chapters in all and the order, in my opinion, is highly subjective and feels random. For example, I would prefer chapters on testing, working with files, and security near the beginning rather than at the very end. It is human nature to skip the chapters at the end of the book and we, as an industry, need to get better at security and automated testing. The order doesn't help that at all. That is the only reason I have taken away a star from this book. The content is detailed and highly relevant to the Drupal 10 era.

For example, the chapter on caching began with the basics but the author did not lose any time in explaining the nuances of bubbling up cacheability metadata and how caching affects different scenarios such as redirects or access control. The author then soom jumps to placeholders and lazy building. All this happens in less than 20 pages, a lot of which is code listing. The author similar covers topics ranging from custom entities and custom fields to internationalization, logging, batches, JavaScript, and as I mentioned before, security and automated testing.

If you spend time regularly developing Drupal applications, then this is a very useful book to keep as reference and even read to remind yourself of what Drupal provides. It is very easy to forget the powerful features in the Drupal framework and this book fixes that problem.

July 17, 2023