The best laid plans of mice and men…

Entries Tagged as 'Content Management'

I’ve was waiting for Drupal 7 to do any major work; but with Alpha 2 only barely out (as of writing this) I decided to go ahead and use Drupal 6 and cross my fingers that the upgrade would go reasonably smoothly.

Drupal 7 will be released when Drupal 7 is ready for release.

NOTE: Drupal does not maintain any backwards compatibility; while they do support upgrading between minor and major revisions it is possible that you may be using a module that does not have [and will not have] a compatible version.

Drupal is an open source software solution; you can read about the history on their web site, as well as get a little better feel for the zen of Drupal development and developers.

Drupal is a Content Management System (CMS); and in all fairness, I would call Drupal more of a Content Management Framework or as Drupal itself call it a Content Management Platform.

Drupal talks about it’s organization in terms of a “stack” (or layers) and “objects”… and glue that binds and manages these to form a web site.

Unlike some of the heavy weight CMS products on the market Drupal allows a user to build a fully custom web site through custom theming and customizing object interaction. And you can see from the list of sites that use Drupal it’s amazing what has been done (and can fairly easily be done) with Drupal.

Now for the fine print.

Drupal isn’t easy to learn, and you’re not going to be building an incredible site with Drupal ten minutes after installing it (though it is very straight forward to install).

First, you need to wrap you head around the Drupal model, and then you have to think about your web site in terms of object relationships in a very database centric model… and it’s very likely you’re going to have to read, play, and learn (a lot).

Why put this much effort into learning a tool to build a web site?

Well, clearly if you’re building a one or two page web site you’re wasting your time. In fact if you’re building hundreds of one or two page web sites there are much more efficient tools to use… but if you’re building a large (complex) web site, that you have a very specific user experience in mind for, and it will be dynamic (meaning content and maybe even appearance will change) then you should be interested in Drupal.

Drupal is very power; Drupal is very complex; Drupal is what Drupal does…

The real power of Drupal is that maintaining a well designed Drupal site is straight forward, making sweeping changes to a well designed Drupal site is straight forward — and all of that is largely irrelevant to the size of the site.

It’s a lot of work to learn Drupal; particularly if you’re only going to build one complex site in your life; but if you’re a consultant, or you’re going to make a career out of building (or re-building) web sites… it’s a tool you will want in your toolbox.

Content Management Systems (CMSs) strive to make maintaining a web site simple; they generally are focused on allowing one person or many people to effectively contribute and edit content, change the overall appearance (without needing to re-enter content), produce reports, etc.

Many CMSs have a fairly steep learning curve before a user can build and deploy or even manage a site.

Concrete5 is different.

Concrete5 makes the task of managing a small to medium size web site as easy as using a WYSIWYG editor. I installed the software and had it running in less than ten minutes. The administrative interface was straight forward enough that I really didn’t need to refer to any documentation at all to use the product to publish content, change content, and add pages.

Downloading themes required me to register for the Concrete5 Market Place (registration is free, and many of the downloads are free, but some of them are not).

Concrete5 core is open source, and free; some of the add-ons for Concrete5 are free, some are not. Concrete5 actually started as a closed source, commercial CMS, which recently became an open source (and free) product. Concrete5 software can be downloaded and installed on your web site / server, or you can run a hosted site on Concrete5.

Concrete5 includes a RSS/ATOM feed add-on (I actually wrote one that’s a great deal more flexible for use on my web site, but you get this for free with no work) which makes it easy to provide live content on your web site. Additionally there are free Flash, Google Maps (you need a Google Maps API key to use it), YouTube, and several other free add-ons as well.

One great feature of Concrete5 is that it keeps page revisions, so it’s easy to roll back to a previous version of a page; or to just see what’s changed (I do this on web sites I author from scratch using a source control system — and many CMSs provide this ability, but not as cleanly and as simply as Concrete5).

Overall, Concrete5 is simple, and will likely handle the vast majority of user’s needs — though a two page boiler-plate web site will handle the vast majority of user’s needs, so that’s not a high mark.

Snippy remarks aside…

If you can use a WYSIWYG editor, and you understand simple drag-and-drop paradigms and you’re comfortable using a web application and moving through menus you can maintain a web site. You might need help setting up the web site, and you likely will need help installing the software — but even those are straight forward and something you could learn in less time than it would take to do simple tasks in a more sophisticated CMS.

The short of it, Concrete5 has a very low learning curve (almost no learning curve indeed); and will allow most any user to build and maintain their own web site with [virtually] no training.

The number of add-ons available for Concrete5 is small; but it appears from reading the information on their site and several other reviews that the add-ons all work, and work together (which isn’t necessarily the case with other CMSs). Though as I’ve already enumerated, many useful add-ons are available and free.

For users who understand CSS, HTML, PHP it’s very straight forward to build your own themes; and actually extending Concrete5 would not be a daunting task.

What I like about Concrete5…

It’s easy to install, easy to use, and provides most basic functionality that a CMS should provide — and the core is free. It does not overly abstract core parts of a web site (no doubt that’s where it get’s it’s name). Concrete5 has a lot of potential.

What I don’t like about Concrete5…

The web site goes out of it’s way to criticize other content management systems (and that to me is ridiculous; both Joomla and Drupal are capable of being used to build more sophisticated sites — but both of those are much harder to use to build a simple site); it doesn’t support tables prefixes (which means each instance of Concrete5 needs it’s own database, and it’s dangerous to try and share a database between Concrete5 and any other software (this is significant because some hosting plans greatly limit the number of databases you are allowed); it’s a relatively new “community” project, and thus does not have a large body of people working on it or eyes reviewing it (which means it’s more likely to have security issues than some of the more mature CMSs).

I’m neutral on the fact that parts of Concrete5 are offered free, and parts are offered at a (generally) modest price. I agree that developers are entitled to make a living off their software, and as long as it doesn’t become a razor/razor-blade type model I’m fine with it; but success often breeds greed (like familiarity breeds contempt).

One thing to keep in mind: always select the right tool for the job.

What Concrete5 does it does well; but decide what it is you want to do before you select the tool.

CompactCMS is an extremely light weight and fast Content Management Solution (CMS). Actually it might be a bit of a stretch to call it a CMS, it’s more like a content management foundation.

CompactCMS is an open source software project and is totally free (nothing related to it has any costs or restrictions beyond the Creative Commons License).

No question it makes managing a small site very easy, and it has a huge selection of (free) CSS templates that offer a wide variety of layouts and appearances.

Why do I say it’s a foundation?

Simple, it provides the basic of editing pages and content, builds a sitemap — but it really doesn’t offer modules that provide enhanced capabilities. Now in it’s defense, it does provide the ability to build pages that can call PHP directly, but it doesn’t provide any framework to use managed content within your PHP code (well — you can access the MySQL database directly, but there’s zero abstraction).

Several days ago I made a comment about most users only need a two page (mostly static) web site — and that’s true, and CompactCMS certainly provides that ability to users with very little understanding of web editing (it certainly provided more than that to users who have some understanding of web editing).

The main problem with CompactCMS for users who just don’t know anything at all about web technology is it requires a little understanding of how to setup a database, import a schema, and edit configuration files (by hand). Yeah, that’s not really much to ask a techie for sure, but there’s lots of people who know where the power button is on their computer, but re-arrange the icons on the desktop and they’re lost…

I personally like CompactCMS — I’m not sure I have any real use for it, but it would be fine to use to setup simple web sites for clients that actually wanted to be able to make modest changes to the site themselves (remember, most low end web site offerings don’t include unlimited changes — and generally don’t include any changes).

Back on the 17th of November Google announced the generally availability of Google Music…

We’re excited to announce that Music Beta by Google is officially graduating from beta today! Google Music will remain a free service, and you can continue to store up to 20,000 songs in your personal music library.

As well as an updated terms of service, and a music store (that works via Android Market).

The terms of service clarifies that each individual uploads and maintains his individual copy of a music file (unlike Apple’s service which may well substitute your copy with one from the iTunes store).

And while I think Google Music is a great value (it’s free), I think it might still be a little buggy…

My music library has in excess of 30,000 MP3 files, and while I understand that Google will not upload all of them, and that I might not be able to control exactly which 20,000 songs they upload without creating a copy of the songs I have in a separate directory structure, I’m at a loss as to why I only have 19,088 from my collection uploaded — and the error I see in the load is “too many files in account”…

While I wouldn’t have been shocked if I got 19,999 songs uploaded, it seem to me that there’s definitely a deficiency in Google’s uploader and it’s logic for determining when you’ve reached 20,000 songs in your library.

Like I said, I think the Google Music service is a good value; but it does lack the ability to use it as a “backup” of your music library (there’s really no facility to retrieve the music you upload, other than the very painful, manual effort you’d have to put into retrieving files from the cache it builds as you play them and renaming them).

An alternative is the Amazon Music service; they only provide 5GB free, but for a modest yearly payment they do allow unlimited (Google hasn’t even set pricing for raising the limit on their service); and with both the song you purchase don’t count toward your limit. The upside of the Amazon service is that it does work nicely as a backup; you can retrieve the music you upload.

For the time being, I’ll use the Google Service; but my guess is that I’ll just migrate to Amazon if Google doesn’t really focus on making the service work correctly, and provide for additional storage.

Joomla is one of the most popular open source Content Management Systems (CMSs) around.

The core of Joomla is open source and free to use; however, there are many add-ons and themes for Joomla that are commercial. In fact, what I found is particularly with themes, almost none of the free themes are what I would consider “professional”.

Joomla has an extraordinarily steep learning curve. You can do almost nothing with the CMS right after installing it without reading a fairly significant amount of documentation.

Even after reading the documentation, it is fairly involved to differentiate a Joomla site from every other Joomla site (which is why generally it’s so easy to identify a site that uses Joomla). Don’t get me wrong, you can build a very customized site using Joomla — however, mere mortals might have to hire a consultant.

Joomla to me is unnecessarily complex technology looking for problems to solve in a way that creates job security. Did I say that? LOL

If Joomla does what you want, and Joomla will create the look-and-feel that you like, and you can understand (and are comfortable with) the paradigm — then have at it. It certainly works, and it’s very solid. However, you should consider the total cost of Joomla before you dive head on into it (and while the core system is free, you may find that themes, modules, and consulting adds up quickly).