First Impressions, Drupal 7

On 15 September 2009, I downloaded and installed the Drupal 7.0, Unstable 9 development snapshot of the upcoming Drupal 7.x release.  I did two installs: one on my desktop and one on the Linux server used for testing here on my home network. 

The desktop runs Vista Ultimate 64-bit, SP1 and uses WampServer as its LAMP environment.  The configuration includes:

  • Apache 2.2.11
  • PHP 5.3 or PHP 5.2.8
  • Mysql 5.1.30.

The server runs Ubuntu Linux 9.04.  The LAMP configuration includes:

  • Apache 2.2.11
  • PHP 5.2.6
  • Mysql 5.0.75.

Installation

I did not notice much of a change between the Drupal 6 and Drupal 7 installation procedures.  One thing I did notice was the changes in the terminology to create a more user friendly experience. 

Other than the usual Linux file ownership and permission inconsistencies I encounter when installing applications on the Ubuntu Linux server, installation in both environments was uneventful.  PHP did run of of memory during the install on the server, but that was not really a Drupal 7 problem.  I upped the PHP memory allocation from the default 16M to 128M and that fixed the problem.  I need to check this later and determine what the real PHP memory requirement for a Drupal 7 install is.  I'm sure it's much less than 128M.

Administration

Drupal 7 introduces a number of changes in the administrative backend.  The most obvious change is that if you are logged in as the administrator, a menu appears at the top of each page that contains links to the various administrative functional areas. 

drupal7fp

If you have ever inadvertently destroyed your public theme as I have, you really learn to appreciate Drupal's option of having a separate administrative theme.  Prior to Drupal 7, I typically used the Garland theme for administration.  I was happy to see that Drupal 7 includes a one-column, fluid width theme called Seven that is tailored for use with the administrative backend. 

  drupal7db

One often heard criticism of Drupal is that its administrative backend navigation is less than straightforward and the terminology is too abstract and/or contains too much technical jargon. 

Drupal 7 has made a number of terminology changes and reallocation of functions to categories to make the administrative backend.  The changes are too numerous to delineate here, but comparing the new administrative backend view to that of Drupal 6 shown below, it's obvious that a lot of time and effort has been put in to make the Drupal 7 administration a bit more user friendly, more intuitive and easier to navigate.  To really appreciate all the changes, one must really install Drupal 7 and work their way through the administrative backend.  It is still far from perfect, but it is a big step forward. 

drupal6db

Core Modules

A list of the Drupal 7 optional core modules are shown on the right.  Modules that are new in Drupal 7 are outlined in green.  The Drupal 6 optional core modules are shown on the left.  Those which are not present in Drupal 7 are outlined in red.

Drupal 6 Core ModulesDrupal 7 Core Modules
What's New in Drupal 7 Core

I guess the biggest news for Drupal 7  is the incorporation of basic Content Construction Kit (CCK) functions in the core (Field, Field UI and File modules).

The Image module incorporates a more sophisticated image manipulation function than previous releases. 

The SimpleTest module provides a framework for unit and functional testing.

The Toolbar module provides the UI for the new top horizontal administration menu.

What's Gone in Drupal 7 Core

The BlogAPI module is gone.   I was initially a  bit disappointed to see it go as I use Windows Live Writer (WLW) quite a bit.  However, it will still be available as a  3rd-party module.

The same goes for the Ping module.  The growth of social networking has resulted in a number of 3rd-party modules that provide this capability plus more.

The Throttle module is also gone in Drupal 7. 

One other thing I noticed is that there is no longer a distinction between "Core - required" and "Core - Optional" modules.   In Drupal 6 and earlier, the Block, Filter, Node, System and User modules were classified as "Core-Required." 

Theme Development

I haven't quite digested all the changes in the theme system; however, at first glance there appears to be a number of  changes needed to upgrade a Drupal 6 theme to one that is compatible with Drupal 7.  You can read about the changes here. 

The goal of these changes is to make Drupal easier to theme.  I guess I'll find out about that soon enough.

Conclusions

From a user point of view, the big change is in the Administration UI, which is a good thing.  I know there there are numerous changes under the hood that make Drupal 7 faster and more reliable than its predecessors.  However, I feel that Drupal still has a bit more work to do in the UI and ease of use areas.  

Disclaimer

Any errors or inconsistencies in the above are no doubt due to oversights and/or technical ignorance on my part.  The authoritative source for information regarding Drupal 7 is Drupal.org.