Why time estimates are always wrong, and how to make a project successful despite that fact.
I don't know about you, but if I have a hundred dollar bill in my possession, it quickly "burns a hole in my pocket", as our parents' generation would say, and it takes about two days for it to turn into $50. It takes another two days for the $50 to turn into $25, and so on until I have a couple of nickels in my pocket about a week later. The shrinkage only stops when nothing small enough can be bought with the few remaining coins. Thus, I look at the half life of cash as about two days.
The secret to not spending money? Not having it in your pocket. I spend a whole lot less money if I only take cash out of the bank for something specific I need to buy.
Duh. Everyone knows that, I hear you say.
If you have been a web developer for any length of time, or if you have contracted others to build a website for you, you know that things rarely go as planned when it comes to web development.
Some of the problems center around lack of knowledge or skill, true, but that can be true of any type of project. Let's assume for the moment the technical skills are present and everyone is at the table with the right intentions.
In my experience developing web solutions over the last decade and a half, I've come up with some factors that occur to me again and again.
Sure, every project takes longer than expected, but web projects seem disproportionately vulnerable to 'project creep'. No matter what time estimates we make for a web project, the project always takes longer than we thought it would. Even if we make an outrageous time estimate, the work quickly expands to fill all available time, and then grows beyond it.
Why does this happen?
Two reasons. One reason is that the web introduces all manner of unpredictable influence -- from browser bugs to cosmic rays -- making it more difficult to predict what might happen next. It is what scientists call a complex system (versus a simple system).
Secondly, it happens because time burns a hole in your calendar, the way money burns a hole in your pocket. In fact, time evaporates more insidiously than does money, perhaps because our personal time is often regarded as having little value, so 'making a withdrawal' appears to cost very little. As time burns, so too does our source of generating cash to run our business and pay our bills. It takes an extraordinarily disciplined individual to manage time spent on web development. In fact, I don't know anyone who can do it well.
So let's talk about how a web project can be successful, despite all that.
At Siteleads.net, we set aside the notion of strict timetables when it comes to building a profitable web presence for our client, with the exception of the Go Live date. Instead, we look at it in "stages". If a stage looks like it might take longer than can be completed in a single sitting (i.e., a day's work), we break it down into discrete chunks until it does, or we re-evaluate the requirement and its risk to the overall project.
We start the project by bringing forward The Big Day. The Big Day is the day you make your new website public. Often, people are reluctant to let the world see their "half-baked" effort at a web presence, so they delay The Big Day indefinitely, or until some mythical time in the future when the website is "finished". A website is never finished. Or, at least, if it ever is, you are too. You see, your website defines your relationship to the outside world. A good one is always growing and evolving to meet the ever-changing needs of its owners, and the sooner you embark upon that growth stage the better. To throw another metaphor into the mix, if I were teaching someone how to swim, the first thing I would do is ask them to step into the pool.
A website structure is simply a hierarchy that will ultimately hold the content of your website, and is usually reflected in the navigation bar or menus on your website. For example, the following structure supports the contents of a relatively simple website:

The higher levels of the website structure can be reflected in a left hand side bar, a horizontal menu near the top of the page, links from within the home page (perhaps from images, image hot spots, anchor text links or flash objects) or a combination of all of the above. Later, when content is added, it is usually done so in the form of web pages, which can be linked to from one or more sections within the structure.
I like to look at the Home Page as the 'trunk' of the tree. To that, you add major limbs, branches and twigs, representing the website sections under the Home Page. The leaves on the tree might represent pages on your website.
This step involves making your new structure look like the website you wish to copy.
Much as we all like to spend time creating fancy new works of art, on the Internet, someone else somewhere has already created the kind of website you are looking for. At least in terms of what the website looks like, this is true. In fact, there are probably a dozen of more versions of it out there.
If you make your new website look identical to the website you find on the 'net, you could get yourself in trouble, so modifying it further to meet your visual goals before making it public is a good idea.
In any event, your new website will only be a starting point. As soon as you make it public, you will start making changes to it. In fact, the cold critical stare of a public audience will motivate you to improve it quickly. Soon, it will cease to look like the original, and issues of copyright will fade accordingly. Still, share your plans with your attorney if you plan to go public with anything you copied from the Internet.
OK, so where was I? Ah, yes. So, now, we've got a base line look-and-feel for your new website, and we have the beginnings of a structure in place. There isn't any major content in it yet, other than some descriptive text and media to support the structure. You can now have that "if you lived here, you'd be home now" experience.
Add a "welcome to..." message to the home page, as well as contact information to the Contact Us page.
I tend to avoid messages that say "Under Construction" as they tend to send people away from your website, and they reduce the urgency to add content and put the website to work.
From this point, adding content will always be in your job description. How often you do it is up to you, but websites that have frequently changing content appear higher up in search results.
Once you have gone public with your new website, any new work you do on it is potentially available to the public soon after you do it.
The thing to remember is, a website is never finished. Certainly not right when you launch it it isn't. I recommend to my clients to make changes to their website as often as they brush their teeth. You can keep putting it off, but it's better in the long run if you do it every day.
How do you know which feature to add next? You do the next most important feature. Some features take minutes to implement (like adding ShareThis functionality), others a lot longer (like a secure/login section to the website), but we have found that the One Day Rule keeps project risk to a minimum: If a new feature cannot be added in a single day, break it into discrete, day-sized chunks. If that is not possible, reconsider the value of the feature.
Now, it is a matter of polishing all those features you've added, and refining the content. Images might need to be cleaned up, and things you broke need to be fixed. Sometimes, content you added earlier is now out-of-date or simply needs to be edited or spell-checked. Many aspects of your website can't be considered 'finished' until visitors and/or contributors have had a chance to try them out, so you will probably go through an informal User Acceptance Test. One of my clients has changed the banner image of his website perhaps fifteen times in the last twelve months. And that's perfectly OK!
In terms or development effort, a typical SiteLeads.net web project will have five project will look like this. The percentages are very approximate, and are to be used only as a guideline.
Steps 3 to 5 are largely done in parallel, and vary considerably depending on
Prices for Siteleads.net website solutions range from $10,000 to about $50,000. A $10,000 website would be one whose only real requirement is Search Engine Optimization, while a $50,000 website might have a number of significant features included. For example, e-commerce (shopping basket support, integration to payment system), user/login control (a complete section of the website to support user management, security and dedicated features), significant look-and-feel sophistication. Other projects require multiple websites, where a similar design model across all of them offers an economy of scale and effort. In other words, a twin website project will not necessarily cost twice that of a single website.
With each new client, we go live sooner. Our rule-of-thumb is 8x the time-to-launch duration. In other words, going live two weeks after the project begins suggests a project completion time of four months. So, we stick to an aggressive schedule in the first few weeks of the project, because for some reason, it always sets the pace for the duration of the project.
Still, every project is a little different, and we consider lengthy discussions regarding requirements time well spent before we start mixing the concrete!
Liam Scanlan - liam.scanlan@siteleads.net