Sep 19, 2015 - 0 Comments - Best practice, Business, CMS, Development, Project management -

When to go bespoke

When I began developing websites in 1995, there was no WordPress or Magento. CSS didn’t exist, PHP was in its first iteration, ASP was a year away and Javascript was still to be standardised. The practical tools available were HTML and CGI. So the choice of whether to go for a pre existing CMS or a bespoke built system did not exist – everything was bespoke.

Now things are very different. There’s an off-the-shelf CMS available for almost any task, and it can be very difficult to know which one to adopt. We recently scoped out a helpdesk system and after installing five we’re still undecided, none matched our requirements precisely. We’re now wondering whether to build bespoke.

Hybrid bespoke

It’s important at this point to make a distinction between the different levels of bespoke and off the shelf systems available. They predominantly fall into three broad categories:

Off the shelf, open source

systems such as WordPress and Umbraco are built to do specific tasks by a dispersed team of core developers and a larger group of contributors. They can be edited by anyone however they see fit.

Off the shelf, proprietary bespoke

systems such as Spektrix and Sharepoint, built and owned by companies to answer needs common to a group of consumers. They can only be edited by the companies involved, and only as they see fit.

Bespoke built

systems built by companies or individuals to perform a specific task, generally unique to the system consumer. They are usually owned by the consumer, but can often only be edited successfully by the individual or organisation who built the system.

The distinctions above matter, as they affect what consumers can expect in terms of the effectiveness of the system they procure – how easy or difficult it is to get a system right for them, and how easy it is to get things extended or fixed when changes are required.

So when is the right time to build a bespoke CMS?

The short answer to this question is – rarely. Really the only reasons to build bespoke is when you either have a unique problem to solve, or you have exhausted all pre built alternatives. Truly unique problems are rare, and there are a lot of very effective systems available off the shelf to do all sorts of tasks both common and obscure, so building bespoke should sensibly be a solution of last resort.

Extending that logic, when one has a very common task to achieve, such as, for example, building a website, you are always better to choose the best open source off the shelf system you can find, rather than either a proprietory system, where you are locked in to the development cycle of one provider and cannot make changes as necessary, or go for a bespoke build, where you are at the entire behest of the skills and availability of one company or individual.