Scalable Website Development to Control Costs and Growth
Throughout my 17 year career in web technology, I have helped build over 700 websites/applications and worked on over 300 web projects and just about all needed to be built from scratch or rebuild to scale with growth in traffic and users. This post is to breakdown my recommended approach for building out a new website that will grow and most importantly how to control the costs with the growth.
Building a web site/application is similar to building a house or a car. There are many ways to build from low cost to luxury. Similar to a car, a Ford Focus is cheaper that a Lexus because of the materials and efforts into the quality of design and features. The major difference in regards to web, is the true value of a website is the DATA. Let’s take Facebook for examples. The Facebook website itself has many cool features, status updates, photos, wall posts, video, games, apps… though the true value is the data the Facebook holds. Regardless of how BIG and grandiose an idea is regarding a website, the need to build a super robust high-end website from stage 1 is not necessary. Facebook has a $16 billion valuation primarily due to the data it has on it’s 800,000 million users. When Facebook first launched it was a small low budget website and the technology and backend architecture grew as the need grew to support the growth in users and data.
In regards to open source development platforms (CMS platforms) Drupal takes the reign though the cost to develop a website is higher than most which is mostly due to the high costs of the required network infrastructure and technical resources. MindTouch is another good CMS to build on though has a (low) monthly cost. If Drupal was a car it would be an Escalade ($65,000), very robust though high cost to maintain. Then there is the Ford Focus ($17,600) where it’s a standard car that gets you from point A to point B with a low cost to maintain and low cost to drive. Regardless of which car you drive, an Escalade or a Ford Focus the person who is driving the car is the same. The person is the website “data.” The more people in the car, the biggest car you’ll need. When you first launch a website, you do not need a super robust infrastructure, what you need is a super robust architecture plan in regards to how the data and network will scale.

To better explain this analogy, lets say you are going on a road trip from California to New York. You know that you’ll start off your trip with just yourself and throughout the journey you’ll be picking up passengers. Also you’re not sure yet that you’ll even make it to New York, all you know is that you want to go on a road trip. Since you’re not 100% sure of how many passengers you’ll have by the time you get to New York, you might just pick up 2 passengers or 100 passengers. Would you start off your trip with a mega bus or a standard sedan? In this analogy the cars are rentals, so you can always swap out the size/make of cars throughout the trip to support the amount of people in the car. With the analogy regardless of what car you start off with, regardless of where you end up, the passengers are the same, just the car itself has changed. This is the SAME for the backend technology that supports the data that your website is built upon. As your website grows and changes so can the technology that supports it, while the data (the passengers) that your website is run on remains the same.
To successfully do this you’ll need a good architectural plan from the beginning. Many technical professionals are so adamant and stubborn on building super duper high scalability mega expensive solutions from the beginning mostly because that is all they see and all they know. Most technical professionals only focus on the end and never really understand the journey to get there. If they were spending money from their own pocket, I can guarantee you that they ALL will be singing a different tune. When it comes to building out any website there are many ways to build and many different disciples though the goal for a financial ROI is the same.
Ok now let’s talk about how we can do this is open source technologies that exist today. While I suggested earlier that Drupal and MindTouch is a good choices, it is not the choice to start off with to keep initial costs low and manageable. I would highly recommend Wordpress as a CMS platform to build upon. Wordpress is widely used throughout the internet (60+ million websites use Wordpress). Although Wordpress is considered a “blog” platform, many people are using it as a CMS solution as well. Like Drupal, Wordpress has the ability to manage users, manage content, is scalable, can support a high volume of traffic, can easily design a template, and most importantly has a module API so you can build add-on features and build in custom functionality.
When it comes to building a website/web application, here are the general items needed from a technology perspective. The cost of each item can be controlled depending on the initial and overall requirements of each item.
- Detailed Plan: Architecture / infrastructure / network
- Detailed Plan: Management of content / data / assets
- Technology platform
- Content Management System (CMS)
- Backend programming (recommend PHP)
- Front-end programming (HTML, CSS, JavaScript)
- Database (recommend MySQL)
- Hosting (web servers for content, data, media)
- Bandwidth (traffic)
- Design (template)
- Mobile
- List of any 3rd party tools / applications
- Development environments (development, staging, production)
- Development processes (backups, source control, etc)
- Monitoring Tools (uptime, statistics, backups, etc)
In summary, I would start by building out a website on Wordpress and each custom feature would be “plug-in” and as the website grows migrate to Drupal and convert each Wordpress plug-in to a Drupal “module”. Both platforms are PHP so just as long as the programming and database transition was planned ahead before the initial development, then converting a Wordpress plug-in into a Drupal module should be simple.
Talking this approach will keep the initial cost low and better help you scale the technology with the growth of the website.