Pro Drupal Development, Second Edition arrives

The author's copies of Pro Drupal Development, Second Edition arrived today. At 667 pages, the book is significantly thicker than the first edition!

I worked on this edition from November of 2007 to July 2008 pretty much without stopping. One morning my daughter found me in the living room writing a chapter at 3 am. It is difficult to express how much work this book has been, and how happy I am to hold the printed copy in my hands. Those who have written books will understand. :) I am glad to finally have it get into the hands of Drupal developers everywhere, and I hope that this contribution helps to complete the transition from Drupal 5 to Drupal 6. Thanks so much to all who have helped with this project!

Profits from the book go to this little guy's college fund. (And if you buy it through drupalbook.com, the Drupal Association gets a percentage of each sale.)

[ Submitted by John on Mon, 2008-08-18 12:26. | | ]

Installing APC on RHEL5

Here's how to install APC on RHEL5.
# yum install php-pear php-devel httpd-devel
# pecl install apc
# echo "extension=apc.so" > /etc/php.d/apc.ini
# service httpd restart

Check for the apc section in your phpinfo() page. If it's not there:

# tail /var/log/httpd/error_log
[Tue Aug 12 15:43:59 2008] [notice] Digest: done
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/apc.so' - /usr/lib/php/modules/apc.so: cannot open shared object file: Permission denied in Unknown on line 0

SELinux is preventing the extension from loading, I'll bet. Let's check:

# tail /var/log/messages
Aug 12 15:42:40 mybox yum: Installed: httpd-devel - 2.2.3-11.el5_1.3.i386
Aug 12 15:44:01 mybox setroubleshoot: SELinux is preventing the httpd from using potentially mislabeled files (./apc.so). For complete SELinux messages. run sealert -l 9e4bbfa8-327b-4bb2-94df-f154045a1ef1

Let's view the security contexts for our PHP extensions:

# ls -Z /usr/lib/php/modules
-rwxr-xr-x root root root:object_r:tmp_t apc.so
-rwxr-xr-x root root system_u:object_r:textrel_shlib_t dbase.so
-rwxr-xr-x root root system_u:object_r:textrel_shlib_t gd.so
...

Yup. Notice how the security context is missing (it's tmp_t for apc.so). Let's fix that.

# restorecon /usr/lib/php/modules/apc.so
]# ls -Z /usr/lib/php/modules
-rwxr-xr-x root root system_u:object_r:textrel_shlib_t apc.so
-rwxr-xr-x root root system_u:object_r:textrel_shlib_t dbase.so
-rwxr-xr-x root root system_u:object_r:textrel_shlib_t gd.so
...

Now let's try again:

# service httpd restart

Yay!

P.S. On x86_64, apc.so is in /usr/lib64/php/modules.

[ Submitted by John on Tue, 2008-08-12 16:13. | | ]

Go ahead and ignore

Hmm, I think I will go ahead and click Ignore...

[ Submitted by John on Mon, 2008-04-28 08:53. | | ]

Second edition progress

I thought I'd update everyone on the progress of the second edition of Pro Drupal Development.

The second edition will cover Drupal 6, and is expanded to cover new core topics like actions, triggers, AHAH, etc.

[ Submitted by John on Sun, 2008-04-27 22:44. | | ]

Workflow 5.x-2.0 released

I've finally got a project that uses the workflow module so I've been able to justify putting some time into it. As a result, I've released version 5.x-2.0. This version of workflow works with the 5.x-2.x version of actions, which is the backport of Drupal-6-style actions to Drupal 5.

[ Submitted by John on Sun, 2008-04-20 16:00. | | ]

Growth of Drupal

Others are posting on Drupal's growth today. A picture is worth a thousand words, so here are 2000 words on the subject:

Antwerp, 2005

Boston, 2008

[ Submitted by John on Fri, 2008-03-14 10:05. | | ]

Letter to Dries, July 2004

At Drupalcon 2008, one question I was asked a number of times was "how did you get involved with Drupal?" Here's one of my first letters to Dries, after discovering Drupal in 2004. Interesting to think about how far we've come since then.

Hi Dries,

[ Submitted by John on Mon, 2008-03-10 12:08. | | ]

Slides from Drupalcon Boston 2008

Video of the presentation I gave at Drupalcon Boston 2008, titled Triggers and Actions and Hooks, Oh, My! should be appearing shortly. (In the meantime, here's me babbling about actions.) The slides are downloadable below.

[ Submitted by John on Mon, 2008-03-10 08:41. | | ]

XServe RAID discontinued

Apple has discontinued their confusingly named XServe RAID storage system. That's a shame, and yet another red flag for trusting Apple in the enterprise market, in my opinion.

I currently administer two of these (one on OS X Server and one on RHEL5), and I can't say enough good things about them. They have been reliable and fast. When a disk goes out, the system sends out notification and starts a rebuild on the hot spare automatically, just like a good RAID should. And they're quieter than any other dedicated RAID solution I've looked at. RIP, XServe RAID.

[ Submitted by John on Tue, 2008-02-26 09:47. | | ]

Drupalcon 2008 actions session

The session I proposed, Triggers and Actions and Hooks, Oh My! has been accepted at Drupalcon Boston 2008. I will be presenting the new capabilities of Drupal 6 in this area, from the big ideas to the nitty gritty. The session will be Tuesday afternoon from 5-6 pm, just before the Acquia Conference Social.

We had 26 people at the first Drupal conference in Antwerp (three years ago today, by the way!). There are currently 800 registered attendees for the upcoming Drupalcon, and the conference has reached its maximum capacity.

I'm looking forward to the presentations, the birds-of-a-feather meetings, hanging out with a bunch of geeks, some hacking time, and the business fair.

[ Submitted by John on Mon, 2008-02-25 18:29. | | ]