Microsoft Sends Broken Stylesheets to Opera
An anonymous reader writes "The Register has a story that the MSN homepage serves a different style sheet to the Opera web browser that makes Opera appear to be broken. Is this deliberate or a mistake? Who can possibly say? Opera's own take on the situation can be found here." This is not the first time.
Why did they pick Opera, and not Mozilla or Netscape, not to mention Safari?
Just tried www.msn.com with Opera 7. No matter what I set the agent identification to, msn keeps sending the wrong (faulty) stylesheet.
It looks like MSN uses more advanced techniques to find out what the client is than just the agent identification, in order to sabotage Opera in this case.
Older version of IE were also purposely broken in the same way; forced obelesence? As a regular Opera user I notice the same problem on some portions of the Microsoft web site as well (not just MSN).
To me this just proves that the remedy isn't working, that MS as a company prefers dirty tricks to competition and that the states that have not agreed to settlement had better press MS hard. (Wow holy run on sentence batman). It's sad that a company as successful and as full of talented people as MS has to resort to this type of behavior when a competitor comes out with a good product.
I'm reminded of a famous quote "Can't we just all get a long". I guess if your MS and you can't or won't compete the answer is no.
"Science is about ego as much as it is about discovery and truth " - I said it, so sue me.
According to the web logs on the various sites I host, Mozilla and other Gecko-based browsers make up almost 15% of web traffic now, and Opera has a signficant enough user-base that it also makes it into the top 10 user-agents on web sites that get 1M+ hits per month from 100+ countries. I think the problem is that people need to move away from Microsoft web deveopment tools until they can learn to play nice and output standards-compliant HTML code. Ever try using the "save as HTML" feature in a Microsoft product? A 100-row table becomes a 2MB plaintext file by the time it makes it to the web...
My browser is set to send nonsense as its id strings; it doesn't seem to do my surfing experience much harm.
[FUCK BETA]
I used to have different style sheets for different browsers in an effort to make my websites look good for all of them. More than once I updated some of the html and only tested the pages in IE where they looked fine (I know, I know, but programmers are naturally lazy.) It turns out the style sheets for the other browsers totally made the pages look broken. I'm not defending MS. It would not surprise me if they did it on purpose, but I am saying it is easy to do. Now I just have one style sheet and I made sure to use simpler html that would look good on all browsers. Sometimes simple is better.
Pocket PC Games
W3C calls their CSS and HTML specifications as "Recommendations" rather than "Requirements" or "Standard", per se. Instead, they provide specifications on how user agents (be it browsers or cell phones) are recommended to follow.
Of course, it would be lovely if all browser makers were to forced to follow the recommendations down to the nitty gritty, but even the recommendations don't always provide strict requirements on how a property or class should be rendered.
The fact that Microsoft is pushing out (delibrately) a broken style sheet is just wrong.
From the old article, one of Microsoft's marketing directors should get his facts straight:
... He added that Microsoft wants users to visit the Web site "regardless of the browser they choose."
"We supported the latest W3C standards when developing the content and services delivered from MSN,"
But Visse recommended that for the best experience with MSN, customers should use a browser that tightly adheres to the W3C standard.
"If customers choose to use a browser that does not tightly support W3C standards, then they may encounter a less then optimal experience on MSN," he said.
except, that if you ask the W3C validator, it doesn't work!
www.microsoft.com
www.msn.com
Microsoft has a long history of intentionally breaking compatibility with other products to promote their own, as early as (and maybe earlier) the Windows 3.1 -> 3.11 "upgrade" which conveniently broke the diagnostic and repair software PC Tools.
There is very little future in being right when your boss is wrong.
Actualy thats an interesting point. Should I bother to make a special version of my page for older browsers (Like NS4 and IE4) which have frankly awful CSS and DHTML support? Especicaly give how few people still use those two browsers. Or should I maybe have one primitive version which runs in even mosaic etc, and one which works with all the more common browsers which conform to the latest standards? And why cant there be some nice easy javascript way to determine if browsers support CSS2 and other fancy standards?
On (semi) related topic. Why has slashdot.org blocked validator.w3.org? Are they embarresed by the results? After all I can always do a "Save as" and then upload the page to the validator.
Pretty childish, if you ask me.
J.
Comment removed based on user account deletion
I messed around with a few other UserAgent strings, and it gets a little clearer:
"Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.0 [en]" -> site.css
"Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Oprah 7.0 [en]" -> site-win-ie6.css
So far, exactly as reported in the article
"Mozilla/4.0 (compatible) Oprah 7.0 [en]" -> site.css
"Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.1) Oprah 7.0 [en]" -> site-win-ie5.css
"Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1; Opera 7.0) Oprah 7.0 [en]" -> site.css
It's pretty clear what they're doing:
In other words, it doesn't matter what Opera claims to be compatible with - they always get the default sheet, just like a completely unrecognized browser does.
I'm trying to apply Hanlon's Razor here, but it's hard...
Honestly, this is not an effort against Opera. If I choose to break my own site, so be it..
/. story on that.
.0004% of our hits, I'd have to say "Do the change, ignore Opera".
.0004% of the browsers hitting them were Opera, they wouldn't waste the time to do make special pages specifically to break Opera.. It's simply a bug.. It's not worth the effort.. If someone did anything, I'd bet they were trying to make a better page for the Opera people, and failed.. Probably a newbie was given the job. Who cares if you mess up the page that no one sees..
In my industry, just about every site does video of some sort. There's always some group that feels they were intentionally blocked because of whatever reason. I've seen sites that stream exclusively Windows Media, and some that use propriatory plugins like "Emblaze".. Some were using the Netscape "Push" method (send a multipart header, and then send a new mime delimiter between frames). Netscape "Push" doesn't (or didn't) work with MSIE.. Windows Media doesn't work with Linux. (with a few exceptions).. Something doesn't work with something else.
If I choose to make my site not work with MSIE or Netscape, and only let Opera viewers see it, well, it's my site.. If Slashdot decides tommorrow that they like a feature of Mozilla 9.999, and it doesn't work with any other browser, including MSIE, how many of you are going to be bitching for MSIE compatability?
I'll get a bunch of comments back "Microsoft Sucks", but I'd *LOVE* it if they'd put the REMOTE_USER_AGENT string beside your name in the comments.
For those curious, mine is:
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3a) Gecko/20021212
I'm not defending Microsoft. It's shitty that they did it, but honestly it's their site. Try doing a Windows Update from Netscape, that doesn't work either.
Want more fun? Try installing a nice fresh copy of an older Microsoft OS (say WinNT 4.0), and get yourself up to day.. Years ago, they broke the Microsoft pages, so you couldn't get the updates. But I can't say that I've ever seen a
Where I work, we try our best to make our pages render correctly on our machines.. That means, keep everyone in the office happy, and hopefully it will make the majority of our customers happy. We have enough varity by choice to keep things interesting. here's the short list of the browsers we use:
Win98/Win2k/WinXP:
MSIE 5.0 -> MSIE 6.1
Netscape 4.7 -> Netscape 7.01
Mozilla 1.1 -> Mozilla 1.3a
Opera (unsure of version)
Mac: OS/9, OS/X
MSIE (unsure of version)
Netscape (unsure. various versions)
Mozilla (unsure. various versions)
Linux: (Slackware)
Mozilla 1.1 -> 1.3a
Netscape (various)
Konqueror 3.0.1
But sure as hell, we'll have some sort of rendering problem on some browser, and someone will scream that there's a conspiracy against them specifically..
Our sites don't require any special browser. They all work. We don't know of any compatability issues right now, but I'm sure someone will find that Konqueror v1.0 won't work with a particular page, if they try hard enough. Our site has average users browsing. Some advanced users, lots of regular users..
In the last 24 hours we had 17,017 different REMOTE_USER_AGENT strings sent to one of the servers, in 1,949,023 requests from 116,273 unique IP's.. If I take the list and:
cat list.txt | cut -f 1-3 -d ";" | sort | uniq -c > work.txt
less work.txt
Here's the top 10 results:
474500 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1
317359 "Mozilla/4.0 (compatible; MSIE 6.0; Windows 98
140794 "Mozilla/4.0 (compatible; MSIE 5.5; Windows 98
91425 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0
66331 "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98
31072 "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0
29963 "Mozilla/4.0 (compatible; MSIE 6.0; AOL 8.0
26778 "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0
25426 "Mozilla/3.0 (compatible
20841 "Mozilla/4.0 (compatible; MSIE 5.01; Windows 98
And in comparison, we'll look at some other top 10's.. Here's the top 11 Linux clients (11, because the first Opera was #11)
grep -i linux work.txt
1563 "Mozilla/5.0 (X11; U; Linux i686
387 "Mozilla (X11; I; Linux 2.0.32 i586
161 "Mozilla/5.0 (compatible; Konqueror/3; Linux
145 "Mozilla/4.7 [en] (X11; I; Linux 2.2.13 i686
96 "Mozilla/5.0 Galeon/1.2.7 (X11; Linux i686; U
72 "Mozilla/5.0 Galeon/1.2.5 (X11; Linux i686; U
67 "Mozilla/5.0 (X11; U; Linux i586
64 "Mozilla/4.78 [en] (X11; U; Linux 2.4.7-10 i686
56 "Mozilla/4.78 [en] (X11; U; Linux 2.4.9-34 i686
46 "Mozilla/5.0 Galeon/1.2.6 (X11; Linux i686; U
39 "Opera/6.11 (Linux 2.4.2 i386; U
And the top 10 Opera clients.
127 "Opera/6.01 (Windows 98; U
118 "Opera/6.05 (Windows XP; U
104 "Opera/6.05 (Windows 2000; U
74 "Opera/7.01 (Windows NT 5.0; U
72 "Opera/6.05 (Windows 98; U
60 "Opera/6.0 (Windows 98; U
56 "Opera/7.0 (Windows NT 5.1; U
49 "Opera/6.0 (Windows 2000; U
41 "Opera/7.0 (Windows 98; U
39 "Opera/6.11 (Linux 2.4.2 i386; U
Ok, lets give better Opera numbers. It seems Opera has a few different formats for its browser string. Thanks guys. That helps me a lot..
The top 10 browser string with "Opera" anywhere in it are:
cat list.txt | grep -i opera | sort | uniq -c | sort -r -n -k 1
---
752 "Mozilla/4.0 (compatible; MSIE 5.0; Windows XP) Opera 6.05 [en]"
627 "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows XP) Opera 7.0 [en]"
617 "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.0 [en]"
378 "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 98) Opera 7.0 [en]"
277 "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.01 [en]"
271 "Mozilla/4.0 (compatible; MSIE 5.0; Windows 2000) Opera 6.05 [en]"
246 "Mozilla/4.0 (compatible; MSIE 5.0; Windows 98) Opera 6.05 [en]"
222 "Mozilla/4.0 (compatible; MSIE 5.0; Windows XP) Opera 6.05 [de]"
194 "Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.0 [en]"
156 "Mozilla/4.0 (compatible; MSIE 5.0; Windows ME) Opera 6.05 [en]"
Or more specifically, lets find every Opera browser regardless of OS type.. That's just about as big as we can inflate your numbers.
cat list.txt | grep -i opera > work.txt
cat work.txt | grep ^\"Opera > a.list
cat work.txt | grep -v ^\"Opera > b.list
cat a.list | cut -f 2 -d \" | cut -f 1 -d " " > opera.id
cat b.list | cut -f 2 -d ")" | cut -f 1 -d \[ >> opera.id
And then a little cleanup in 'vi' to fix the leading space, and the space versus slash in the two types...
cat opera.id | sort | uniq -c | sort -r -n -k 1
---
2565 Opera/6.05
2488 Opera/7.0
678 Opera/7.01
549 Opera/6.01
537 Opera/6.0
438 Opera/6.04
336 Opera/6.03
105 Opera/6.11
63 Opera/5.12
47 Opera/6.02
47 Opera/5.0
43 Opera/6.0/\xa4/
32 Opera/5.02
30 Opera/4.0/Beta/4
28 Opera/5.11
27 Opera/5.01
21 Opera/6.01/~/
14 Opera/5.12/\xa1\xe8/
13 Opera/3.60
12 Opera/5.12/OCV2/
9 "
7 Opera/6.1
2 Opera
1 Opera/6.01/OCV2/
Now honestly, who should I be designing pages for? the 2,500 hits from Opera 7.0, or the 474,500 from "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 ?
**WE** do respect peoples ability to choose what browser they want, and *WE* won't limit it, but I'd bet with these numbers in front of them, most bosses would have the pages designed for the majority..
If the decision were presented to me, wether to include a really great feature that works in Netscape and MSIE but not Opera, or not, and I did exactly what I just did, and saw that 8,092 of 1,949,023 hits came from Opera, that's
If Microsoft had half a clue (which I'm sure someone there does), and they checked to see what browsers were viewing, and *THEY* saw that
Serious? Seriousness is well above my pay grade.
"Why would Microsoft care about Opera? Or think that misrendering the MSN home page is a good way to undermine it?"
Just wanted to say that I'm glad you took a moment to take a step back and and say "Why?" as opposed to jumping the gun and saying "Damn MS trying to enforce it's monopoly as usual". Frankly, I'm tired of the wild assumptions that MS works that way.
As an Opera user and a Windows user, you can understand that I've run across exactly this problem. I'd like to share with you a few observations I've made on this topic:
- As an Opera user, I find myself having to deal with a number of sites that just don't care about me. Having IE available as a backup is just part of my everyday Opera life. I don't see MS as being very different here. Some sites block me totally, like the site I use to send payments to my credit card.
- Because of my having to keep IE on hot standby, it doesn't even occur to me anymore to email MS (or any other site) and complain about lack of Opera testing. If they don't get feedback, they ain't gonna fix it.
- Website maintenance is a perpetual, priority based job. Often problems are ranked by how many people are affected by them. Truth be told, Opera's just not significant today in light of other things going on. I wouldn't be a bit surprised if nobody there had Opera installed. Anybody who's ever done web development at a Dilbert-esque corp would probably understand this.
- Wouldn't it be weird that MS would break Opera, but not Mozilla, Netscape, or other browsers?
- What possible benefit could that bring them? Despite my comment earlier, Opera handles the vast majority of sites(*) just fine. When I run across a site that doesn't work with Opera, it feels like the operators of the site were moronic, not that Opera is incompatible. In other words, MS's site not working right with Opera makes MS look incompetant, not Opera. * Sites that I personally have visited, other people's experiences may vary.
- MS's site is a marketing tool. Head on over there and you hear all about TabletPC's, PocketPc's, MS's latest server stuff, Windows XP, etc etc etc. Breaking their site means potentially shoo'ing off customers. I seriously doubt any PHB would want to do that.
If other Opera users share my observations, then it actually makes sense that MS just doesn't care. But the idea that they're doing it to enforce a monopoly is not so evident.
Please don't flame me for not jumping on the "MS is like OCP!!!" bandwagon. I'm just the type of person that'd rather look at all the details than try to find details to support a bias.