The webmaster role died the day web sites became more than a novelty and instead became crucial to a business's communication & customer engagement strategy. This evolution required everyone, not merely HTML savvy kids, to become involved in the web site management process.
Thus the Content Management System (CMS) was born.
Content Management Systems abstract (hide) the messy web site details (HTML) and make it easy for anyone to create and manage web site content. This is great! However, abstractions often come at the cost of flexibility & control. Imagine the cockpit of a 747.

Imagine all this equipment replaced with 2 buttons (take-off & landing). Is it easy? Absolutely! But it doesn't take a pilot to imagine dozens of scenarios where this abstraction completely falls apart. The devil is in the details.
Gross abstractions deny us the ability to control our own fate and address the unknown.
When choosing a CMS it's important to look beyond out-of-the-box features; examine how the system can be adapted and evolved. In other words, it's important to understand how extensible the Content Management Platform is.
What is Extensibility?
Below are a handful of definitions for extensibility:
- A system design principle where the implementation takes into consideration future growth.
- A quality of design that takes possible future advances into consideration and attempts to accommodate them.
- To cause to last for a longer period of time.
Extensibility empowers us to address future opportunities and challenges; extensibility accommodates imagination, creativity and growth.
Extensibility in Action
The definitions above represent my best attempt to define the characteristics of extensibility. However, we can move beyond words and examine a product that embodies extensibility:
Most of us played with LEGO bricks while growing up. Some of us still play with LEGO bricks. LEGO's web site states:
“The LEGO Brick offers unlimited building possibilities. It's just a matter of getting the imagination going – and letting a wealth of creative ideas emerge through play. “
Replace "LEGO Brick" with "Sitefinity CMS" and I'm happy making this our mission statement.
Here is another fun LEGO fact:
LEGO bricks from 1958 still interlock with those made in 2009.
In a CMS the interlocking tubes used by LEGO bricks would be called an API. An API enables backward and forward compatibility; it also creates a foundation that allows anything to be built.

Below are some additional examples of incredible LEGO creations:
The creators of Legos could not have foreseen these creations. Yet LEGO's extensible framework allowed these artists to realize their vision.
Pay As You Go, Alternative to Extensibility
Not every CMS (or toy company) celebrates creativity. In fact, most don't. Instead of an extensible framework, these companies sell a rigid inflexible product intended for a narrow purpose:
When a new situation arises, another add-on product must be purchased:
Each of these products is highly polished, yet completely useless outside its narrow intended purpose. The more creative you become, the less likely it is these products will serve your needs.
This weakness can only be overcome by purchasing additional customized products. Overtime you'll amass a collection of beautiful, yet completely useless, toys:
The Problem with Extensibility
A product that embraces extensibility will adapt to an unlimited number of scenarios. As a web site grows and evolves, this flexibility and depth will be greatly appreciated.
However, let's face it, few of us our capable of creating the LEGO art found in the links above. Making elegant use of a fully extensible system requires:
- Vision - (Creativity)
- Talent - (Practice)
- Time - (Work)
This can represent a substantial barrier to entry. In fact, for many small projects this barrier is so big that extensibility becomes less important than just getting something up & running ASAP.
In these instances, gross abstractions (Blogger.com) are appropriate. If these web sites grow and mature, these rigid abstractions will create problems, but the short-term benefits sometimes outweigh those long-term concerns.
The Best of Both Worlds
Extensibility is crucial to a web site's long-term success. However, it remains important to get the web site up & running ASAP. Not everyone will have the time required to create the LEGO art seen above.
When quick professional results are needed, it's important to have products that facilitate this, while still delivering a platform that can be extended later. To address this, LEGO introduced customized LEGO sets (and there are a TON of them):
In the CMS world, these LEGO sets would probably be called Starter Kits. Starter Kits are built around a general theme (E-commerce, Company, Personal, Blog, Community, Intranet) and empower beginners to create professional results while still delivering an extensible framework.
The Extensibility Test
The following questions can be used to evaluate how extensible a CMS is:
- Am I confident I can meet virtually any requirement?
- Will the CMS empower me to lead instead of follow?
- How do I add new features and functionality?
- How would I integrate with an outside system?
- How do I explicitly control the HTML & styles applied to my web site?
- How can I enforce the use of custom web site themes and styles?
- Is there an API I can use to programmatically interact with CMS resources?
- How do I control the structure and URLs applied to my web site?
These questions are hard and, in most cases, there won't be easy answers. In fact, be very suspicious of any answer that sounds like magic.
"Sure, no problem, we have a feature that makes it easy to integrate with any billing system..."
What does this even mean? Any billing system? Does this include a metal filing cabinet filled with manila folders?
The point of this exercise isn't to find easy answers. Instead we're evaluating whether we're dealing with an extensible platform or rigid prefab product. Don't be afraid to ask "How?" and ask for documentation and examples. In addition, search Google and the product forums looking for examples of customizations.
When a product is built with extensibility in-mind, it will be easy to find evidence of creativity.
Delayed Gratification
Utilizing an extensible platform requires more work up-front. However, long-term extensible platforms will create project ownership, celebrate growth and creativity and empower you to meet the future challenges and opportunities.