Sorry this page looks weird. It was automatically migrated from my old blog, which had a different layout and different CSS.

Commoditisation Or Not

As with many fields, web development looks trivial to the untrained eye. Sooner or later everyone who builds web applications hears, “Why it is so expensive and time-consuming to do this new thing? I have a ten year old nephew who can make web pages. It can’t be that hard.”

There are many good ripostes to this. One of my favourites is Red Adair’s:

You think hiring a professional is expensive? Try hiring an amateur.

Although one could argue that extinguishing blazing oil wells and web development are not in the same league. Moving on…

A modern web application is a system with many moving parts. Any engineer will tell you that complexity rises quickly with the number of moving parts. People expect web sites to be available pretty much all the time, so you need to be good at containing the complexity and simplifying wherever possible.

Recently I saw two pages which reminded me of all this: Netburn and What does it take?.

Netburn’s page simply says, “Are you making a website? You will need to know [daunting list of about 75 things]. Or you could hire someone who knows.” Punchy.

‘What does it take?’ lists the full stack for Sifter, a typical modern day webapp. I thought it was rather good, so here’s my version for Sparkle.

Sparkle’s web stack

Where relevant I’ve included my current technology choice in brackets. Every webapp will have a different blend of components.

User experience

Front end

Server side


All areas

On the radar

And here’s what I think I need to learn next for Sparkle:


Consider Puppet as well as Chef. Don’t use Postgres, use Percona. No need for Redis.

Olly Headey • 19 March 2012

Andrew Stewart • 14 March 2012 • Development
You can reach me by email or on Twitter.