Logo home | contact us | FAQ
  About | Programs | Articles | News/Events | Resources | Forum  
   
 

ARTICLES

Using content management software
by Chris Bailey, Internet Rights Bulgaria

2004

What is content management software?

At the most basic level, websites consist of a collection of text files written in a programming language called html together with image files. When viewed with a browser these files combine to appear as web pages. Initially most websites were constructed by people who became experts in writing their own html code just using simple text editing programs such as Notepad in Windows.

As new and more complex versions of html developed, allowing much more versatility in what websites could contain, the job of writing html code became more and more complicated. A range of software tools developed that allowed websites to be constructed using a graphical interface that automatically produced the html code rather than having to write it directly. Examples of programs that do this are Microsoft FrontPage, Macromedia Dreamweaver and Adobe GoLive.

These programmes are best used for producing what is known as static content. Online web pages can be changed and updated using these programmes, but they remain fixed in between the changes. In recent years, however, there has been the growing use of dynamic web pages on websites.

Anyone who has used a search engine such as Google is familiar with dynamic web pages. You enter some text and a web page is created dynamically based on the request you made. The page you are then viewing didn't exist until you made your particular request.

Dynamic web pages are created by using a combination of a programming language and a database. There are a number of different programming languages used; examples are PHP, ColdFusion, Javascript, VBScript and Perl. A range of different database programs can also be used. The database program probably known to the largest number of people is Microsoft Access and some web hosting companies do allow its use as the database for dynamic web pages. It is not really that suitable for this purpose though and most web servers either use Microsoft's more advanced database SQL Server or a Free Software database called MySQL. The most widely used combination is MySQL and PHP, which is also Free Software.

Using a database combined with a programming language to create a dynamic website allows it to include a lot of new possibilities. Examples are: producing a searchable library of documents, evaluating surveys, making customised web pages that change according to the person visiting the site as is done with MyYahoo for instance, and making directories of organisations searchable in a number of different ways. The possibility we want to consider here though is to use a scripting language and database for operating a Content Management System (CMS).

CMS programs work by using the scripting language/database combination to manage website content. They provide a front-end graphical user interface that is accessible using a normal web browser to manage the production of dynamic web pages without the user needing to know how the underlying languages work. CMS makes it much easier for people to create, edit and publish content on a website. Rather than developing web pages using html or a graphical website program, content is entered using relatively simple text entry that requires much less training. This allows non-technical authors and editors to easily and quickly publish their content using simple cut and paste techniques. The content is automatically entered into the database and turned into dynamically created web pages by plugging the content into templates that have been previously set up using the scripting language. CMS programs can also automate the production of a whole range of facilities such as events calendars, newsletters, online forums, search facilities, archiving, etc.

Does our website need CMS?

This is a good question to ask. Technology should not be used just because it exists. Although the final result makes web publishing much easier, setting up a CMS based website, and particularly converting an already existing website to CMS, is a major and pretty daunting technical task. At a minimum, it will take several weeks to carry out the main steps in the changeover and many more to sort out bugs and other problems.

If you are not publishing more than about 10 new items a week or involving more than 4 or 5 different people in content publishing then you don't really need CMS. CMS comes into its own when a website is being produced as a collaborative effort between a lot of different authors and editors with varying technical knowledge. More than anything else CMS is an effective tool for information sharing between organisations with similar aims. So the questions you need to look at when considering whether you need CMS concern the information you have to share, the other groups you want to share it with, and what information they could share with you.

If yes, what CMS do we need?

These are the same questions you need to continue asking after you have made the decision that using CMS is justified. There are a large number of CMS programs and they differ considerably in the facilities they provide and their ease of use. After making a list of the various facilities CMS can provide you should stop and think carefully about what you want to accomplish by using CMS, both now and in the future. Discuss this carefully within your organisation and with the other organisations you intend using CMS to information share with. You are making a big decision that will be difficult to reverse later. Don't be carried away by the technology; it is far more important that the program easily provides the things you really need rather than it having a range of features you won't use. Another very important question to consider is how much long-term support there will be for the program. Because there are so many CMS programs about many of them will cease to be supported. This is true for both commercial and Free Software programs. So it is probably best to stick to programs that already have a wide user base and clear indications of long-term support.

Most CMS programs work with only one particular scripting language/database combination. Your web hosting company needs to provide that particular combination or you cannot use that program. The majority of commercial programs and almost all Free Software programs use PHP as the scripting language and MySQL as the database. This combination is also widely used by web hosting companies because of the popularity of Apache server software, which has facilities for incorporating these two programs.


Commercial or Free Software?

Another key issue in deciding what program to use is whether to use a commercial product or Free Software. Some commercial CMS programs can be very expensive indeed - tens of thousands of dollars - far beyond the reach of most NGOs. However, there are some much cheaper ones that provide the most essential basic features of CMS. In most cases their use involves making an agreement with the vendor that they act as an Application Service Provider (ASP) for your website, which means paying them an initial set up fee and then regular monthly payments for developing and maintaining the system. A good guide for non-profit organisations deciding to take this commercial route, along with a list of ASPs is contained in the December 2002 issue of the Dot Org online magazine.

Extremely good Free Software exists for doing most jobs and this is certainly true when it comes to CMS software. The problem for most NGOs is the technical difficulty of implementing Free Software solutions. Although most Free Software CMS programs give detailed instructions about how they need to be installed and implemented they definitely need someone with considerable technical knowledge to do this.

Internet Rights Bulgaria has built a good relationship with the Free Software movement and it certainly has paid off for us in the recent conversion of our website to using CMS. We feel there is a great potential for collaboration between the Free Software movement and NGOs working on human and social rights issues. We often share similar outlooks. Growing numbers of Free Software activists are looking towards providing software solutions for the NGO community and this is going to be boosted considerably by the interest now being shown by the Open Society Institute. They have started organising events and making funding available to promote projects that bring the two communities together. Based on our experience, Internet Rights Bulgaria would encourage any NGO that decides to take the route of using CMS to contact the Free Software groups that want to work with NGOs. A good place to make initial contact would be via the Not-for-profit Open Source Initiative (NOSI). You may soon find you have an enthusiastic team of Free Software techies only too willing to help out!

Even within Free Software CMS there is a vast range of programmes. CmsInfo.org provides a very comprehensive list. An extremely useful facility is provided by opensourceCMS. On this website you can actually try out and test many of the most popular Free Software CMS programs. They also provide a downloadable guide "How do I decide what is the best CMS for me?".

Free Software CMS programs on offer generally tend to fall into two categories: programs that work to a fairly set format incorporating a number of fixed features; and programs that allow more flexibility of layout and presentation, but need more initial work setting up. Many programs work on a module basis; an initial set of standard features can be built on by adding further modules later. Some good examples of the different types are:

Plone. This is based around a fairly standard fixed layout. It is mainly aimed at providing a way for organisations to get up and running with CMS quickly. It uses a standard file and folder system to publish content that is familiar for all computer users.

PHPNuke. This is based on a module system. It is more flexible than Plone, but still requires working to a fairly fixed layout. It was developed from the software used by the SlashDot weblog/portal website and still sticks basically to that layout, although it has introduced a lot of new add-on modules - calendars, discussions, etc.

EZPublish. Much more flexible than Plone or PHPNuke in terms of changing design and layout, but more difficult to set up. Comes with a standard set of modules that include articles, discussions, calendar and newsletter production. The new version 3 is even more flexible than the version 2 that most people are using, but it is also considerably more difficult to set up and unfortunately doesn't provide a way of upgrading easily from version 2.

SPIP. This was our final choice at Internet Rights Bulgaria. It provides similar options to EZPublish. It was developed within the French speaking online community where it is a popular choice, but isn't so widely known within the English speaking community. For me the biggest problem is that there is not yet an English language manual for it. But I accepted the assurances of the French speakers in the IRB team that it compared very favourably with EZPublish in flexibility whilst being easier to set up. I am very happy with the final results (see www.socialrights.org) though we are still sorting out a few problems. I do feel the difficult work of making the changeover has been worthwhile as we are now in a position to involve our target groups of non-technical Bulgarian NGOs in the production of the website. This has also meant us making our own contribution to Free Software by translating the SPIP interface into Bulgarian!

Action Applications. This CMS, which was developed by the Association of Progressive Communications, works differently from the others. It was designed particularly with the idea of content pooling between a number of partner websites in mind. Unlike all the other programs mentioned it allows the dropping of a small dynamic section into an existing website. This section can then share its content with other Action Application websites. Setting up the necessary templates is done in a rather unusual way and can be initially off-putting even to techies used to other CMS programmes.

 


spacer
  Terms of Service

About | Programs | Articles | News | Resources | Forum |

Content of this website is licensed under the following license:
Creative Commons License