|Who do you want to be today?
Only your user-agent knows for sure.
A tidbit from "The Curse of Monkey Island":
People have a sentimental attachment to their names. It may surprise you, then, that names play a large role in an environment as emotionless as Internet architecture. Every time that your Web browser requests a page, its revealing a name and an address. Now, before you get all squeamish that people are going to find out that you were visiting Bored.com, I should note that your browser isn't giving out your name, but rather its own name and IP address.
This browser name is called a "user-agent string". This name may not look like "Fanny OBrowser" or "Alexander Webbiecakes", but its a legitimate name nonetheless. Like the name "Rex Fortune, Adventure Seeker", user-agent strings give Web servers an indication of what a browser is capable of. Some examples of user-agent strings:
Between them, these two browsers account for 85%-90% of the market. There are, however, dozens more. Browserwatch.com lists pages and pages of browsers, from Ariadna, a Russian-only browser, to Hexabit Junior, a browser designed just for kids. Each one of these browsers has a unique user-agent string.
So why do servers insist of retrieving these user-agent strings from browsers that visit them? Two main reasons:
So, You Want to Write a User-Agent ...
Which brings us around to WebTV. When our engineers coded the first WebTV browser, they had to come up with a user-agent string that the browser could use to send to sites. How to do it?
Well, the true geeks in the audience will want to refer to the HTTP spec, but I'll give you the juicy tidbits to save you the trouble:
What's a "product token"?
Sorry folks, but the user-agent string
just ain't going to fly with the good folks at the W3C. And you don't want to mess with them; they're international.
Given the guidelines above, WebTV chose a user-agent string that well described its browser:
This user-agent string identifies both the particular WebTV version (1.2 in this case) as well as saying that the browser is compatible with Netscape 3.0 (Mozilla) and IE 2.0 (it would say IE 3.0, but WebTV doesn't support VBScript)
It Gets More Complicated ...
WebTV users access the Internet through proxy servers, which are never sure exactly what version of WebTV sent the request. Due to this, the user-agent string that is sent via HTTP is a "catch all" for the oldest possible WebTV browsers that are out there.
User-agent string for the current WebTV Plus build:
User-agent string for the current WebTV Classic build:
So How Did We Get On This Topic In the First Place?
There are hundreds of different user-agents floating around on the Web, identifying themselves as anything from "ANT Fresco-1.72/Mozilla-Spoofer Mozilla/2.02 (compatible; ANT Fresco/1.72; RISC OS 3.70)" to "ZzZ". User-agents serve as another reminder that even though you must have an identity on the Internet, that identity can be anything you want. As Rebecca Pidgeon said in the Spanish Prisoner, "You never know who anybody is, except me. I am who I am."