The Internet has made publishing on a global scale almost effortless. That's the rhetoric, anyway. The truth is more complicated, because the Internet provides only a means of distribution; a would-be publisher still needs a publishing tool. A decade ago, people who wanted such a tool had three choices, all bad: a cheap but inflexible system, a versatile but expensive one, or one written from scratch. What was needed was something in the middle, requiring neither enormous expense nor months of development--not a single application, but a platform for creating custom publishing environments. For tens of thousands of sites and millions of users, that something is Drupal.
Created as an open-source project by Dries Buytaert, Drupal is a free content management framework--a tool for building customized websites quickly and easily, without sacrificing features or stability. Site owners can choose from a list of possible features: they might, say, want to publish articles, offer each user a profile and a blog, or allow users to vote or comment on content. All these features are optional, and most are independent of the others.
With Drupal's high degree of individualization, users can escape cookie-cutter tools without investing in completely custom-made creations, which can be time-consuming, costly, and hard to maintain. The Howard Dean presidential campaign used Drupal in 2004, and today it's used by Greenpeace U.K., the humor magazine the Onion, Nike's Beijing Olympics site, and MTV U.K., among many others.
The diversity of its users has led to many improvements, Buytaert says: "The size, passion, and velocity of the Drupal community makes incredible things happen." There are tens of thousands of active Drupal installations worldwide. Thousands of developers have contributed to the system's core, and more than 2,000 plug-ins have been added by outside contributors.
Buytaert began the work that became Drupal in 2000, when he was an undergraduate at the University of Antwerp. He had a news site called Drop.org, and he needed an internal message board to host discussions. After reviewing the existing options for flexible message boards, Buytaert decided he could write a better version from scratch.
The original version of Drupal (its name derives from the Dutch for droplet) worked well enough to attract additional users, who proposed new features. Within a year, Buytaert decided to make the project open source. He released the code in January 2001 as version 1.0.
Since open-source projects tend to attract expert users, they often lack clear user interfaces and readable documentation, making them unfriendly to mere mortals. But Buytaert understood from the beginning how important usability is to the cycle of improvement, adoption, and more improvement that drives the development of open-source software. The core Drupal installation comes with voluminous help files. The central team regularly polls users as well as developers (which is unusual in an open-source project) to decide what to improve next. The process reveals not just features to add, but ones to remove, and ways to make existing features easier to understand. For example, the project's website has been redesigned to help people new to Drupal figure out how to get up and running.
Buytaert has also founded a company, Acquia, to offer support, service, and custom development for Drupal users, especially businesses. He calls Acquia "my other full-time job" and likens it to Linux distributor Red Hat, which provides custom packaging and support for its version of the open-source operating system.
With Drupal version 7, due later this year, Buytaert hopes to include technologies that will make sites running Drupal part of the Semantic Web, Tim Berners-Lee's vision for making online data understandable to machines as well as people. If Drupal hosts a website containing a company's Securities and Exchange Commission profile, for example, other sites could access just the third-quarter revenues, without having to retrieve the whole profile. The goal of sharing data in smaller, better-defined chunks is to make Drupal a key part of the growing ecosystem of websites that share structured data. If this effort succeeds, it will ensure Drupal's continued relevance to the still-developing Web. --Clay Shirky