2009-04-28

Plone vs Joomla, Drupal, DNN, Community Server

A fellow Twitterer (@visualmatters) is considering several CMS platforms. The subject is much discussed elsewhere, so what is shared here represents some personal experiences that may be under-reported elsewhere. Principally I compare the options for Plone vs. non-Plone, but throw in a couple additional observations.

  • Among this group Plone, and possibly DotNetNuke are the most polished from an engineering point of view. This means they tend to have better managed open source community volunteers behind them, and exercise more control over the contributed code.
  • Unlike the other CMS's, Plone comes with its own Python-based object database system, Zope. This is a plus and a minus. Best plus: Zope's system features a rollback, because it can maintain versions of updates made to the content. A great feature. Worst minus: it requires a long-running application server-like process (a la JBOSS) and many hosting companies won't touch it with standard (cheap) hosting plans.
  • Hosting plan alternatives for a newbie include shared ($5-20/mo) in which you are one of hundreds of other websites on a "server," or semi-dedicated (VPS), in which only a few share the server resource, or a dedicated server (rent the hardware for yourself). Most everyone starts out with shared because it's bundled with DNS services, email and webserver administration functions. With VPS and dedicated options, in addition to costing more since more resources are dedicated to you, you must also administer them, such as deal patches, firewall security and maintaining system software. This can be routine, but sometimes isn't. Definitely not for someone who wants to stay focused on the content.
  • Plone is especially strong for group editing and mid-sized projects because it features a well-thought out plan for editorial workflow. The other packages have this feature to a greater or lesser extent, but it's fairly recent, and has a tacked-on feel.
  • Plone runs over Zope, which is an object oriented database.  The practical benefit of this is that if you suffer a major problem, it's possible to roll back the database -- easily.  This can be a life-saver; the job it saves may be your own.
  • Plone is less well known, less widely adopted (for the reasons mentioned here, perhaps) and thus it has a smaller ecosystem. This means there is vastly less free / commercial add-on alternatives. E.g., if ecommerce options for Plone are more limited.
  • DotNetNuke requires a Windows server, which for some hosting companies costs a bit more because the associated Microsoft stack (complement of software dependencies) is more costly to them.
  • Plone can be reskinned, but it's far more difficult to do so than with Joomla, DNN or Drupal. There are also much fewer third party skins, so it's a DIY affair involving some CSS work. The CSS tasking is well managed, but you'll find yourself less well supported in existing forum posts as you go down that road.
  • With the possible exception of DNN, scalability can be an issue for each of these products, though it can be managed with effort. Scalability will required unshared resources -- i.e., not hosted.
  • If you're going to perform lots of Flash hacking on the site and use lots of third party widgets, it's harder to do with Plone, but not impossible.
  • I found Community Server a bit more difficult to reskin, but it's been awhile.
  • Newbies are well served to sign up with Godaddy, or a hosting firm like them, because they offer preconfigured setups for Joomla, Drupal, Community and DNN. You can try each of them and switch them out pretty much on demand. Opinion varies, but I've found their customer service to be mostly adequate, and certainly they're well staffed compared to some. For Windows, you might look at Alentus or Aerohost.
  • Drupal has market momentum because some recent high profile sites were built to support White House initiatives.
  • I found the volunteer management behind Joomla and Drupal to be somewhat less disciplined than Plone's.
  • The LAMP stack (Linux, Apache, MySQL, PhP) used for most Joomla and Drupal implementations is increasingly stable, but has a history of security issues not dissimilar to Windows. Because it's widely used, it's got a bulls-eye on its back. In addition, the CMS's themselves have experienced some vulnerabilities. One needs to monitor this and ensure patches are applied quickly.
  • DotNetNuke has probably the most economically viable third party add-on ecosystem. This means that, as a very general rule of thumb, the add-on offerings are deep, diverse, better supported overall, and less likely to be free.
  • In this group, I found Joomla to have the fastest implementation cycle. I was able to build a creditable multipage website with decent practical functionality using a low cost skin and a number of free plug-ins -- in 2 comfortable days. It worked, I was generally satisfied, but I came away from the experience shaking my head at some of the components' documentation and uneven quality.
  • This might seem counterintuitive, but take a look at the add-on packages for the CMS's under consideration. You might find something indispensible there that will save you lots of time. It's possible switch CMS's later when requirements become clearer.
  • I use Sharepoint on a daily basis, but for various reasons that are a bit involved, it's typically more suitable for corporate enterprise situations (though there are several things that it does extremely well that no other CMS I am aware of can do yet).
  • I have also started to use Google Sites. Google sites is quite economical at $50/yr, but is too new to recommend for anything but a very simple site. This most certainly won't be true a year or two from now, but for now it's somewhat difficult to make Google Sites look as good as even a Blogspot page.
Since posting this message, @cchodnicki pointed me to the R2I.ntegrated comparison project, which if nothing else will get you thinking more exhaustively about what capabilities might be needed in a CMS for your application. There are numerous other comparison sites worth visiting when the choices are less numerous.

2009-04-05

Bigger not Better? Extended Chase Outage


I have a credit card account that has been migrated through bank acquisitions twice (Providian to WAMU, WAMU to Chase). I have no idea what the SLA objective for this Chase operation is, and perhaps the site has been up at times during the night, but an apparent full-shift outage of more than eight hours seems excessive.
  • The timing is unfortunate. Because of tax season, the need for weekend consumer access to transaction detail is higher than usual

  • If there was any notification, it was not through email, a channel that generally survives outages (Comcast's reported outages yesterday notwithstanding)

  • The outage comes at a time when WAMU customers are just beginning their experiences with Chase
If the outage is as long as it appears to have been, I would not certainly not accept this SLA as an IT manager for a world class bank that has been given preferential treatment during the bailout. But, speaking as a pragmatic customer, ordinarily, a one-shift outage is manageable. Planned outages should be accompanied by email notifications. I could live with that, though I'd be grumbling.

Investors and pundits seem to accept as gospel that consolidation leads to economy of scale, which leads to better service per unit cost to consumers and businesses. There are many reasons to question that. Normally I would point to deteriorated customer service as the principal indicator of Company size, but perhaps there are technology deficits as well. Entrenched IT enclaves may be less likely to demand SLA improvements during periods of consolidation and service coverage expansion.

For example, the Chase system stores much less transaction data online than did WAMU. Is it unreasonable in today's world of 7GB Gmail, unlimited Yahoo email, and unlimited Godaddy website disk space, to ask for a couple of years' detail online? Rather than telling WAMU customers that they would be upgrading their systems to match WAMU's online level, instead WAMU customers were merely told to download their data before the consolidation.

The consolidator's mandate --backed by investors and managers willing to accept the nonproductive capital consumed during many consolidations -- Do More With Less, seems to mean unapologetically telling customers to accept less.

2009-04-01

IE8 Tab Save/Restore workarounds

A handy feature seemingly removed from my current version of IE8 is save/restore of tabs between sessions. This blog entry from tipandtrick.net (and I'm sure there are other posts addressing this) suggests some workarounds. The built-in solution is Tools Restore Last Browsing Session. The workarounds aren't as convenient as the feature as implemented in other browsers, but it's better than relaunching 20 tabs.

Update My colleague Mark Sowul observes that he likes Tools => Restore tabs "much better since you don’t need to proactively choose to save the session (plus the restore when crashing which was a big problem for me in IE7) but I set my homepage to about:tabs and there’s a link right there to restore session. Also if it ever “forgets” as is the case from time to time you can go to user\app data\local\microsoft\internet explorer\ and restore a previous version of the “recovery” folder."