OR/MS Today - June 2005



INFORMS Online


Big Changes Coming Soon

By Matthew Saltzman


When INFORMS Online was started in 1995, it consisted of a few hundred HTML pages and a handful of Perl scripts. The pages were mostly maintained by hand-editing HTML source or by running scripts on flat-file databases to generate HTML pages. The scripts were self-contained, so each had to include all the elements that made up the pages: headers, footers, links to background and foreground images, etc. Because every page was hand-edited, only relatively primitive design elements could be included. In those days, this is how most sites were maintained.

Even this relatively small site quickly proved difficult to maintain. Then-editor Mike Trick's first attempt to ensure that pages retained a uniform look across the site involved a technique called "server-side includes" (SSI), which allows the server to detect in the HTML file requests to include at a particular place a copy of some specified HTML file. Each page access uses the current version of the included file. So in theory, disciplined application of SSI could control the appearance of the entire site: change the background image, say, in the SSI file, and all pages would take on the new look.

SSI — together with hand-editing and custom scripts — is the main technique that we have used to grow the site to its current tens of thousands of pages. Unfortunately, pages can easily get out of sync. Editors often save a page to work on from their browsers (after the SSI was included) and post the modified page, losing the "include" directives in the process.

A better technique — "cascading style sheets" (CSS) — was developed to propagate appearance across Web pages, but by then IOL had so many pages that redoing them all using CSS was impractical. Sections of IOL that have been recently redesigned (e.g., the Job Placement System, www.informs.org/JPS/) have used CSS and more powerful page editors to create a much more modern, graphical appearance.

The other problem with the old maintenance regime is that it is difficult to track who is responsible for various pages and which pages are current and which are out of date. When the site was small, the editorial staff had a pretty good idea what was going on, but as it grew and more content came from outside contributors or dynamic databases, it became impossible to keep up. Keeping change logs in the files relies impractically on the files' editors. Versioning is handled by the equally unreliable protocol of including change dates in the names of the backup files.

Getting the Computer to Do It


The key tool for getting a handle on these issues is a "content management system" (CMS). The CMS's role is twofold. First, it divides style from content, maintaining each separately. Second, it tracks workflows, allowing the editors to assign responsibilities for pages, set due dates, review submissions, and automatically publish and expire pages. They may also include subsystems such as calendars and discussion boards.

In a CMS, pages are divided into separate style and content components, and the components are stored in a database. When a page request is received, the system constructs the page on the fly from the latest style and content information in the database. Thus, appearance is maintained consistently across the entire site. It can be updated in one place and applied instantly everywhere.

The database entry for a page also includes the page content's owner; schedules for updates, publication and expiration; and the editor responsible for approving it. Content can be kept up to date or expired if it becomes outdated. Changes to the site can be publicized automatically. Calendars and discussion boards can be moderated if necessary.

Choosing Our Weapons


IOL is built on the open-source LAMP platform (Linux-Apache-MySQL/PostgreSQL-PHP/Perl/Python). The open-source philosophy influenced our selection of tools for the CMS as well. We wanted to continue working in the LAMP environment that we are comfortable with. We did not want to lock ourselves into a proprietary system that we could not maintain if the relationship with the vendor ended. That argued for a fully open-source system. On the other hand, our technical staff is all volunteers, and we do not have the resources to maintain a large system without external assistance. That argued for purchasing a system or support, but the availability of companies that support fully open-source CMS systems is still limited.

In the end, we chose a system called WisePublisher, which is built on the LAMP platform but purchased from a vendor. The PHP code is proprietary, but we have access to the source through a partnership arrangement. And we have a vendor who can train us, support us, and work with us.

Moving Forward


Choosing a CMS represents a major institutional commitment. The cost of conversion from IOL's current organization to the CMS format is time- and resource-intensive. Yet it is also a great opportunity. Over the coming months, large portions of IOL will be reorganized and redeveloped. Other parts may be left more or less intact. There will be opportunities to engage in activities that were previously difficult or impossible, or even inconceivable. There will be opportunities for new kinds of contributions from content authors, who will no longer need to be technical experts in order to contribute.

As you read this, parts of the new site should be available for preview or deployed live at www.informs.org. As the process of porting IOL to the CMS goes forward, we welcome your feedback. Please contact me directly at iol_editor@mail.informs.org with your comments and questions.



Matthew Saltzman (mjs@ces.clemson.edu) is an associate professor of Mathematical Sciences at Clemson University and the editor of INFORMS Online.





  • Table of Contents
  • OR/MS Today Home Page


    OR/MS Today copyright © 2005 by the Institute for Operations Research and the Management Sciences. All rights reserved.


    Lionheart Publishing, Inc.
    506 Roswell Rd., Suite 220, Marietta, GA 30060 USA
    Phone: 770-431-0867 | Fax: 770-432-6969
    E-mail: lpi@lionhrtpub.com
    URL: http://www.lionhrtpub.com


    Web Site © Copyright 2005 by Lionheart Publishing, Inc. All rights reserved.