Earlier this month, NetSquared was generous enough to fund my attendance at the Lullabot Drupal Intensive workshop in Providence, Rhode Island. Drupal is a free, open-source content management system that allows non-technical users to update your site and is capable of powering blogs, community sites, action-oriented campaigns and social networks along the lines of MySpace and Facebook. Lullabot, a Drupal development firm that involved in much of the Drupal development, has a keen interest in Drupal for nonprofits.
In return for NetSquared's generosity, I wanted to post some tips for nonprofits thinking about using Drupal for their sites. I'm convinced that, under most circumstances, Drupal can be a powerful resource for online advocacy and social change.
Background
To date, I have built four full-fledged sites with Drupal for the Genocide Intervention Network: Ask the Candidates (Drupal version 5), the Darfur Congressional Scorecard (v4.7), Time to Protect (v4.7, no longer online) and Power to Protect (v4.6, no longer online). GI-Net's main site was also developed in Drupal (v4.7) by an outside firm, as was GI-Net's student site, STAND (v4.7). My personal site is in Drupal (v5) and I'm working on releasing an e-commerce site and a community events site in the near future.
Although I have a working knowledge of basic PHP, on which Drupal is based, my work primarily is in HTML and CSS — for the majority of things our sites need to do, it's mainly a matter of finding the right modules (plugins) and then themeing (designing) the site to look the way we want. By and large you don't need to have a lot of programming knowledge to create effective sites in Drupal.
When to Use Drupal — and When Not to Use it
Drupal has a number of strengths:
- Once you understand the terminology and basic structure of Drupal, it's easy to set up sites relatively quickly, with advanced functionality simply "dropped in" by way of modules.
- Drupal is relatively easy to theme, especially in version 5 and even more so in the upcoming version 6 (likely to be released in early 2008).
- Drupal is extremely search-engine friendly, helping get your site to the top of search engine lists with minimal effort. With a few tweaks and additional modules, it can be even more effective.
- Drupal is relatively scalable, able to power large sites as well as small. For very high-traffic sites, this will take some tweaking of the server settings, but this is true for pretty much any content management system (CMS).
- It's free! More importantly, it has a large, robust community of developers regularly updating both its core features and plug-in modules — also for free! And when you can't swing the free-software cost — staff time — there are plenty of Drupal developers out there. For nonprofits looking to "act out" social change, Drupal is a welcome addition to for-profit corporations upon which you have to depend for any updates or bug fixes.
- Because it's open-source, Drupal won't lock you in to a proprietary system that mangles your data or makes it difficult to switch to another CMS in the future. Additionally, it's open nature allows for more frequent integration with other software and web services — everything from Flickr to Salesforce, with rumors of Democracy in Action on the way.
- Of special note, Drupal has tight integration with CiviCRM and equally free, open-source contact relationship manager (also available for the Joomla CMS). If you opt to use CiviCRM as your CRM for donors or members, you can aggregate useful data like donations through the website, membership dues, attendance at events, subscriptions to mailing lists and participation in local groups, as well as the usual searching, sorting and categorizing of contacts available in any CRM.
- For you geeks out there, it uses standards compliant (at least in core) semantic code and is built on the MVC model.
Many prominent sites, both commercial and nonprofit, have been built on Drupal, including MTV.co.uk, Sen. Chris Dodd, The Onion and NetSquared itself (see a full list). One of my favorites, just recently released, is WITNESS's The Hub, built by the fine folks at CivicActions. (The Hub was also a proposal for the 2007 NetSquared Conference.) I think The Hub really shows the potential for social change that Drupal-powered sites can accomplish.
When might you not want to use Drupal?
- For those completely new to Drupal, it can have a significant learning curve. We're not talking Photoshop here, but much of the terminology and structure of the site can be unfamiliar to new users, even those familiar with other CMSes. If you need a hot website tomorrow and can't spring for a paid developer, it might make more sense to go with a CMS you already know.
- Drupal is an excellent platform for blogs, and allows you to build in a lot of community and social-networking features that can strengthen your blog's appeal. However, WordPress, another free open-source software, is specifically oriented toward blogs. The learning curve is significantly less, and it's somewhat easier to theme (design). If you're primarily a designer and you want a straightforward blog site without having to ever see a line of PHP code, WordPress may well be a better option. Like Drupal, it has an excellent community of developers and contributers, and many of its plugins can also stretch its capabilities to encompass social-networking-oriented functions.
- If you absolutely need a website tomorrow — a simple blog or "brochureware" site giving the basics of a new campaign and a place to post updates and press releases, your best bet may be Joomla. Like Drupal and WordPress, it's free, open-source and has lots of developers, many of them involved in nonprofits and advocacy campaigns. It is somewhat harder to design to not look like "a Joomla site" but there's no question that it's faster to set up and publish a simple website.
- Free software is great and all, but if you have no budget and no design or programming resources in-house, you may want to stick with that commercial CMS you know — or even Dreamweaver or FrontPage sites. The cost of free software is the development time, and that isn't an insignificant concern. If you're planning a big campaign and have a budget or in-house developers, I highly recommend one of the open-source CMSes because of all of the strengths mentioned above (and particularly that they won't lock you into some horrible proprietary code nightmare). But not every nonprofit will have that luxury, and you should carefully consider if you have the money or staff time to build a site from scratch.
- Above, I mentioned that many Drupal modules offer integration with other software and web services. This is true, but not for every piece of software out there, and not always as robustly as you might like. In particular, if you have a lot of tight integration needs and already have another piece hosted with another service — a donor database or an online action suite, for instance — it may make sense to build your website using their own CMS to allow for the tightest possible integration. You'll give up some of the cool Drupal functionality and customization possibilities, but when it comes time to run those end-year reports, you just push a button.
- Drupal is built by volunteers. Some of them are paid web developers who voluntarily contribute their work back to the Drupal community. But nothing is guaranteed — that module you depend on might have a bug that doesn't get fixed for six months. There are ways to help guard against this — for instance, by sticking to modules recommended by others, and checking to see how often past releases have come out, but it's definitely something to consider. In all of the sites I've built Drupal on, only one mission-critical item has ever had a serious bug that took a couple of months to get addressed. That said, if you do have developers on hand or can pay others, Drupal's open-source nature makes it easy to find and squash the bugs yourself as they occur — no waiting on Kintera or Convio to get around to fixing your pet peeve with the software.
Drupal Resources for Nonprofits
Drupal for Good is the primary Drupal-centered site for nonprofit and charitable discussions. (For the mischievous, there's also Drupal for Evil.) There are plenty of geographically-based Drupal groups — see if there's one near you!
There's lots of general Drupal support out there, including the handbook documentation, mailing lists, IRC, forums and blogs. (If you have questions about a specific module, the best practice is to go to that module's project page on Drupal and post an issue — among other things, it's far more likely your questions or concerns will be answered than if you post on the general forums!) There are also books on Drupal as well as fee-based training from groups like Lullabot.
Want even more? Try the weekly Lullabot Podcast or browse through the step-by-step Drupal Dojo screencasts. One of Drupal's strengths is its vibrant community!
I'll be posting more about how Drupal can be useful to nonprofits — including case studies — in the near future. If you have any comments or suggestions for resources, please add them in the comments!
Comments
I will consider it!
Quite interesting. I will consider this system. I heard about it previously, but as I keep researching, Dupral appears to me to be a good choice!
Nice article,Thankyou.
Nice article,Thankyou.
Appreciate Your Overview
Very good summary and appreciate the links. We've also been looking at some Drupal sites linked from http://buytaert.net/tag/drupal-sites?page=1. We are in the midst of setting up a Drupal site for our nonprofit. We are debating whether to switch our internal databases to CiviCrm and take advantage of gathering input from forms that can automatically dump into our CiviCrm database. Did you hear how CiviCrm compares to other databases like Filemaker on the Mac? We don't do anything very fancy with our databases.
Great resource
Thanks for posting this, Ivan.
Britt Bravo
Community Builder
NetSquared • A Project of Tech Soup
www.netsquared.org
bbravo@techsoup.org
Skype:bebravo
great post!
this is an excellent overview, Ivan, thanks for posting it! It was great having you in Providence - hope to cross paths again soon!
Hi, Thanks for very
Hi, Thanks for very interesting article. I really enjoyed reading all of your articles.
Great article. Well written
Great article. Well written and very useful. Thanks alot!
Joomla
This is not really an accurate recommendation of Joomla, to say it is good for "a simple blog or "brochureware" site giving the basics of a new campaign and a place to post updates and press releases."
Using Joomla to create brochureware is possible but hardly stretches its capacities. Using it to blog is like showing up in a limo at the neighborhood BBQ.
It is true but almost an understatement to say Joomla is very good for rapid deployment. After installation of the Joomla CMS, it's possible to extend it massively but never use FTP again. Ease of learning and using Joomla also aids rapid deployment, as do its powerful rich text editors, like JCE. (Drupal comes with *no* rich text editor and is limited to tinymce and fckeditor as extensions.) Joomla was originally built explicitly as a commercial Content Management System with a very intuitive, graphical administrative interface--the major, major failing of Drupal and other FOSS web publishing engines. Drupal's "blocks" are a dim analog of Joomla's "modules" which can be installed, configured, and moved around a template or theme rapidly in Joomla. This is not possible in Wordpress (wp widgets are only distantly similar) and is only minimully, laboriously possible in Drupal. Major layout changes to the location and appearance of content, scripts, and design elements is possible in seconds without leaving Joomla's UI.
Drupal without extensive alteration is what is used to call itself--"community plumbing. " It's a powerful social network and multi-user blog with wikilike features that can operate any number of separate websites.
Joomla is also built by volunteers, and the vast majority of its extensions are free of charge. Some are not free of charge, and these are inexpensive, usually guaranteed, and buy you a level of certainty, trust, and support that the product won't be abandoned or a vulnerability uncovered and not rapidly updated. That is not the case with Drupal.
By the same token, what you say about Drupal's more tenuous and confusing situation in third-party extensions is a serious liability you have to take into account, but this is not really any less true with Joomla. Exploits abound for both systems. You need to keep watch -- and Drupal uniquely helps you with that now by internally notifying you of updates and linking to them. Joomla lacks that centralization an support, even with its core. (The most you get is a link to check the latest release, though you could set up internal RSS reader in the admin UI to feed you this information quite easily...) Some Joomla extensions do a little more, and some even have an auto-update feature.