The most important part of a web development project is right at the very start, where you make the decision about who you will use, and the tools they will build your web site with. Right there you have determined your business destiny for the next few years.
As long standing software and web developers we treat this part of the process very seriously, and see many many examples of people who have got it wrong here.
Your biggest decision:
Now there is one really important decision at the start of most project, and that is should we:
a. Custom develop a web site
b. Use an existing web site product and modify it to suit ourselves.
We are lucky in that with many years experience of developing complex and high value software and web applications we can do it either way. But what is in the best interests of our clients - what will give you the best results for your business for the next few years?
Lets have a look at the two routes to choose at this point.
Custom web development:
This allows us to build you anything you want - as long as it is possible and we have the skills to do so.
Custom development gives fantastic flexibility, as there are no constraints imposed by existing systems doing things a certain way.
However every line of code in your web site needs to be written one by one, and this can make the development costs much higher than using something that already exists.
Some companies have written their own (often called "Proprietary") systems, so they can say "We don't have to write it all over again so you get better value for money".
So what could be the drawbacks of all this flexibility?
Well here is my own list of shockingly common problems with proprietary systems:
- Massive cost of development - everything has to be written from scratch.
- More difficult to change developers (sometimes impossible for technical or legal reasons), so you are bound to the company the wrote and understands the system for its lifetime.
- If your web site code is written using compiled code (like that used in Microsoft .NET and some other platforms) then you actually cannot modify the site without access to the original code - so make sure you have a copy of all the code from the developer when you buy the site.
- If your site is developer in open source code such as PHP and MySQL, another developer COULD look after and maintain the site if required. However they would still not know the idiosyncrasies of the way the site was designed, and picking up those could be difficult, and possibly expensive.
- Once a client is "tied in" by a proprietary system they are in a very weak position, and open to the possibility of profiteering from the developer. This is most likely if the developer quoted cheaply to get your work, but having locked you in, has the rest of the life of the web site to re-coup their profits from you - possibly many times over.
- Because everything is custom written, when you want to add something to the system, this is very likely to need custom coding as well. Even the simplest changes may cost hundreds or thousands, because the computer code for them has to be written from scratch.
That probably covers it - but to summarise I would say that there ARE times when proprietary coding is required to build a web or eCommerce system. That is when there are no existing products that do what you want because your requirement is very specific. In that case you will have to get used to the idea of depending on one developer for that aspect of your business for many years. And a word of advice - make sure you have a good understanding with the developer, some very good references, and an agreement covering the pricing for future development to the site.
Using existing systems for web development:
As luck would have it the problems above have been faced many times over by web site owners and developers. As a result a variety of "out of the box" systems have been created.
There are a wide variety of these ranging form the good to the bad and the really quite ugly.
On the lower end of the scale are the "Template" systems where an unskilled user can put together a site in a couple of hours. We are not big fans of these, because often they produce very poor quality sites, and still lock you to the company that provided the template system.
There are also existing web site systems that control you in other ways - for example a number of systems based on proprietary technologies can lead you into a restricted position not unlike that of a proprietary system.
Open-source web sites:
A significant development in recent years has been the evolution of a number of open-source web site content management (CMS) systems. open-source means that a community of developers has combined to build a product, and then it is shared freely to anyone that wants it, under license models called the GNU GPL. (General protection License)
Some of the most popular of these systems include:
Joomla |
Drupal |
Wordpress |
Magento |
![]() |
![]() |
![]() |
|
| Joomla.org | Drupal.org | Wordpress.org | Magentoecommerce.com |
But there are many others.
We have become big fans of these systems in particular for the following reasons:
- No need to re-invent the wheel. The code exists and can be made to do almost anything required.
- The code is free, keeping your costs down.
- The development community of each have between them created a massive library of add-ons or additions, so that almost anything you are likely to want to add to your site is also already written, and often freely available.
- The well designed systems are streets ahead of anything that a small web company could build themselves - even given 10 years, because so many skilled developers have contributed skills and time to the systems.
- You can easily change the look of these sites - just apply a different template or "skin", and your site is new and refreshed, without having to change the underlying struture.
- Very important - being fully content managed you can easily add or edit articles, pictures, menu links, or anything to the site yourself. This is really excellent for the marketing of your site, in which fresh content is of absolutely critical importance. It also helps to keep down your long term cost of ownership.
- Should you want to change developers (they very commonly go bust or move onto other things), it is easy to do so. As long as you have the settings you can get any other competent member of the developer community and they can take over the maintenance of your site.
- Want to change your web site host? Easy. These systems work on most decent hosting systems, subject of course to the right hosting specifications.
- In a weak position? None of it. The developer knows you are free to use someone else should you choose to, and you only need stay with them because they are looking after you. This keeps your developer honest, and the relationship on a much more equal footing.
- Help and information - plenty. each community is supported by Forums and documentation, where the communities help other members with problems and share information. In our experience these communities are at least as good or better than the help information shared by big companies like Microsoft, so that it is easy for you or your developer to find out what they need to know, and apply it to your web site.
So what could be the disadvantages of open-Source systems?
Well some developers hate them - can you work out why? Lets have a look at some of the criticisms:
- They are just a "site in a box". Well who really cares about this? The site looks unique and great, can do anything you want, and cost a fraction of the price of a proprietary system.
- Security isn't good. This is an interesting point. Because the code is open source it means that anyone can see how it works. It follows that you can work out any exploits for it and then hack into the web sites. This is true, however the opensource communities are aware of this and the good ones have dedicated bug squads who detect and instantly close any exploits discovered. This means that occasional security upgrades come out, and these have to be upgraded on the web site. So there is a small on-going cost to keeping on top of security issues. However frankly you have that cost anyway. Recently a spate of viruses known as "Gumblar" corrupted a lot of web sites of all kinds. These viruses were spread through FTP (the way a developer updates the web site), and so effected all kinds of sites. The fact that they were opensource or not did not make any difference. Our experience of that was that all our opensource sites on a good server with good security systems were not affected, while lots of sites that were not opensource were affected. So we would discount this objection.
- "You can't customise it do do that". An existing system always has some sort of limitations, because it has been designed in a particular way. However all the code behind these systems is accessible to the developers, so in fact the only limitation on their ability to customise the system, is their own skill set. So what a developer says "It can't be customised to do what you want", what they usually mean is "we don't have the skills customise this". Those skills however are readily available within the same opensource community that evolved the product.
I would add a caveat to all of the above. No system is a Panacea. Everything has its limitations, and it is likely that with any system there could come a point where your web designer tells you "This is difficult", "It can't be done", or more likely "We can do this but it would take a lot of work - why don't you consider achieving the result this way instead?".
However the next time I hear a developer saying that we just do a "site in a box" I will treat it as high praise indeed, because what they mean is we are providing fantastic value to clients that they cannot match using their slow and clunky custom built systems, and they are resorting to denigrating some of the best designed and most widely used systems on the web. And every now and again you will still hear me say "this would be better if we did it as a custom development" - I will give a very specific reason if you ever hear me using that phrase!
Sources:
- Opensource software on Wikipedia
- Joomla - 4462 Jooma Extensions
- Drupal - Modules to Extend Drupa - Themes for styling Drupal
- Wordpress - 1,151 free Wordpress Themes
- Magento Ecommerce - list of free Magento Themes
- Opensource CMS awards
Examples of custom-coded and and open source web sites by Channel Computing



























Channel Computing Newsfeed