At the Forge - COREBlog

It's not a Web development framework without a blog package. Here's a Zope-based system for a Web journal with all the bells and whistles.

Over the past year or so, this column has looked at a number of open-source products that can serve as a content management system (CMS) for a Web site. If you publish a newspaper, magazine or Web site with content that changes on a regular basis, such a CMS undoubtedly could be a boon to your site. After all, why should you modify the links, headlines and other items by hand, if software can take care of those tasks for you?

A traditional CMS is a big, complex piece of software, because it needs to take into account the many different types of organizations of Web sites. Should anyone on your staff be able to create new articles or only reporters? Which editors should be allowed to post items to the Web? What sorts of headers and footers do you need? What sort of search mechanism do you need? The answers are almost endless, which explains why CMS software can be complex to install and administer.

If you want to publish articles on a regular basis but don't want the administrative overhead associated with a full-fledged CMS, you might want to consider a Weblog. Weblogs, also known by the shortened name blogs, began in the mid-1990s as personal journals, on-line diaries that allow an individual to write and post articles quickly and easily. And although blogs vary considerably in style, their format tends to be fairly uniform, which reduces the complexity of the software, making it easier to configure and administer.

This month, we take an initial look at open-source Weblog software, as well as the standards that have become increasingly prevalent in the blogging community. Along the way, we look at COREBlog, a Zope-based tool that makes it fairly easy to create and administer a Weblog.

To be honest, I have some personal interest in finding a good blogging package. Having read a number of Weblogs over the last few years, I've decided it's time to try blogging for myself. The results of my search should be available by the time you read this at (Figure 1).

Figure 1. The author's blog uses the Zope-based COREBlog package.

What Is a Weblog?

Weblogs come in all shapes and sizes, reflecting their authors' interests and styles. That said, a number of characteristics are common to most Weblogs:

  • Order: postings are displayed in reverse-chronological order, with the most recent article displayed at the top of the page. The Weblog's home page typically shows only the last few days of postings, with the rest available through an archive feature.

  • Comments: readers of the Weblog are invited to submit comments, often posted immediately following the article in question. In this way, Weblogs are similar to Web-based forums, except only the blogger is allowed to begin a discussion topic.

  • One author: typically, only one person participates in a Weblog. Some Weblogs are written by multiple authors, but this is relatively rare. A Weblog's comments, as described above, are written by people other than the main author.

  • Syndication: the contents of a Weblog generally are made available using an XML format known as RSS, which stands for really simple syndication. This makes it possible to retrieve, analyze and collect a number of different Weblogs, creating something akin to a personal newspaper.

  • Trackback: introduced by the proprietary package Movable Type, trackbacks make it possible for Weblogs to keep track of links pointing to one another.

  • Web-based editing: because Weblogs exist only on the Web, their interfaces expect that you want to write and edit postings using your Web browser. Administering a Weblog in this way makes a great deal of sense, but writing and editing in a Web browser can be an unpleasant experience. Many Weblog packages offer desktop applications that ease this pain, allowing users to write using a word processor or simple text editor and upload the final product when they are done. Open-source systems are available that can make such off-line editing possible, but they involve some configuration. Therefore, you probably are going to need to get used to writing inside of a text-area widget or learn how to customize Mozilla so you can use a friendlier editor. You also can look into the open-source Epoz Project,, which provides a cross-browser, JavaScript-based editing system.

The above list is not comprehensive. Plenty of Weblogs lack comments, syndication or trackback. But just as English-language newspapers evolved to have a common set of style rules for headlines, captions and story ranking, so too have Weblogs evolved to have a common set of expectations. And the competition for features is rather fierce: when one Weblog package adds a useful new feature, others usually implement it within a short period of time.

The above features would be easy and straightforward for an experienced Web/database programmer to implement in a high-level language, such as Perl or Python. If you use a relational database, say PostgreSQL, to store the articles, you no longer have to worry about ordering or file storage, so you can concentrate on output. And indeed, some prominent bloggers, such as Tim Bray, author of the excellent Ongoing Weblog at, have created their own Weblog software.

As much as I enjoy writing new programs, I dislike reinventing the wheel. And given the plethora of good, existing solutions for creating a Weblog, including several that allow me to write plugins that extend their functionality, I decided to use something that already exists, extending and modifying it as necessary using an established API.

Moreover, some of the nicer Weblog features, such as comments and trackback, can be tricky to implement. They aren't necessarily hard to work with, per se, but given that it seems 100,000 different mechanisms for commenting on Weblog postings already are out there, I would like to avoid creating number 100,001.

I should note that if you are interested in creating your own Weblog, there is an alternative that allows you to avoid writing or configuring any software at all—namely, using one of the many free Weblog hosting sites on the Internet. These might be a perfectly adequate solution for most people, but I still would like to have some control over the software that I use. Moreover, I would like to integrate my Weblog into the rest of my site and domain, meaning that I need to install it on my own system.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Update: COREBlog at 1.2 and author at WordPress

betabug's picture

Just a bit more than a year later, the author of this article seems to do his weblog on WordPress, while COREBlog is a happy running project at Version 1.2. In my own experience COREBlog is extremely fast, friendly and stable. Definitely worth trying, especially when you are running Zope anyway (but for me a reason to install Zope on my own server too).

COREBlog may not have tons of prebuilt "custom" skins ready to download, but for someone not afraid to look into the CSS and maybe into the DTML, it is easy to customize.

Zope products

Anonymous's picture

Greate list of the ready for use Zope products can be found on content management software info

Re: At the Forge: COREBlog

Anonymous's picture

There's an English spoken mailinglist too.

coreblog-en list has moved

betabug's picture

The english language COREBlog list has moved btw:
coreblog-en at now