Why is making a website so hard?
In all of my years of web development, I’ve never been a part of a project that didn’t experience some level of difficulty during creation. Clients and developers alike are guilty of saying things like, “I don’t understand why this is so hard!” I figured it was high time someone gave them some insight about why creating websites is not as easy as surfing them. There are a few common bottlenecks that can make developing a website difficult: establishing the work agreement, creating the content, and securing approval.
Establishing an agreement
A while back I wrote a long post about how to establish agreements for web design. I’ve since evolved my understanding, but the overall message is still valid. One thing that has become much clearer to me is that it’s A) hard to determine what the deliverables are and B) quite challenging to forecast how long something will take and how much it will cost. Website creators want to what they are being tasked to create, and clients want to know how much it will cost and how long it will take. In order for both parties to acquire the answers they are looking for in order to solidify the agreement, the project must clear the first hurdle that causes projects to be hard: clear definition. I can not emphasize enough how critical it is to have a clear scope for a project, and it is also the most difficult element to attain. It’s tough for clients to know exactly what they want without deep knowledge of the Internet technology and cultural trends. And, it’s impossible for a developer to quote without a clear directive from the client. The only way out of this quagmire is a lot of open conversation and trust.
Clients can help this process by figuring out what they want and how much they want to spend before contacting a firm to help them create something. The challenge is that clients are mostly undereducated about the costs associated with creating a website and what kind of solutions are available to them. To learn more about what kind of solutions are available to them, clients can do one of three things: 1) Hire an educated person internally to oversee the development and ongoing management of their website, 2) Hire an outside consultant to develop the plan for their website before contracting a firm to design and build it, or 3) Read my blog (and others like it). ;)
As far as costs go, clients are often scared to talk about money in fear they will be overcharged. Clients should come to the table with a clear sense of their budget. If you don’t know how to determine a budget, a good rule to follow is to spend 25% of profit for the period of time for which the project will run. As an example, if a retail client makes a conservative prediction that they will sell $20,000 a year in product and they want the site to run for 2 years, they will sell $40,000 in gross sales for that period. Retail typically marks up their product double what they pay for it, so let’s assume that’s $20,000 in profit (it’s not really because that doesn’t include overhead, but go with me here). Then that company should budget $5,000 for web development, which is a quarter of their profits. This example assumes that the company is spending 100% of its marketing budget on their website, which is common for small businesses.
Now it is up to the web developer to create a solution within that price range that will work for the client. This is where a designer or programmer will demonstrate their ability to provide services professionally. Determining what they can deliver for the client within their price range is part of that equation. The other is the how smoothly that determination process goes. If you take your car to a mechanic and they don’t have a clear and logical starting point, your confidence is shaken immediately. For more about how to effectively manage projects, read project management and development process for web designers and programmers.
Creating content
First, let me define content. Content is the information a user consumes on a website. Content includes text, images, motion, and audio, but not everything is content. A graphic used to create a rounded corner for a button is not content. A photo for the main story is content. Content is everything to a website. Not only is content the magic that should drive a surfer to take the action for which the site was created, but it is also the thing that drives the organization and design of the site. Yet, content is the most overlooked part of the development of a website. I can’t tell you how many times a client has come to me for design services without any content. Web design is the practice of arranging content on a web page to achieve the goals for which the site was created. Therefore, a client must have content before a design can be created. That doesn’t mean that a client can’t hire a web design company without having content. It means that the content development must happen before any mock-ups can be created.
Ok, so, a client needs content first. Why does that make content creation a bottleneck? Developing content for a site isn’t challenging because writing good copy or taking beautiful photos is hard, rather it is challenging because it is hard to create content that clearly explains a business. I compare the process to the average person at tax time. They show up with a shoe box full of receipts and the preparer is supposed to make sense of it all and output a clean, regimented format that will move smoothly through the government’s system. Here’s a few scenarios that make content development challenging:
- The product isn’t finished, which means we can’t take photos yet.
- The client wants a “Services” page, but they don’t have a clearly defined list of services.
- The client wants to use some old photos on the history page, but they are in a storage closet that they can never find the time to access.
- The person that knows the plan for the upcoming company event is on vacation until the week before the site has to be launched.
- There are eight databases with the client’s information and they are full of conflicting information and there are six different people in the company that have to be consulted to resolve the conflicts.
Creating content is also a bit like therapy for a business. Once a business’ information all comes together in a clean format, they often find themselves wanting to clear out old information, update some information, and add things that have been in their head for some time. This kind of deep thinking can slow the content creation process down, especially if the person overseeing the process on the client side is the owner or some other really busy employee.
The best thing to speed up the creation of content is for a client to do some initial information architecture before hiring a firm to build and design a website. Information architecture is still fairly new a largely misunderstood. It can cover a range of meanings from the discipline, to the job title, to the deliverables. The IA I’m referring to is the organization of a company’s stories. This means pulling together the following information:
- History
- Product and service data, including: prices, descriptions, and specifications.
- Contact information, including: sales, customer support, and more.
- Legal, including: terms of use, privacy policy, and copyright.
- Promotional message, including: sales, campaigns, and USPs.
Securing approvals
I was talking with my friend Kyra the other day about what factors that influence the time and money required to develop a site. I shared that building websites usually takes several months and that most of that time is spent waiting on both sides of the project. If I were to redesign my own website, for example, it would only take me a couple of days because I don’t need to secure approvals or gather content from another person or team. There is not a lot of wisdom that I can offer here, but it is important to note that the majority of time spent on developing a website is not spent by fingers on a keyboard, but rather thumbs twiddling in eager anticipation for an approval. Approvals are slowed due to a few reasons:
- Someone is on vacation.
- Someone is busy for a few days.
- Multiple people are involved in the approval process.
- One person is the approver, but needs to ask several people about specific details.
- The client wants to change something, but doesn’t have the headspace to think about it for a few days.
- The client doesn’t like the design, but doesn’t know how to express their concerns.
- The requested change is a big one and the developer is already committed to another deadline.
The best thing a client can do is appoint one person they trust to be the approver and go with their decisions. My friend Jason told me that the last year they made the Camaro, it was handled by a committee, which is why it is was so lame. The hot new Camaro was designed by a small team and look how sweet it turned out! Some people may hate it, but a ton more love it. A great website will not please everyone, in fact, a small group should vehemently dislike it. Select a decision maker, and don’t reduce everything down to the safest choice and you will speed the approval process along and ensure a more effective website.
Conclusion
This is by no means an exhaustive list of the challenges that make web development projects difficult. I didn’t cover all of the challenges that go into developing web applications, ecommerce, community building, etc. However, the above three cuplrits seem to plague all projects. Hopefully discussing these challenges and some potential solutions can help all of us overcome them on future projects.
What challenges do you face when developing a project (clients and/or service providers)?


Justin! Cyberspace missed you! But I see that you are in full swing again with one meaty post. If I was a designer or programmer I’d have lots to say about it. since I’m not, I will say that it is some damn good reading. Thanks for the education.
K
From Kyra on August 16th, 2007 at 12:29 pm
You’re welcome Kyra. ;)
From Justin on August 17th, 2007 at 9:11 am