News, tips, advice, support for Windows, Office, PCs & more. Tech help. No bull. We're community supported by donations from our Plus Members, and proud of it
Home icon Home icon Home icon Email icon RSS icon
  • gives up, vows to come back later

    Posted on Ascaris Comment on the AskWoody Lounge

    Home Forums Outside the box The Junk Drawer gives up, vows to come back later

    Viewing 0 reply threads
    • Author
      • #2316501

        It was the first of the month yesterday, and I thought it would be interesting to visit to see how the Windows 10 stand-off was going. I was surprised to see that they had released their last monthly data a month ago, and they were packing it in. They said they had refunded their paying customers for their remaining services, and that they would be back after they come up with a better idea.

        The reason for this, they say, has to do with useragents. The link they pointed to didn’t really explain what they were getting at, IMO, but Google hath decreed that the storied string would be phased out.

        The useragent string is a relic from a simpler time, one where things like browser fingerprinting wasn’t a thing yet, and from just before the folly of the “tack it on” model that was soon to be applied made itself apparent. For a humorous rundown of the course of events, check out The History of the User-Agent string.

        The unformatted nature of the string (meaning that there were no predefined fields for each bit of data the string was to contain… there was no way to definitively say, for example, that the OS was SuperDuperOS if that was in the useragent string. Since there is no field format, there is no way for the parser to connect SuperDuperOS to “operating system” unless the parser is already aware that SuperDuperOS is the name of an OS. The same’s true for browsers, and that’s been a constant problem for developers of smaller browsers like Vivaldi, Waterfox, and so on. If they identify as themselves, parsers that are looking for Chrome, Firefox, Edge, IE, or Safari won’t recognize it. Since the convention is to simply tack the actual browser name on the end, the parser will simply ignore that which it does not understand and interpret the rest of it, which leads to the annoyances that Waterfox Classic users sometimes experience, with sites claiming that their browsers were badly out of date and refusing to let them visit their site (because reasons), even though those browsers may have been updated an hour before getting that message.

        The twisting of the useragent string into something for which it was ill-suited happened quite early in the history of the web (as described in the link above). Having browsers claim to be something they were not in order to get web sites to serve up the “good” version of the page was a short-term hack that ended up persisting for more than 20 years. Look at this thing:
        <p class=”useragent”>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36</p>
        That’s from Chrome, the de facto standard across the web today. It claims to be Mozilla 5.0, which it isn’t. It claims to use AppleWebKit, which it doesn’t. It claims to use KHTML, which it doesn’t, and it says it’s “like Gecko” in order to capture any scripts that may be fishing for that. Only then does it finally get around to identifying itself as Chrome, only to then claim also to be Safari.

        That useragent string listed three separate layout engines (AppleWebKit, KHTML, Gecko) that it does not use, but the one it does use (Blink) isn’t listed. It’s true that Blink is a fork of Webkit, which is a fork of KHTML (developed by good old KDE, like my Linux distro and desktop!), but it’s a separate thing now.

        Back when the events described in the linked post were going on, useragent silliness was happening because of a lack of web standards. Things were evolving rapidly, and site owners wanted their web pages to have the ol’ razzle dazzle, so they were not going to just have their web designers create pages that worked everywhere. They had to support the latest stuff, but it wouldn’t work on competing browsers, so there had to be some way to sort the right content to the right browser.

        One of the big “killer” features of Mozilla Browser and Firefox back then was that they were standard compliant, which IE was not. Microsoft was a member of the W3C committee that creates the web standards, but they persisted with their non-standard IE anyway. What better way to sell Microsoft IIS web servers and Microsoft Frontpage web design software that were already tuned and ready to go with Microsoft’s proprietary IE features?

        Now all the current browsers are standards compliant, and have been for some time. There is still considerable useragent sniffing going on, but its main purpose has changed. While before the useragent string was used to sort the correct web page to the correct browser, now useragent sniffing is used for content gating, with web authors deciding it’s easier to “support” (read “allow”) certain browsers and pretend the rest don’t exist.

        It’s also used by the scripts that Netmarketshare used to gather its data, not to mention the scripts that seek to track us even when we’ve made it clear (through our deletion of cookies) that we don’t want the “relevant ads” that tracking brings us. Browser fingerprint blocking is an important step in protecting privacy across the web, and the useragent string is one of the things that is used in fingerprinting. While I liked being able to get the latest statistics that brought, the useragent string has been twisted so far beyond any sensible standard that it makes sense for it to go. It hasn’t happened yet, though, which makes me wonder why didn’t wait until it did happen before throwing in the towel.

        Group "L" (KDE Neon Linux 5.20.5 User Edition)

        3 users thanked author for this post.
    Viewing 0 reply threads

    Please follow the -Lounge Rules- no personal attacks, no swearing, and politics/religion are relegated to the Rants forum.

    Reply To: gives up, vows to come back later

    You can use BBCodes to format your content.
    Your account can't use Advanced BBCodes, they will be stripped before saving.

This website collects data via Google Analytics. Click here to opt in. Click here to opt out.