James Robertson has published a nice look at the two publishing models used in Content Management Systems (CMS). A CMS can either publish static HTML (or PHP/ASP/CF, etc) files in a batch, or it can dynamically output HTML for each request. Robertson clearly outlines the advantages and disadvantages of each method, then stresses that the specific requirements of the project and organization should dictate which model is followed.
I've swung back and forth on which model I prefer. Now, I think I like the simplicity and speed of the batch model. But, of course, Robertson is right to focus on the specific requirements when making a decision.
Update (12/13): Ian Bicking and Simon Willison have both recently written on the benefits of the static model. Bicking mentioned another great benefit of the static model (and one I hadn't thought of): by producing static files, you can implement a CMS incrementally. And anyone who has ever been a part of a major re-design or CMS implementation knows that this could be a huge deal. Trying to migrate old content into a new system can be quite time consuming, and you face problems with dealing with updates to content. By maintaining both old content and new, CMS-driven content at once, you solve a whole bunch of problems.
Posted by Karl
December 2, 2003 08:45 AM