DrupalCon DC 2009

just after the group photo

March 4-6, I attended DrupalCon in Washington, DC.  I've posted my notes from each session here in my blog, so you (clients, potential clients, and partners) can see and share what I learned about, and so I will have them to refer to later. See the bottom of this page for links to my notes from all the sessions I attended.  I took a handful of photos as well.

The full conference schedule is at http://dc2009.drupalcon.org/schedule -- follow the links to each session for details and videos! 

Executive summary for Interdependent Web clients

Here's what I learned this week that affects you:

Drupal 7 will be significantly more user-friendly than 5 or 6.  However, it won't go beta until September and won't be officially released until some time after that, and modules will become available over the following year.  So we can relax: Drupal 6 is where it's at for 2009.

However, Drupal 5 will become unsupported in September 2009, when Drupal 7 goes beta.  That means that there will be no more security updates and bug fixes for Drupal 5 after that time.  So in the interests of security, we will want to upgrade all Drupal 5 sites (PSDUUA, Smartphone magazine, Smartphone magazine's cart, and iPhone Life magazine's cart) to Drupal 6 before September.  The few remaining rough spots in the upgrade path are in Ubercart, and many of them may be resolved at tomorrow's code sprint... in any case, data should be secure; it's only the site-specific customizations that will need to be redone.

Major publications that have moved to Drupal (New York Observer, Mother Jones, Miami.com) agree that it is vital to reverse the work flow so that content is written for the Web site first, then edit the content online and finally send it to print.  This shift is in progress but not yet accomplished at iPhone Life magazine.

Barriers to commenting -- including logging in and being required to preview first -- drastically reduce public participation in Web sites (Smartphone and iPhone Life magazines).  Recommendation: install the Mollom and Flag modules to control spam, and open up comments to anonymous users.

The Organic Groups module comes highly recommended as a way to keep committees organized online (PSDUUA).  Not only can an online directory be easily maintained and displayed once set up in Organic Groups, but each committee gets its own forums, blogs, etc. without stepping on other committees' toes.

Apparently Google Maps have some serious drawbacks, mainly related to data privacy.  Nothing too scary, but there are better options.  So I'll be retooling my Google Map-enabled sites (PSDUUA) with Mapstraction in order to use maps with less strings attached.

"Cloud computing" (CDN) is the future of Web hosting, and it is already available -- a hosting account can now span multiple servers around the world, and Drupal 7 will be designed to take advantage of this.  However, until the price comes down, there are still many things that can be done to optimize performance on a private server (Smartphone & iPhone Life magazines), and small sites (PSDUUA, Edgewood Descendents, AdProfessional) will continue to perform well in inexpensive shared hosting accounts.

The Semantic Web is finally here, and Drupal is on the cutting edge.  Modules are now available to automatically mark up an existing D6 site with semantic tags that will improve search rankings and enable new ways of sharing information with other sites.  This functionality will be included in Drupal 7, so that in a year's time the content of tens of thousands of Drupal sites will networked as never before.

Search engine optimization (SEO) is no longer a voodoo science.  Now that most XHTML is written by machine, search engines are able to use sensible ways to analyze pages, which means that site builders are now rewarded for responsible, standards-compliant coding instead of sneakiness.  I am a convert to this new breed of SEO strategies and will strive to implement them on my sites.  But first the servers need to be optimized so they can handle the increased traffic!

The way that I conduct training sessions needs some work!  I've learned some good tips and tricks and look forward to putting them into practice.

(more to come)

Keynote: the State of Drupal (founder Dries Buytaert)

session information: Keynote: the State of Drupal

video by David Lanier

Short version: Drupal Rocks!

a brief history of Drupal

So where are we now, and what will be the big improvements in Drupal 7?

Drupal is a movement, so what is its mission?

Knight Drupal Initiative grant winners

Keynote: Is Drupal Moral? (David Weinberger)

session details: Is Drupal Moral?

David Weinburger, co-author of the Cluetrain Manifesto and Everything Is Miscellaneous: The Power of the New Digital Disorder

Keynote: Our Online Identity (Chris Messina)

session details: Keynote: Our Online Identity

incidentally: Chris Messina founded BarCamp.

Drupal in the Newsroom

session details: Drupal in the Newsroom

video by Robert Nelson Vance

Panelist introductions

Workflow

User roles and permissions

Engaging the public

Subscription management

Why Drupal?

Newspaper group at http://groups.drupal.org

Building Church Websites with Drupal

session details: Building Church Websites with Drupal

video by Robert Nelson Vance

Business Analytics in Drupal with Views

session info: Business Analytics in Drupal with Views

Slideshow with presenter's notes: http://is.gd/lXYU
(Be sure to turn on the "Notes on Slide" tab, since the actual slides have almost no text).

The Business of Open Source

session details: The Business of Open Source

Providing Drupal Training

session details: Providing Drupal Training

presentation materials, discussion, etc. will be posted at the session info page above.

Lee Hunter's notes from his portion: http://streamoflight.com/content/training-and-documentation

http://Drupaltherapy.com provides Drupal-specific training for beginners, admins, specific needs (knowledge gaps due to previous learning)

Drupal and the Geospacial Web

session detais: Drupal and the Geospacial Web

Making Dates and Calendars Rock!

session details: Making Dates and Calendars Rock!

video by Robert Nelson Vance

Karen Stevenson, maintainer of Date and Calendar modules

using demo module to demonstrate, organic groups

Practical Semantic Web and Why You Should Care

session details: Practical Semantic Web and Why You Should Care

video by Robert Nelson Vance

Ubercart on Drupal 6

session details: Ubercart on Drupal 6

Advanced Ubercart Usage

session details: Advanced Ubercart Usage

demo site using Sharp Sales theme

Mystery Showcase Site - Higher Education / Museum

session details: Mystery Showcase Site - Higher Education / Museum

video by Robert Nelson Vance

Mystery site unveiled: Sam Fox School of Design and Visual Arts at WUSTL -- currently at http://beta3.palantirbeta.com

Documentation is Hot!

session details: Documentation is Hot!

video by Chris Rowe

If anyone has suggestions for how to make documentation sound actually sexy, they are welcome!

Search Engine Optimization

session details: Search Engine Optimization - slides from the presentation (PDF)

video by Alan Doucette

SEO tactics:

Frontend and Backend Optimization

session details: Frontend and Backend Optimization

Video by DrupalCon

Front End Performance
View more presentations from Konstantin Käfer. (tags: front end)

Front End Optimization

Back End Performance Optimization for Large Sites

Drupal 7

session info: Drupal 7

video by Marc Tan

Webchick got started with Drupal at 2005 Google Summer of Code, now is Drupal 7 Maintainer

What happens during the release cycle?

  1. release the current version
  2. open next version for development ("head") and retire old version (5 will retire when 7 released)
  3. code thaw -- fix things that have always annoyed you!  add features!
  4. code freeze -- slated for September -- just kill bugs, make it stable
  5. return to step 1
  6. port all modules :-(

Should I start building production sites on D7?  No!

Should I start porting modules to D7? Yes!

Drupal is a "do-ocracy" -- what gets done is what people do

Core Maintainers: Dries, Neil Drumm (D5), Gabor Hojtsy (D6), Angela Byron (D7) -- but they just supervise -- others do all the work and get little credit

What's New?

Drupal CDN Integration

session details: Drupal CDN Integration

note: speaker is currently developing a Drupal module and synchronization daemon as his masters thesis.

A Paradigm for Reusable Drupal Features

session details: A Paradigm for Reusable Drupal Features

What's New in Web Development

See session description: What's New in Web Development

not a Drupal-specific session

HTML 5

New browser tools

CSS 3

Client-side XSLT

The Next Decade

session details: The Next Decade

Why I Hate Drupal

(note: I don't hate Drupal; this is the title of a DrupalCon session by James Walker.)  Session details: Why I Hate Drupal

  1. the scary alien head logo -- what's that about?
  2. exponential growth ... but Joomla and Wordpress and even SharePoint are way ahead
  3. Drupal is a CMS, so should make it easy to manage content, but it is still very difficult for most people
    1. list of modules is daunting and misleading
    2. theming section doesn't offer much improvement; more likely to make it worse
    3. unclear how to upload pictures or format text, and input filters block tags
    4. 4400 contributed modules -- where do you start?
    5. documentation is unclear and hard to search, and community is not supportive of newbies
    6. Views 2 interface is really confusing!
    7. upgrading process is brutal
    8. so upgrade on a staging server... but merging is nearly impossible!
  4. so maybe Drupal is a development framework... but limitations of PHP have dictated some weird coding
    1. arrays as objects?
    2. some of our most creative work is justifying our half-assed compromises
    3. we're told not to hack core, but drupal_alter / hook_form_alter essentially build things twice
    4. "Not Invented Here" philosophy sometimes prevents us using external libraries even if they've already solved the problem
      1. PHP has a built-in function for loading configuration files, but we don't use it for .info files!
      2. used to use a 3rd-party XMLRPC library, but we wrote our own
      3. James himself wrote our own OpenID library and now has to support it
    5. frameworks should make our lives easier!  but API is not intuitive at all and many obvious functions are missing
    6. some column names are reused in different contexts in multiple tables, like vid
  5. so maybe Drupal is a community... but growing so fast that nobody knows anybody anymore, so it's hard to work effectively
    1. to our credit, most original community members are still involved
    2. Drupal 6 had 900 contributors, but only 2 could commit patches -- they're great people, but not superhuman and have to understand all of core
    3. anybody can change an issue to "reviewed and tested by the community," so only some testers have credibility, and new contributors don't know whom to pester
    4. not a meritocracy but a do-ocracy ... so "do more" and sleep less and have no life
    5. Drupal is not a movement because only developers are running with it... when non-techies run with it, then maybe it will be a movement
  6. need to choose -- what is Drupal trying to be, and to whom?  Core needs to be useful to somebody out of the box.

Closing Session