Wednesday, May 04, 2005

about Content Management Server

this is adapted from an e-mail that I wrote in 1999 to explain to people what it was that I did for a living.

picture if you will... a typical .com 'bricks and sticks' building. lots of bricks, lots of big impressive wooden beams, very few offices - thankfully, even fewer cubicles. this was the atmosphere at NCompass Labs in Vancouver's Gastown district. the office was located right next to the famous steam-powered clock that attracts throngs of tourists (btw, the clock is a bit of a misrepresentation - there's a hidden motor so that it doesn't lose time).

NCompass Labs first gained notoriety for software called OLE on the web, this software evolved into what Microsoft calls ActiveX. for years, NCompass sold a plug-in that allowed Netscape to run ActiveX. when Microsoft acquired NCompass in 2001, the flagship software, NCompass Resolution, became Microsoft Content Management Server (MCMS).

MCMS is a content management solution. of course, that means very little to most people. however, content management is already a colossal business. so what does this magical content management solution actually do? it's really quite straight forward, under the traditional (if I can use that word when writing about web technology) paradigm for web publishing there is an unnecessary burden on technically inclined people to manage the content of the site.

for example, let's say that a company has ten web developers, and the same company has 1000 authors who contribute content to the site. in the old world, those 1000 people would rely upon the ten stressed out web developers to add their content to the site. it's madness - it doesn't make any sense for those 1000 people to rely upon the ten. also, it doesn't make sense to train 1000 people to use HTML just so that they can add their own material on the site.

that's where MCMS rides in on the strapping steed. the software separates the technical aspects of web page design from the rather trivial matter of adding content (which is often just text) to the site. under the web content model, the developers put time in at the beginning of the process to design the look and feel and decide exactly what they want authors to be able to do. once the site goes live, authors simply have to cut and paste (or drag and drop) their content directly into templates that the developers built. the formatting can be locked down so that the innocent authors can't make any mistakes that would break the look and feel of the site. of course, it also offers a web browser client (marketing terminology for 'thin client') interface. all an author has to do is go to the page that they want to edit (or add to) and they can make changes directly in a browser (update: exactly the same way that I am entering this post into this Blog). it's pretty slick and there is absolutely no doubt that this is the future of the web. it's a no brainer (update: guess I was right about that one :).

so that's the marketing story; now we start getting technical. while it is true that everything that I explained above is the driving motivation for a lot of sales, MCMS offers a lot more. MCMS is a dynamic web server. most web sites are not dynamic (update: still true in 2005). most sites are hard coded and they appear as they were coded. if someone wants to add a link or a page, they must change the code and re-publish the affected pages. MCMS helps this whole process happen automatically. it can do this because MCMS pages are not flat (.htm or .html) files. everything in MCMS is stored in a SQL Server database. the presentation of the data is not decided until someone asks for it. I hadn't thought of this before but I guess you could say (jokingly) that it's like quantum mechanics. the page decides what it looks like when a browser views it. using our Application Programming Interface (API) developers can design their pages so that they change as content is added to the site. for example, a common application of our API is programming the site navigation so that new pages appear automatically. you can imagine the time that is saved coding HTML when all of the pages add themselves to the navigation links - and this is only one example.

the MCMS API is very flexible and allows developers to do all sorts of things. my photo gallery application was built using our API. when I add pictures to the galleries, they automatically appear under all the different views (even the thumbnails are produced dynamically). MCMS runs on Microsoft's Internet Information Services (IIS) so the API programming happens in ASP (VBscript and JavaScript) (update: the MCMS API now supports .Net).

there are lots of benefits of MCMS. here's a short list of my top three:

1. ease of content management.
MCMS provides a browser interface (thin client) for site authoring. on our sites, users (with rights) can login through a browser and alter web pages as easy as they would a Microsoft Word document.

2. dynamic database
unlike traditional web sites MCMS stores information in a database. as soon as someone approves a change to the site, it becomes available dynamically. since MCMS is designed primarily for large organizations, having a scalable DB solution is very powerful.

3. powerful and flexible programming interface (API).
although Resolution is entirely usable out of the box, MCMS has an amazing API. through this interface web pages become programming objects. for example, a developer can ask for a web page and find out properties like Name, Publishing Date, URL etc. the API guide is over 700 pages long.

MCMS currently runs hundreds (update: thousands?) of sites - including,, and

here's a link to the FAQ (.HTML or .CHM) that Stefan Goßner and I produced: MCMS FAQ

the MCMS book that I co-authored:
Microsoft Content Management Server 2002: A Complete Guide for Addison-Wesley by Bill English, Olga Londer, Todd Bleeker, Shawn Shell, Stephen Cawood

the MCMS book that Stefan Goßner co-authored: Building Websites With Microsoft Content Management Server by Lim Mei Ying, Joel Ward, Stefan Gosner

1 comment:

Anonymous said...

Hi Steve,

nice to see you blogging on MCMS!
Hope to see you again in the near future.