It is an unfortunate fact that many websites work badly, from individuals’ blogs to small organisations’ simple sites to expensive sites belonging to large enterprises. The problem is that the managers of the organisation do not understand the web. This is my attempt to provide what they need to know without getting too technical.
- Content and functionality
- Domains and structure
- Search engine optimisation
It is easy make the common mistake of thinking that a website is primarily defined by its design and appearance. This is just one element among many, and design decisions rarely have long term consequences: you can always change the design later.
We will start by getting a key technical fundamental out of the way: it should all get easier after the next two paragraphs. The meaning of a URL: the address of a web page, something like http://example.com/section/page.html.
http:// (the “protocol”) says fetch this from a website, the example.com specifies the site to fetch it from, and the rest of specifies a particular page. The http:// is needed because there are other ways of connecting example.com other than to fetch a web page: file transfers, remote logins, sending email, etc.
Historically the web pages were files stored on a computer running the site, and the “/section/page.html” would specify the file (.html specifies a web page) called page.html in the directory (folder) section. Nowadays the systems running your website may interpret it differently. However, it is still good practice make sections of your site in what look like different folders. Logical organisation makes your site easier to understand.
The other important points about URLs are:
- They should not change: visitors bookmarks and links from other sites can be lost.
- It is good practice to keep them short and meaningful
- Leave technical information (such as the “html” above) out.
- If you do have to change them, make sure that there are “301 redirects” set up to send visitors and search engines to the new URL. You do not need to know how a 301 works, just make sure someone tests that the old pages do redirect.
For more detail read cool URLS don’t change by Sir Tim Berners-Lee, the inventor of the web. It also rebuts some of the excuses developers come up with for changing URLs.
The domain name is what identifies your site. It is something like example.com.
The domain must be registered in your name. If you allow a web developer or designer to register it in their name, they will have ultimate control over the site (as well as email address on that domain, and possibly other services).
You need to make some choices about your domain name:
- Is it better to register a global domain (such as .com or .org) or a national one (such as a .co.uk or a .lk)?
- Should you use a full name or an abbreviation
- Should you use a company name, or a generic term for what it sells?
Some general rules:
- If your site has a strong, permanent geographic focus that lies within a country, use a domain within that country’s code (“ccTLD”). Sites about a particular place but aimed at global visitors are a borderline case.
- Keep it short enough for people to type remember and type in easily.
- It is usually more important to be memorable and and distinct than to incorporate generic terms. Sometimes you can do both, like damnsmalllinux.org. A distinct name is easy to find with a search engine like Google, even if people have forgotten the exact domain name.
- You should register and use a domain within a top level domain relevant to your purpose: a commerical organisation should use .com, .co.uk etc., a non-profit should use .org, .org.uk.
- It is worth registering the alternatives. If you use myname.co.uk, you should register myname.com (if its available), and obvious misspellings (like mynam.co.uk).
- You should avoid switching away from an established domain. If you must do so, then retain ownership of the old domain and set up a “301 redirect” to the new site.
- Some countries allow a domain directly under the ccTLD. You can have myname.im or myname.lk. These are short and memorable, but the rules vary by country.
- Less well known generic domains (like .biz and .info) are generally to be avoided, as are misused (i.e. like .tv) country domains. There are many exceptions to this rule, especially if you really need a short domain name (like bit.ly).
- The rules for country domains ultimately depend on that country’s laws. Beware of foreign domains: it could lead litigation in a foreign country. For the same reason, it is preferable to use a registrar in your own country or one with a legal system that puts the registered owner in a strong position (note: this is rapidly changing, and there are problems in countries with otherwise strong legal systems such as the US and the UK)
Software to run your site
Unless your site is absolutely tiny (literally one or two pages) you need software that will allow you to easily add and update content on your website. This is usually a content management system (CMS) that lets you login, write the text of pages into forms, and upload images.
The good news is that that there are a lot of very good open source CMSs: no license fees to pay, no licensing process to manage, and you can pay developers to alter or extend to system to fit your needs. If you stick to these you are reasonably safe from licensing and legal issues. In theory, you may run into problems over the copyright of custom work done for you. In practice such problems are rare, but you should check that you have either ownership or a clear license.
A CMS will give you a what you need to run a simple site: pages of text, a blog or news section, forums, perhaps even an online store or basic social networking. Sometimes it is better to write a CMS that fits your needs. This is most commonly because you want a specially designed database that “understands” how you content is structured.
My own financial encyclopedia is a good example. It needs alphabetic ordering, an alphabetic list of short definitions linked to articles (sometimes more than one short definition per article), categories with category groups, etc. — all best served by a properly structured database.
The good news is that a custom CMS is not as difficult or expensive to do as you might fear. It will be a lot more expensive than just installing a standard CMS and doing a little customising, but the existence of “web frameworks” means a developer no longer has to re-invent the wheel to write a custom CMS.
People to build your web site
Web designers are the people who make your site look right. It is a common mistake to think of a web site as primarily a matter of design. This may be true if a site is very simple with very little actual functionality — a page of two or text and pictures.
The more functionality a site has, the less the design matters. Unless there is an existing CMS that delivers exactly the functionality you need, you need a developer to write what you do need.
If a site is well engineered the design can be changed without re-writing the functionality. This means it is not important to get the design right first time. Just get it working.
A competent designer will deliver a website that will work well in all the common web browsers (at the moment Internet Explorer, Firefox and Chrome). They will also deliver something that works reasonably at different screen/window sizes. It should also work with screen readers used by the blind, and be comprehensible to search engines (these two are linked).
A good designer will also take care of “on-site” SEO (or work in a team that includes an SEO specialist), and at least make an effort to deal with usability issues (or, again, work with a specialist).
Dealing with developers is a bit more difficult. Testing technical competence and technical quality without technical knowledge is tricky. A good basic principle is to hire people who are intelligent, and who have a genuine interest in the technology they use: people who do it primarily because they enjoy it, rather than it being just a job.
If they are doing a lot of customisation, or writing a custom CMS, it is even more difficult to test whether they understand the conceptually difficulties of database design. You might have to resort to bluff or finding an expert to check it. It goes beyond the scope of this article to discuss this at length, but an appallingly high proportion of web developers do not understand the basics relational databases.
If you have in-house developers and database administrators, you may be able to use them to check of the quality of web developers work. This assumes that they are competent themselves which is just as hard to verify!
Testing your site
A site requires testing in several areas.
- That the functionality works.
- Performance: how fast pages load etc. There are many tools to do this, but you need to do some testing that matches your customers’ locations and connection speed.
- Usability: whether visitors can do what they want to on the site. Can they find the information they want? Can they make purchases easily? Can they register for forums or mailing lists easily?
Research by Jakob Nielson, the leading expert on website usability, suggests testing on small groups assigned tasks to carry out (“find the red widget user manual on our site”) leads to huge improvements in usability. He found that even minimal proper testing has significant benefits.
Content and functionality
It is well worth spending time thinking about what functionality you can include. For example, suppose you are a manufacturer of consumer products, it may see obvious that you want a product catalogue on your site, and links to retailers who will sell your products (both online and off-line), and possibly recruitment and investor relations sub-sites. However, there is a lot more you can do. A few examples:
- Product manuals for existing customers: very useful for portable products that may be used away from home!
- Information for retailers, maintenance people etc.
- Forums for customers to discuss your products and related issues. This can also reduce customer support costs.
- Other information useful to customers and prospective customers.
- Information for prospective dealers.
There are far more possibilities, and there are overlooked possibilities on most web sites whether corporate, small business or non-profit.
Search Engine Optimisation: good site design
You usually want as many people as possible to find your site though search engines (like Google and Bing). The basics of search engine optimisation (SEO) are not difficult, but the practice is hard. You need to ensure that you site does two things:
- Tell search engines (Google and Bing are usually the ones that matter) what each page is about, so it can be returned for the right searches.
- Convince search engines that it is a high quality site, so that it comes high up a page of search results
The first, and easier, part of search engine optimisation lies in “on-site” factors. How the content on you site looks to search engines. Important issues are:
- The page text contains the keywords people search for. Over do it by repeating words a lot and the search engines will penalise you for trying to fool them.
- The page title and headings contain the keywords (over do it and you will get penalised)
- Important pages have lots of links from other pages, and the text in the links contains the keywords (overdo it and it might backfire — do you see a pattern here?).
- Images have alternate text. If no alternate text is appropriate then there should be blank alternate text to indicate this.
- Headings are properly formatted, so the search engines know they are headings: it is possible to make text look like a heading (visually) properly marking it as a heading.
So, how can you check all this? A rough check of the most important things is not that difficult:
- Page titles will appear in the window title bar or on the tab, depending on your browser and settings.
- Check any text that pops up when you hover over links and pictures.
- The Firefox web developer toolbar’s information section will display a list of links from a page, meta on the page, and much more.
The meta information is additional information about a page that is not normally visible to visitors. but is likely to be used by search engines and automated systems. Full coverage of this is well beyond the scope of a relatively non-technical article.
Most of the above is really just good web design practice. SEO usually requires a bit more.
Search engine optimisation: ranking high
Doing the above will tell the search engines what a site is about. This may be enough. In other circumstances there will be a lot of competition so you have to persuade the search engines that your site should rank above other containing the same information. It all depends on how many sites have pages containing the words that will be typed into search engines by the people you want to visit your site.
A corporate information site you want found by people searching using your company name is usually a pushover. If you are selling certain branded pharmaceuticals it is very, very difficult. Most sites fall somewhere in-between.
A common mistake is to assume that ranking well for a fairly small number of easy to rank for terms means that you have achieved the ranking you need. This usually means that you are neglecting opportunities. Think about what other searches you could benefit from.
Suppose you own a hotel in a small town. You come top in Google for the name of the hotel, and for “[town name] hotel”. This is a good start, but you can also find potential customers through searches such as “[town name] holiday” , “[county name] hotel”, “[town name] places to stay”, and many, many others. There are ways to research which are most important, but for the moment I just want to make the point that ranking for a few phrases for which there is no real competition is probably not enough.
The main way in which you persuade search engines to rank pages from your site highly is to get links to your site (especially links to the pages you want to rank highest) from other highly ranked pages. There are Firefox extensions that will show the Google “page rank” for the current page, but beware that this number is usually out of date, fluctuates, and is only a very rough indication.
It is easy to over-enthusiastic about link building, but there are pitfalls from the unwary.
- Links from relevant sites are the most valuable, links from sites on unrelated subjects are often worthless.
- Swapping links is less valuable than getting one way links. Swapping links with spammy sites (or linking to them for other reasons) is damaging.
- Links that search engines think have been paid for will be discounted.
- Sudden surges, or patterns of links that look unnatural to search engines, will be discounted.
- Links from links pages and directories, or, to a lesser extent, any page with lots of links on it are less valuable.
- Lots of links from spammy sites, or sites suspected of selling links.
The very best way to get links is to make your site so good that people link to in unasked.
SEO is not always the answer. For very competitive search terms it may not be feasible or affordable to get a site to the top.
There are also huge numbers of supposed SEO experts who are either dangerously ignorant, or who deliberately use risky approaches that provide short term gains (until they get paid).
Assume that anyone offering SEO services that go beyond the basic good practice described is a snake-oil salesman unless proved otherwise.
Sometimes SEO will not achieve its objectives, or may not be sufficient by itself. You can put your site, with your choice of wording, on top of the search results by buying advertisings from search engines. In addition you can buy advertising on other sites (both the major searh engines will act as intermediaries to arrange this) very cost effectively.
The purpose of your site
One question you need to ask yourself before you start is what you are actually trying to achieve. One of the easiest mistakes to make is to limit yourself to just part of what you could achieve. Assuming you are running a business:
- Can it generate sales?
- Can you provide post sales support? Can that cut costs?
- Can you improve customer loyalty by adding community features (such as forums) to the site?
- Can you gather information on customers or potential customers who visit the website?
- Can it support dealers or other businesses that work with you?
- Is it a potential recruitment tool?
- Is it about your products or your company? Some companies have separate websites for multiple brands, and a corporate information website as well.
- Which countries or other geographical areas are your target? Do you need multiple websites?
The list of thing you can achieve may be different for a non-profit website, but it is just as varied. For example a political website may be aimed at persuading waverers, informing existing supporters, providing resources to active campaigners, raising funds, organising activities, or all of these.
You may also need to think beyond current needs. What may you do in the future? Is the system flexible enough to cope? A major advantage of a site written using a web framework rather than just installing an off the shelf CMS is that you can almost always add new functionality without replacing the system.
It is also important to ensure that your data (customer information, product information, whatever else you site may need), that is needed by the site is kept in formats that can be accesses and processed by whatever systems you may use in the future. This is a good argument for using open source software, and an equally strong argument for using properly designed databases.
What I have not covered
There is much that is important that is out of scope, but you should at least know what the key issues are:
- Security: both securing the site and the server it runs on against hackers, and securing communications between the site and those who run it (and possibly visitors as well). This is particularly important for finance and e-commerce sites, but its always better to err on the side of caution in assessing security needs.
- Technical choices: omitted for obvious reasons.
- Scalability: the size to which a site can grows, especially in its ability to handle large numbers of visitors. If you need it you can afford to pay a specialist consultant.
- Writing for the web: integrating writing with SEO, and ensuring the style of content suits the web.
- User management and community management (for forums etc.).