Kivi Leroux Miller lists a few pet peeves about nonprofit sites she’s seen which don’t provide the freedom or flexibility that the nonprofits need, due to some choices the consultant has made:
1. Not using a standard content management system.
2. Not explaining how to use the content management system.
3. Not creating adequate space in the design for timely updates.
Hard to argue with that. We’ve helped a number of orgs move off of a restrictive proprietary system or old school HTML and gain control of their sites. There’s no reason not to these days. Part of our philosophy (which ties in with the use of open source solutions) is to empower the orgs and not create dependent relationships. We let them have as much control of the site as they want and are able to have, and to be free to move to different hosts, different consultants, etc. as circumstances demand.
I would also add one more item, which is:
Not informing the nonprofit staff that there will be security updates to their site software and not providing them with a system for updates (either by training them to do it or providing a simple and affordable service for maintaining the site). We’ve had a number of groups who come calling because they had their site built in a CMS with a bunch of add-on modules and then were left alone. Security updates were released, but their sites weren’t patched, and suddenly the site is down or defaced. Nobody wants that.
This one is courtesy of a connection made at the #11ntc last week. We have a partner with an old CiviCRM database, upgraded many times over the years. At some point in the past, the upgrade failed to run completely (whether due to a bug or a server misconfiguration or something else) and now the database generates errors on every subsequent upgrade. The problem lies in a part of the database that isn’t used by our partners, so we haven’t invested a lot of time into figuring out how to fix it. Last week at #11ntc, I attended a CiviCRM session and posed the question to see what would be suggested. One of the other participants volunteered to share the solution with me and later emailed it to me (Thanks, Frank!). Behold:
Ensuring Schema Integrity on Upgrades
When a CiviCRM site is upgraded to a new version, there are frequently changes to the structure of the database. This may include adding or dropping tables, columns, indexes and foreign keys. Generally, the SQL upgrade script provided with each new version does a decent job of modifying the existing database to match the new schema.
However, there are occassionally issues during the upgrade which prevent a full implementation of the new schema. These issues generally show up as error messages or warnings during the upgrade. The procedures below are designed to reload the data into a new database which contains the exact schema needed to upgrade to the new release. We recommend you follow these steps if you’ve experienced any unexpected database errors or warning during an upgrade. We also recommend following these steps if your database as been through several version upgrades.
After running these steps, you can be confident that your database schema matches the current production version exactly, with all indexes, foreign keys, defaults and other constraints…
The picture’s not great (it was taken with a cellphone from the back of the room) but as we catch up from our time at the 2011 Nonprofit Technology Conference (#11ntc) we thought we’d post a few items here as well. Below are our “live-blog” tweets from the plenary session and capture some of the important points he made:
Dan Heath: find what’s working and do more of it instead of just focusing on problems. #11ntc
Heath: instead of analyze-think-change, it is usually see-feel-change. #11ntc
Heath: don’t abuse pity and guilt as motivators. Why aren’t we selling hope? #11ntc
Heath: shape the path for the user, it’s easier than trying to change the user. #11ntc
Heath: if you want to make change, give yourself permission to fail. Like kids learning to walk, we will fall. #11ntc
Unfortunately, the internet and cellphone coverage were so spotty that we didn’t get the chance to do a lot of liveblogging from other sessions. We are @cedcoffice on Twitter.
Idealware has updated their 2009 report as of Dec. 2010. As expected, the list hasn’t changed all that much in terms of ranking, but each system has released a major version since the earlier report. They still rank them as follows: Wordpress (for the simplest sites), then Joomla (for somewhat more complex sites), and then Drupal (for the most robust or flexible sites). Note that they also rank Plone, but I’m leaving it off below since the custom server requirement is a non-starter for most small non-profits.
Below are a few excerpts from the summary.
WordPress is a great choice for fairly small (a few hundred pages or less), simply arranged websites. It’s the easiest system to install and understand, and is easy to maintain and update, putting site setup within reach of anyone with a sense of technical adventure… Updating and editing images and text is also quite straightforward, and multiple add-on modules are available.
However, WordPress doesn’t scale as intuitively as the other three systems to support complex sites…There is only limited support for differentiation of user roles, although plug-ins are available to support permissions based on section or type of content.
Joomla is a solid utility player, good for a variety of different situations, and it’s relatively straightforward to install and set up. There’s a bit of a learning curve to understand how the menus, site structure and content work and interrelate, but once you’ve got it the system provides a strong infrastructure for straightforwardly creating useful site structures to support even very large sites. Add-on modules support a wide variety of functionalities, from directories to shopping carts to community features, providing a solid base for many different kinds of sites.
While Joomla supports more complex site structures than WordPress, it is not as flexible as Drupal or Plone. Each piece of content is typically associated with a single page. This makes the system more straightforward to understand, but can be cumbersome to update and limits very advanced structures (like structuring a site around a multifaceted taxonomy)…
Joomla’s latest release, version 1.6, adds robust permission features to allow people to add, edit or publish information based on site section, content type or more…
Flexible and powerful, Drupal is a great choice for more complex sites. It supports a wide variety of site structures — with widely used add-ons, you can define very detailed rules as to what content should be displayed where, and build your own custom content types. It has particularly strong support for Web 2.0 and community functionality, including user-submitted content. It’s also easy for content administrators to find and update content — once you have installed a WYSIWYG editor to let them format the text, which does not come out of the box.
But Drupal’s power comes with complexities. Understanding what the system offers and how to configure it is more difficult than WordPress or Joomla. The administrative screens for configuring a site have a huge number of options and settings, making them harder to interpret. And the flexibility of the system means it’s important to think through the best way to accomplish what you want before diving in. Most people will want to hire a consultant familiar with Drupal to help them set up a site rather than trying to go it alone.
Drupal’s latest release, 7.0, includes a new administrative interface that makes administration and content editing more intuitive, and adds the ability to create custom content types without an add-on…
[Shameless plug, regarding the fact that “[m]ost people will want to hire a consultant familiar with Drupal to help them set up a site rather than trying to go it alone”… we are such a consultant (and we also work with Joomla). But we are a non-profit and we only work with non-profit and social justicey groups!]