Earlier this month, I got a copy of "Drupal 5 Themes" for some reading pleasure. I just arrived to the end, and after submitting a bunch of non-major errata entries, I thought it would be a good idea to share my thoughts with you.
A lot of people wondered in the drupal.org thread whether such a book is any valuable now that Drupal 6 is out. Well, after reading it through, I can state as well that it certainly has value for people interested in a comprehensive Drupal theming introduction. Book publishing is not a quick process, the CSS reference of the book was updated for Drupal 5.2 (admittedly not much changed in later versions as far as CSS goes, if anything), and the author mentions writing parts of the book while Drupal 5 was just briefly out. Implementing ground-breaking changes is not much easier however, so Drupal 6's new theme flexibilities and features does not require unlearning Drupal 5 knowledge. People familiar with Drupal 5 theming will be able to pick up the new stuff in Drupal 6 much more easily.
Back to the contents of the book, the various chapters definitely provide a decent introduction to Drupal 5 theming. While I don't agree with some approaches (like the chapter on starting a theme from scratch really starting from empty files instead of copying default PHPTemplate files over), the book gives lots of tips which are hard to pick and gather from the Drupal forums. The author also takes liberty of reiterating some basic points multiple times, so it is easy to jump into relevant chapters (eg. modifying an existing theme) without reading all the others. This might feel like a bit too much repetition for people reading from start to end however.
The pages include lots of reference material, like the last chapter with a listing of major forms to theme or chapter 4 completely filled with a list of themeable functions. I think these would have been better put to the appendix as reference chapters, but they are findable where they are nonetheless.
The book does not delve into advanced style sheets and layouts, so the examples provided are of the really basic looks. Those looking for creating top-notch themes still need their own creativity, but this should not be much of news for anyone. The book strives to provide a picture on how HTML and CSS attach to Drupal not how one does things like Sliding doors (a CSS technique) or SIFR (Flash text replacement) work. The author also skips advanced Drupal topics like how to use color module in your themes, although this does not feel like missing since color module would only be used in contributed (reused) themes most of the time, definitely not in purpose-built site themes. The themes produced in the book examples will not compete with Garland regarding their looks either.
Even a site building recipe is included, with things like block visibility settings, custom blocks and some essential blocks explained; showing off that building a site theme is not a generic task most of the time, but it needs to consider site specific needs including blocks, menus and settings even.
So all-in-all I'd recommend this book to all, who are new to Drupal theming, and would like to get a head start on integrating their HTML and CSS techniques to Drupal.
I just noticed the new #translatable module popping up via a note in a Drupal issue. Historically there was i18n module, which provided the de-facto way to build multilanguage sites. Then through some smaller modules, competition and somewhat different thinking came in with localizer module.
Early in 2007, I was discussing the possibility of being the Drupal 6 maintainer with Dries. Dries was just collecting candidates at that time and it was not for some months after work on Drupal 6 started, that he selected me as a maintainer. Through the discussions, we reiterated the point multiple times, that core maintainership requires a significant dedication and time from the maintainer. I never thought I will be able to work this much on Drupal 6 though.
In mid-April, when Dries announced me as the selected core committer, I was still at university, completing my MSc thesis, and that my thesis was focused on internationalization features for Drupal 6 helped my involvement a great deal. It was a perfect match. Then after finishing university, I went on to work in Google Summer of Code 2007, where my application was accepted earlier. In part, I continued the multilanguage improvements for Drupal 6 (with localization advancements) and taken over Localization Server from Bruno Massa to take it to new heights and eventually make it an official tool for Drupal translators.
A few hours after I blogged about graduating, I was approached by Dries and Jay Batson to work for Acquia full time as a Drupal core developer. Being an open source contributor for at least 7 years, I was amazed by the possibility. While it was a lifetime opportunity for me, Drupal 6 benefited most with this offer. I have been working on Drupal 6 full time after finishing Google Summer of Code, right from the next business day, August 21st (months before Acquia was even announced).
I just checked out the data about the volume of my involvement in Drupal 6, and it is fantastic to see that how this all made possible to enable the community to contribute with a higher pace then ever. My commits reflect all your combined work, multiple contributors working on each improvement or fix to Drupal 6. If Acquia's priority would not be to contribute to Drupal 6 and help me enable the improvements and fixes to land in core, we would not be here with a release of this quality in this timeframe. The difference between the parts of this commit graph when I was working on Drupal 6 in my spare time and full time really shows the difference.
So while there are lots of thanks coming my way, let me pass on some to Acquia. Let's meet in the Drupal 7 issue queue as well, we have fun stuff to do in the next release as well!
Just one week before DrupalCon Boston, some well known faces from the Drupal community will gather in Brussels, to host a Drupal Developer Room as part of the FOSDEM conference.
On February 24, Sunday, the developer room offers a great program with well known names. Talks include "What's new in Drupal 6" by Dries and myself, Drupal theming, usability and integration with web services and the ApacheSolr project, the Asset module, Drupal and MySQL high availability, just to name a few.
FOSDEM offers a great program otherwise as well, with Andrei Zmievski talking about Unicoding in PHP 6, Mark Finkle talking about Mozilla Prism (desktop web apps!) and Rogan Dawes talking about OWASP WebScarab-NG (HTTPS interception), just to name a few of my picks.
What can a Drupal 6 maintainer do, if he would like to gain more confidence that Drupal 6 is indeed fine and ready for a 6.0 stable release? Well, pick a well used site and upgrade. This is what I started to prepare for this Monday night for drupal.hu, the Hungarian Drupal community site. It helped that we readied the Hungarian translation earlier, so that it was complete and ready to import.