January 10th, 2011
Web Design & Development
In the spirit of the Holidays, the collaborators of Dutch-born CMS Drupal officially delivered their long-awaited version 7 on January 5. (See Mike’s preview of Drupal 7 for more information.) This new version comes 23 months after the release of version 6. The Drupal.org homepage confidently describes version 7 as "easier to use, more flexible and more scalable." So, is it now ready to use in new sites? And, just as importantly, is ready to migrate existing Drupal 6 (D6) sites to Drupal 7 (D7)? I attended San Diego’s SandCamp 2011 to find out.
SandCamp 2011 was held in the beautifully located, and optimistically named, San Diego Hall of Champions Sports Museum. The location in Balboa Park couldn’t be nicer. The museum’s layout is perfectly suited to such small conventions with 4 large lecture halls scattered around 3 stories. The only complaints might be seriously inconsistent wifi connections (which disrupted quite a few lectures), and lack of laptop power plugs.
The keynote address was given by Kieran ‘Amazon’ Lal, who works as ‘Drupal community adventure guide for Acquia’ and was introduced as ‘Drupal Royalty’. Lal’s keynote started out fantastically with stories of flaming Sambucas, traveling alone across the Amazon, and successfully convincing the Whitehouse to use Drupal–with notes on a napkin. Drupal has since further increased its presence into the US Federal web space this month, as 90 new members of the House of Representatives will be using new Drupal websites–all using D7, I believe he said. It is expected that ‘thousands’ of other Drupal sites are expected from the Federal government in the next year or two. Busy days for DC Drupal developers coming up.
The keynote also mentioned these interesting tidbits:
He also made heavy comparisons of Drupal to competitors WordPress and Joomla. A slide showed that WordPress takes 55% of CMS market share (although only 24% of sites use a CMS). Drupal takes a, not terribly impressive but certainly large, 5% of CMS market share. Lal described WordPress and Joomla as fine CMS’s for small websites, but lacking in the large & enterprise website space. Drupal, he said, is aiming itself to be a platform to build corporate, product, community and internal sites.
Much of the new D7 functionality lies in the Drupal ORM, based loosely around PHP PDO (view a taste here). The new database ORM looks to be written from scratch, as opposed to using an existing project like Doctrine ORM. The goal is to truly make Drupal database agnostic, which seems to be a reality now.
The new database classes are also a step in the Object Oriented direction for Drupal, which is known for staying true to its procedural codebase. This non-OO codebase was touched upon by Tom McCracken of LevelTen Design. ‘I came from a Java and Ruby-on-Rails background where everything was Object Oriented. When I started working with Drupal, I was like, what the heck is this?’. McCracken goes on to state that he became a fan of Drupal because of it allows ‘Web Leaders’ to easily engage all the fast changing social networks of today. He describes Drupal as being a tool for companies in the top 20% of their trade–the Web Leaders.
But back to my original motivation: is D7 ready for prime time? Some opinions came from a couple lectures by Kevin and Patrick Wall of KWALL on the changes to modules in D7. The lectures basically amounted to a warning that just about all features of D7 are different than D6, and to be wary of updating to D7 from D6. Many database table names are different, the database ORM and non-ORM queries have a different syntax, the AHAH/AJAX processes are rewritten, ‘lots of major changes to the files handling system’, comment system has been overhauled, to name a few major differences. Popular D7 modules which are not ready for production sites include: Organic Groups, Ubercart, Page Title, Calendar, Metadata, Views, and Skinr (used in the popular Fusion themes). That is just a short list.
I asked them if they plan on migrating their clients’ D6 sites to D7. "Not anytime soon," said Patrick. "If anything, the smaller sites which have a maintenance agreement would be the ones to get upgraded. Some of our large sites have thousands of lines of custom code. So upgrading those…", he laughed, ".. its not really in the plan." Kevin Wall suggested that its often better to wait until a new site is made to replace the old one before using a new major Drupal version, then re-inserting node data manually.
From speaking to some people, and from my own experience, I’d say that I’m just as reluctant about pushing clients to buy development-hours for upgrading from D6 to D7. There are certainly lots of neat improvements in D7 that I can’t wait to start using: a built-in admin menu which will probably make the ‘Admin Menu’ module obsolete, bundling poormanscron into core, and (better late than never) a UI mechanism for updating modules on the fly (WordPress-style). But is D7 stable enough? Looking at past history, D6 released 4 large updates within 6 months after its release. One should probably expect the same for D7, and therefore shouldn’t be so quick to adopt such a new platform.
A telling moment occurred at the end of the Walls’ final lecture. An audience member pointed out that Patrick seemed glum describing D7 in his presentation. Patrick remarked he is in fact excited about D7, but is mostly worried that relating migrating pitfalls would discourage people. I have to think that perhaps being discouraged is better than being too optimistic about a difficult migration process. I look forward to this summer, when I personally believe D7 (and all the common modules we use) will truly be ready for productive use.
There are no comments yet.