drupal

The DX Files: Defined constants as API arguments

This is part two of my series, The DX Files: Improving Drupal Developer Experience.

Many Drupal APIs accept a boolean argument (TRUE or FALSE) to determine some behavior. I believe that practice should be banned in all but exceptional cases, instead using a defined constant with a descriptive name.

Here is a perfect example from Drupal core:

<?php
    $output
= node_view($node, FALSE, TRUE);
?>

Now, quick! Who can tell me what passing FALSE as the second argument and TRUE as the third argument means?

OpenSSL support in PHP under MAMP

I recently started using a Mac for web development (I don't love it but that's another story). At the recommendation of several friends I'm using MAMP instead of the native Apache, PHP, and MySQL; they said it was much easier to set up. Yesterday, I discovered that MAMP's PHP install does not come with the OpenSSL extension so, for example, you cannot visit HTTPS sites from within PHP.

The DX Files: Improving Drupal Developer Experience

I am declaring a personal crusade to improve Drupal’s “Developer Experience,” which I hereby abbreviate as “DX.”

Acquia Web 2.0 Expo Launch Pad video

On April 24, Jeff Whatcott and I gave a 5-minute Drupal demonstration and Acquia pitch at the Web 2.0 Expo Launch Pad event. Here's the video (larger version here).

Building Community

At the Web 2.0 Expo in San Francisco last week I attended the session “Community Building: Good, Bad, and Ugly.” More than anything else, it reminded me of the “Building Community” session hosted by Laura Scott of pingVision that I attended a year ago at the OSCMS 2007 conference in Sunnyvale last April. I went to Laura’s session with no expectations (there was nothing else in that time slot I wanted to attend) and was really pleased to find the discussion relevant with tangible, actionable ideas I understood and could use. I’ve been meaning to post my notes from that session for a year and now I’m finally motived. So, here they are!

In addition to these notes, video of the OSCMS session is available. I am the second person to Laura’s right.

An Avalanche of Amazing Occurrences

This has been an almost absurdly busy news week for Drupal and Acquia. It’s like riding on a freight train, strapped to the front of the engine, traveling at 100 mph (*). Just to sum up:

  • Acquia’s CTO and my highly esteemed co-worker Dries Buytaert was named one of the Top Tech Entrepreneurs Under 30 by BusinessWeek magazine. Way to go, Dries!
  • Drupal is a Webware 100 Award Winner. Way to go, Drupal community! If you will be in San Francisco this week, join us at the Webware Party at Web 2.0 in San Francisco, Thu Apr 24 16:30 – 18:00 (PDT), Web 2.0 Expo official Booth Crawl. The event is free; register online with the promo code: “websf08wbw”.
  • Following the Drupal Paris Testing Sprint, Drupal now has a testing framework in core. This is an incredibly important milestone for the Drupal community and one that I hope will have far-reaching positive implications for Drupal’s future stability and capability.

  • I will be presenting Drupal at the Web 2.0 Expo San Francisco Launch Pad event on Thursday, April 24, 2008. You can attend this event for free as well; follow the link for details.

Life here at Acquia is definitely picking up speed.

(*) If I lived in Europe, I would have said 200 mph.

Speaking at Web 2.0 Expo San Francisco: Launch Pad

On Thursday, April 24 I'll have the privilege of demonstrating Drupal at the Web 2.0 Expo Launch Pad event in San Francisco. Acquia and five other companies will have five minutes each to demo their product or service in front of a large audience and a panel of VC's. It's a huge honor for Acquia to be chosen among the 150 companies that submitted applications and a wonderful opportunity to show off Drupal in front of thousands of its potentially likely users.

In February, I gave a two-hour talk about Drupal at the Boston PHP User's Group. In the past I've spent as long as five full days teaching Drupal developer seminars. In San Francisco, I'll have three minutes—Acquia's VP of Marketing Jeff Whatcott seems to insist on spending at least some of our time talking about our company :-). How would you demonstrate Drupal's depth and flexibility in three minutes? What would you show?

I hope you are able to join us in San Francisco to find out our answer to this challenge. Launch Pad starts at 1:30pm PDT and we are first up, so do not be late! Note that you can attend the session for free using an Expo Only pass—use the discount code websf08opw when you register.

For those who can't make it, we'll post video online as soon as we can afterwards.

Speaking at Drupalcon Boston 2008: The Future of Fields

Drupalcon Boston 2008 takes place from March 3, 2008 to March 7, 2008 at the Boston Convention and Expo Center. With a (predicted) sold-out crowd of 800 attendees, three top-notch keynote speakers, 60 sessions, industry networking events, a job fair, code sprint, and more, it is going to be quite a party!

Along with three colleagues, I’ll be speaking on Tuesday morning about The Future of Fields:

Speaking at BostonPHP on 02/28/2008: An in depth view of Drupal

I’ll be speaking at the BostonPHP User’s Group on Thursday, February 28, 2008 at 6:30pm:

Schema.module Considered Mandatory

In the last couple days, two unrelated patches were committed to Drupal 6 with a common flaw: they caused inconsistencies between the database schema as defined by every module's hook_schema() function and the actual layout of the database. They are not the first two; I've personally found and fixed at least a dozen such mistakes, usually via a follow-up patch after the bug has already been committed to CVS. What makes these bugs so irritating is that they are so absolutely trivial to detect and usually very easy to fix before the initial patch goes in. Fixing them afterward takes a lot more overhead (and, more importantly from my narrow point of view, my overhead). So I want to put an end to it.

Therefore, with no authority whatsoever, I hereby declare the following law:

Every developer that submits or reviews any patch that modifies a Drupal 6 (or later) .install file must install schema.module and, using its Compare report, assert upon pain of public humiliation that the patch introduces no database schema inconsistencies into a fresh install or an upgrade from the previous core version.

Syndicate content