HTTP User agent string

When designing web pages we have to be careful of various browsers different ways of interpreting the specification. Traditionally developers read the HTTP_USER_AGENT when the user connects to the server and then send that user content that matches the browsers ability to display. Over the years things have gotten better, Internet Explorer is moving to be standards compliant and thats a good thing.

This recent article points out that Microsoft are putting the words "like Gecko" in its user agent string, so that web servers send them content that is meant for the Firefox browser. Rather than content that was designed for older versions of Internet Explorer. This of course is wrong, claiming to be something you're not could cause other bugs, Microsoft have weighed up the balance of cost/benefits and decided to go ahead. Fair enough, but what is the real solution?

Well whenever you have to do something its best to look around to see what others are doing. If you look over at the OpenGL graphics extensions you see that, whilst the specification has a version number with a set of features, as a programmer I can check to see if a particular extension is actually implemented before I try and use it.

This coupled with a version number could help developers build standards compliant sites but also future proofing them. That way as a browser evolves it gets to either implement its own specific extensions or standards compliant. Everybody using the standards compliant should expect the same on all platforms.


Popular posts from this blog

Windows Server and the Task Scheduler Error Code 0x3

The living wage failure

IDE's and speed