Years ago we struggled when clients surfed to web pages, to try and get any sort of
information out about them.

To get more info, we would present a little page with some client script to determine
(‘mine’ being the operative word) their capabilities (cookes, script, even had access
to Navigation History etc etc)

I was recently contacted by a site and part of the request I was presented with my User_Agent
string
for my initial request.

HTTP_USER_AGENT=Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1;
.NET CLR 2.0.50727; .NET CLR 3.0.04506; Tablet PC 2.0; InfoPath.2; FDM)

Who can determine the most out about this machine?

So your default User Agent strings *do* tell alot about the software you’re running.
We can modify this, but you run the risk of websites etc. not interacting fully with
you (and I know how much we all love our Ajax!)