The humble URL is one of the most unloved things on the internet, yet without it there wouldn’t be a World Wide Web.
For the less techie out there, URLs are web addresses such as http://www.edgehill.ac.uk/. The identify every web site, page, image and video on the internet and on the whole they’ve done a pretty good job over the last 30 years.
In the beginning things were simple. You put a bunch of web pages in some directories on your server and there they were on the interweb. When you uploaded a page it would likely stay there forever. As the web grew, content moved from being static to dynamically generated and this is where it all started to go wrong.
Developers created ways of generating pages using scripts to pull information out of databases or from user input. As developers have a habbit of doing, they get caught up in the technology and lost sight of the user.
Have you ever looked at a web address and thought it was a foreign language? PHP, ASP, JSP, .do at the end of file names – these all indicate the scripting language used to create the website. I might find this interesting, but I bet 99% of people don’t!
Then there’s the query string – that’s the bit after the question mark in a URL. It tells the script extra information that it might need to know about the page you want. Very important, and certainly not bad in itself, but too often there is useless extra information passed in which means the URLs are too long and several subtlety different URLs might actually return the same result.
Ugly, long and and overly complex URLs are something that’s bothered me for quite a while. In the past I’ve created sites with some truely awful URL structures and it’s not big or clever – now I’m committed to doing things right. This is a topic that’s been discussed for a very long time – TBL‘s Cool URIs don’t change is a decade old; more lately Search Engine Optimisation rather than the idealistic goal of a pure site structure has been the main drive for clean URLs.
Let me give a few examples of Bad URLs. First up is Auto Trader:
You won’t be able to see the full link, but it contains loads of pointless extra information when all I want is to see the details of a car.
Often Content Management Systems – which are designed to make the creation of websites easier – are one of the main culprits in creating bad URLs. Brent Simmons has it pinned with this insightful comment:
Brent’s Law of CMS URLs: the more expensive the CMS, the crappier the URLs.
The example given is StoryServer by Vignette which produces the bizarre looking:
I’m fairly sure they don’t have 302,001,303,092 stories on Sky News!
That’s all for now – next time I’ll be looking at some things being done right and the benefits it brings. If you have any examples of really bad URLs post them in a comment (that’s not an invitation to spammers!) and see who can find an example with the most bad features.