CSSquirrel

:

Why Opera’s Market Share Doesn’t Justify Bad Behavior

I didn’t wake up today with the intent of revisiting old ground, but a motivated commenter rekindled the topic of Opera’s EU filing encouraging Microsoft to be forced to adhere to a series of guidelines for web standards, and my bold statements that both Microsoft and Opera needed to work on adhering to those guidelines.

As I was crafting a response, I discovered that I had more to say on the topic than could be rationally contained in a simple comment.

First, some facts: I don’t dislike Opera. I dislike hypocrisy. Also, I don’t like Internet Explorer. I hate Internet Explorer, and I would prefer to see Microsoft adhere to modern web standards with the same fervor as the other major browser makers.

However, the responses to my earlier posts made by Opera employees and by others on behalf of the browser maker, amount to the following two statements.

1. Microsoft needs to adhere to Mr. Lie’s list of rules they should play by because Microsoft is a monopoly. Opera does not need to do this because it is not.

2. Opera is justified in delaying implementations of “new” features because they’re focusing on backwards compatibility and not breaking the web.

Each is interesting, but ultimately unconvincing.

First, I don’t believe that implementing web standards and new site features is solely the responsibility of a company that is a monopoly. In his well publicized list of rules for Microsoft, Mr. Lie agrees with me. I’ve already quoted the fifth point (relating to adding a new standards-related feature to a browser if two major browsers have already implemented it), and have pointed out useful features that at least two browsers have implemented that aren’t live yet on Opera. I want to emphasize where Mr. Lie states these rules aren’t just for Opera:

“Microsoft will surely claim that it’s impossible for them to develop a browser that complies with the proposed requirements. However, other browsers have played by these rules for years. If Microsoft can’t live up to the standards of the web, I suggest they leave the browser business.”

His assertions are twofold, first that other browser makers do play by these rules (including Opera I presume, which exclusively makes a browser), and that failure to adhere by these rules is enough reason for a company to leave the browser business.

I agree with him completely. I find it comical that some of Opera’s employees apparently do not, and have yet to hear a compelling argument as to why they should be disregarding their CTO’s wisdom. This ties directly into point #2, which is that implementation of new features must be delayed as a necessary sacrifice to maintain backwards compatibility and not break the old web.

Backwards compatibility with the soccer mom-built sites of the world is the same boogeyman that Microsoft has been waving on a flagpole since at least Internet Explorer 6. The world of web developers have yet to give Microsoft any mercy for that, and often cry for blood when feature implementation or standards compatibility is sacrificed on that altar (such as the well documented IE8 meta-tag explosion). I’ve yet to hear a compelling argument as to why any smaller browser maker can justify their own delays at implementing “new” stuff with the same smoke and mirrors and not deserve the same treatment.

In the end, the simple fact is this: I expect better of Opera. I expect them to be better than Microsoft. This means I’m not going to accept Opera using the same excuses as Microsoft, and somehow get away with it due to their size.

So, chop chop. Back to the grindstone, boys.

Tags: , ,

6 Responses to “Why Opera’s Market Share Doesn’t Justify Bad Behavior”

  1. I really don’t get this post. I believe of the many specs out there, you went hunting and found three properties that were listed in unstable specs. As I’ve already stated, Opera will support them when they are ready. It is better for us to spend our development resources on something that is ready to implement than something that is unstable and has to be re-implemented in a future version when the spec is fanalised. I forget the exact properties you listed, but I recall at least one of them we’d already implemted in the Acid 3 build of Opera, which is the start of the next version of the operating system. So I’ll repeat - we are implementing these standards, and we are doing that as soon as possible. If two browsers implement a feature in a compatible manor, it is a major reason for us to implement it and in our best interests to do so.

    No where does backwards compatibility come into not implementing a standard for Opera. We have broke compatibility (to the detriment to our compatibility) to follow the spec and we will do again when we need to. Web Forms 2 is an example that broke quite a ot of backwards compatibility and through our opwn the web work we are paving the way for the affects of that to be lesser for other browsers when they eventually implement it.

    Due to vendor prefixes in CSS adding a new part of CSS doesn’t really hurt backwards or forwards compatibility (unless developers use it wrong), it just wastes development work that could go into something that is ready, if we implement too soon. As more designers design for other browsers, it more hurts our compatibility when other browser vendors implement something that is not inline with the final spec (addEventListener bubbling and Firefox spring to mind as a example off the top of my head).

    If you look at most specs then Opera will be overall in the lead in implementation or not far behind. There are gaps but we are working to fill them with each successive core release. Core-2.2 will have better standards support than Core-2.1 for example. Håkons complaint is more that MS often haven’t been plugging those gaps, even though they have at least as much resourses as Opera. I’d for one would be very happy if IE had similar standards support than Opera. When you can get to the level of just naming a few features we don’t support (when we do actually even support some of those), then that is a sign we are doing our job. RGBA is now supported, so is HSLA. Web Fonts are in there somewhere. SVG is second to none. Wired listed Opera as having the most HTML5 support. We are the only browser (I think?) to support any of DOM3. we support all the interfaces of DOM2. The selectors API is in there. We tied with Safari for ACID3 support. Our XSLT and XPath impmentation is second to none. We support all of CSS3 color in Core-2.1. We support all of CSS 2.1 except one property/value pair, making us way ahead of any other browser. We support all CSS3 selectors. We support CSS namespaces. This gives us an almost complete coverage in Core-2.2 plus of the CSS WG’s 2007 snapshot, which are the stable modules. It is quite clear from this where we have put our resources in CSS and that we are taking standards as seriously as Håkon mentions in his quote. We will try to deliver the moon on a stick next time though. Which flavour would you like?

  2. David,

    Thanks as always for the feedback.

    This post was mostly in response to Rob G.N.’s commentary on the previous post on the topic, and some of the assertions he makes there. In particular the thrusts of his statements are that Opera’s progress is limited by preserving compatibility with buggy, bad old sites.

    My point was that is what the IE team is always saying, and I’m not particularly motivated by it when it comes from either company.

    Regarding the three oddball properties, I’ll admit by and large they’re not exactly highly useful. At the time that earlier post was written it was more about the comedy of the situation rather than any genuine displeasure. (I’m aware RGBA colors and Web Fonts are on the horizon, which I’m much more excited for universal support for.)

    This post came out more rant-like than I intended. I genuinely believe that Opera is one of the front runners in doing browsers right. I’m also aware that Opera is in fact concentrating on improving its software constantly. My intended point was that self-improvement is a more desirable technique than complaints to governmental entities.

    I really just need to get a CSSquirrel strip up with some Opera Valkyries.

  3. TBH what the IE team says has a measure of truth, except the situation is of their own making, and is a no risk policy as I’m pretty sure even if they “break the web”, such as Opera is willing to do from time to time, then sites will fix their issues. They have to as every site must work in Opera. Only the unmaintained sites will continue to be broken. They’d certainly be more likely to fix the issues than when Opera breaks old behaviour to fix bugs that made us not follow the spec.

    Our progress isn’t limited per say by buggy old sites, but more in that if they use browser specific features then we are slowed down by having to reverse engineer the browser in question and implement that feature if enough important sites abuse it and other browsers have implemented it. There have been cases where we have had to move away from the spec as a number of browsers have implemented it in a incorrect way and the incorrect way has become the defacto standard. Microsoft implementing ActiveX, for example, probably causes us as much or more problems than it does hold MS back, as we can’t support those sites that uses it. Many man years are spent by our QA team analysing IE and Mozilla specific extensions to standards. If browsers didn’t do this and we had a free run at implementing standards then things would move faster, but then you could also argue we wouldn’t have things like XmlHttpRequest. I think there may be a standards based alternative in DOM3 but developers never used that, probably due to no other but Opera supporting it.

  4. Great. How do I format things? Reposting:

    # Opera is justified in delaying implementations of
    # “new” features because they’re focusing on backwards
    # compatibility and not breaking the web.

    Opera isn’t “justified”. It is FORCED.

    And Opera isn’t focusing on “backwards compatibility and not breaking the web”. It is focusing on working around problems created by another browser which has locked the web to proprietary technologies. That same company can decide to enforce standards, or it can be forced to do so. And sites will have to adapt to that company’s decision. Opera has no power to make sites adapt to it.

    # I agree with him completely. I find it comical
    # that some of Opera’s employees apparently do not,
    # and have yet to hear a compelling argument as
    # to why they should be disregarding their CTO’s wisdom.

    This is not making sense. Could you rephrase it? It sounds an awful lot like straw man to me.

    # I’ve yet to hear a compelling argument as
    # to why any smaller browser maker can justify
    # their own delays at implementing “new” stuff
    # with the same smoke and mirrors and not
    # deserve the same treatment.

    Because they have to spend huge amounts of resources to work around bugs in Microsoft’s browser, and because Opera is in no position to force sites to adapt to it, while Microsoft is.

    # My intended point was that self-improvement is
    # a more desirable technique than complaints to
    # governmental entities.

    That’s easy to say when you don’t have to deal with the real web. You can sit around in your ivory tower and demand that Opera move faster when it comes to open standards. But you are at odds with millions of Opera users who want Opera to work on real web sites.

    Opera having to maintain compatibility with IE is not Opera’s doing. It is Microsoft which has abused its monopoly to undermine competition in the market.

    Microsoft, as a monopoly, can be forced to “break the web”. What happens next is that website owners will be forced to adapt their sites to the new market situation.

    If Opera “breaks the web”, it dies, because no one will adapt to Opera.

    If Microsoft “breaks the web” and goes the standards path, sites will be forced to adapt.

  5. Hmm. Looks like I’m accidentally normalizing out the blockquotes. Thanks for noticing that, Rob.

    Blockquote test for editing

    Regarding the content of your comment, I understand your position that Opera, as a player with a minority user share, can’t afford to annoy users (unlike, unfortunately, Microsoft). I’d like to reiterate that I’m not in an ivory tower, as my job requires me to constantly be updating the bad old websites of the world, the ‘real web’ as you put it. It’s an ugly unpleasant place.

    Ultimately, I think we’re barking up the same tree as to what needs to happen (Microsoft needs to keep up with the progress of web standards and not forge its own path), but I think we’ll be in the opposite corners of the room when comes to the methods that should be used to compel Microsoft to change.

  6. History has shown that Microsoft won’t play nice unless it’s forced to. And even then, it’ll try to get away with dirty play.

    Years and years of “playing nice” and being patient with MS didn’t work. All we got was a bunch of empty promises.

    Now the EU could force Microsoft to put up or shut up, and guess what, they felt their wallets burning, because IE8 might just be a huge step in the right direction. And they chose to default to standards compliant mode because of Opera’s complaint. It could cost them a lot of money, so to undermine the antitrust investigation they are showing something to avoind having to pay up again for their illegal practices.

Leave a Reply

RSS Feeds

My Photos. I Haz Them.

 

About Me

The Squirrel is Spartacus Kyle Weems, a gladiator web developer in rainy Bellingham, WA. More

© 2008 by Kyle Weems. All Rights Reserved. Login