dlj204

Page 50

FEATURE Drupal 7: the Webchick behind the Wheel

release. We have an accessibility team, a usability team, a markup and design team, and a documentation team dedicated to improving the core in ways that go beyond the code. My hope is that the leadership shown by early pioneers in these fields will open the floodgates for new contributors in the Drupal 8 process, and that Drupal 8 improves upon Drupal 7 in all of these areas and more. KD: I have played with Drupal 7 quite a bit, but I can’t say I’ve really put it to full use yet, and I keep hearing about how much more usable it is. How much do you think this will affect the Drupal learning curve? AB: Usability was something that saw tremendous attention during the Drupal 7 release cycle, and we saw a radical transformation in the culture of the Drupal development community and how seriously this barrier of entry was treated.

about fixing many of the problems identified in testing, and they fixed a number of important and obvious problems in the existing UI. Additionally, Acquia funded Mark Boulton and Leisa Reichelt, a design and usability expert, to take a holistic view of the Drupal administrative experience and make more wide-sweeping changes, in a community-driven, collaborative usability experiment called D7UX. Both initiatives worked in tandem to provide Drupal 7 with a new administration theme; a set of common administration patterns, such as a toolbar and contextual links; and a taskbased administrative information architecture. We haven’t yet been able to test formally how the usability work we did in Drupal 7 improved the situation over the results we saw with Drupal 6, but preliminary feedback from the broader community has been pretty awesome. This usability work doesn’t fully address the dreaded “Drupal learning cliff”, per se.

isn’t additionally overburdened with read requests, which can be routed instead to read-only slave databases. I Reverse-proxy support—a reverse proxy,

such as Varnish or Pound, can greatly speed up Web site access by caching copies of pages and then intercepting requests to serve them, saving the Web server from having to handle page requests directly. Drupal’s settings.php configuration file now contains directives to enable reverse-proxy support. I Support for content delivery networks

(CDNs)—services exist for caching static files, such as images, CSS and JS, across multiple geographically distributed computers, which then can be served to visitors more quickly than a round-trip to the Web server where Drupal is stored. By invoking hook_file_url_alter(), modules can

For folks coming from other CMSes, such as WordPress or Joomla, the biggest hurdle to getting started with Drupal is often the “LEGO block” approach Drupal takes to building sites with modules. Just after Drupal 6 was released in February 2008, Dries, myself and several other major contributors went to the University of Minnesota (yes, Minneapolis in February—that’s how much we love Drupal) to perform our project’s first formalized usability study. We were given a room with one-way glass, tools like eye-tracking software to tell where people were looking on the screen, and the University found several participants who had previous Web development experience with tools like WordPress, Movable Type and Dreamweaver but not with Drupal. In other words, people in our project’s direct target audience. The results were absolutely shocking and completely transformed the way I look at Drupal. We found that participants were completely lost as to whether they were on the front end or back end of their Web sites. They were unable to find major administrative sections in order to perform basic tasks. They were mystified by Drupal jargon, and on and on. A usability team was formed who set

4 8 | april 2011 w w w. l i n u x j o u r n a l . c o m

There still are an awful lot of things you need to know in order to be a successful Drupal site builder, like what modules you should use for what and what the heck weird words like “taxonomy” and “node” mean. However, Drupal 7 hopefully should require a lot less customization from site builders to put it in front of their clients and give them a better leg up on answering the question, “Great. I have a Drupal site installed...now what?” KD: It’s supposed to be more scalable too. Can you tell us how? AB: A number of new features in Drupal 7 help with the situation where your site needs to accommodate huge blitzes of additional traffic, assuring all visitors of a speedy experience: I Master/slave replication support in the

database abstraction layer—database writes are slower than database reads, and reads happen way more often. A master/slave setup allows you to separate reads from writes, so that the main database storing all the information

re-route requests from Drupal’s files directory to services, such as Akamai or Amazon CloudFront. There’s a high-performance distribution of Drupal 6 core called Pressflow (pressflow.org) from which a lot of these scalability improvements originated. KD: For our readers who are more comfortable with WordPress, Joomla or even platforms like Ruby on Rails and Django, what do they need to know about Drupal, and in particular Drupal 7, in order to have the best experience getting started? AB: For folks coming from other CMSes, such as WordPress or Joomla, the biggest hurdle to getting started with Drupal is often the “LEGO block” approach Drupal takes to building sites with modules. It’s common in other CMSes that if you want to add a photo gallery to your site, you simply search for a photo gallery extension and choose from a list of prebuilt all-in-one options. In Drupal, however, the trend in


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.