Monday, December 17th, 2007

Alex Russell is trying to save us

Category: Editorial, Standards

Alex continues on truthiness with The W3C Cannot Save Us that follows on from the CSS uprising as we watch things crash and burn.

Alex discusses the Opera case (how it is a bad idea), and how Opera could be more productive.

He calls out how we can’t hide behind the “let’s just make IE work with standards better” line:

In order for the future to be better by a large amount, it must be different by a large amount.

Until we get some great new (non-standard) CSS features out Mozilla, Opera, and IE nothing will get better to the extent that we will again be optimistic about the future (Safari earns a pass). The size of the improvements they deliver in the future are directly tied to our expectations of how different the future will be. Only when there are large and divergent ideas of how to proceed expressed through competing, successful implementations will standardization really work to whatever extent that it can reasonably be expected to.

Let that sink in a bit. To get a better future, not only do we need a return to “the browser wars”, we need to applaud and use the hell out of “non-standard” features until such time as there’s a standard to cover equivalent functionality. Non-standard features are the future, and suggesting that they are somehow “bad” is to work against your own self-interest.

Web developers everywhere need to start burning their standards advocacy literature and start telling their browser vendors to give them the new shiny. Do we want things to work the same everywhere? Of course, but we’ve got plenty of proof to suggest that only healthy browser competition is going to get us there. Restructuring the CSS WG or expecting IE8 to be “fully standards compliant” is a fools game.

*listens to a beating drum*

Posted by Dion Almaer at 8:32 am

2.9 rating from 43 votes


Comments feed TrackBack URI

Alex should read the user comments in the IE blog.

Theres is alot ao begging going on, and i don’t see IE getting better anytime soon.

Comment by Pedro — December 17, 2007

This is music to my ears. Long live the browser war!!!!

Comment by Marty — December 17, 2007

I disagree with Alex, why would anyone want to go back to the browser wars? Saying that developers should burn their standards advocacy literature? Sure I’ll just go back to mass table layouts while we are at it. Let me put a “best viewed in ie” warning on all my pages as well. Since when has standard compliance and innovation been mutually exclusive? All vendors can offer new “shiny” features while ensuring that an html page will display properly when given a doctype and valid css. I don’t see anything in the w3c standards recommendation that says browsers shouldn’t implement new features. In fact a lot of browsers are implementing new features that will make development easier. For example, Mozilla will soon have document.getElementsByClassName for JavaScript. So why exactly should I “burn my standards advocacy literature” when it has made development vastly easier, because for the most part standard compliant browsers display my sites flawlessly (except for ie).

Comment by j4606 — December 17, 2007

Fully agree with j4606. Open standards support and vendor driven innovations are not mutually exclusive. Safari, Firefox and Opera prove that every day.

Safari is bringing great new things to CSS3, Mozilla improved it’s JS engine in an ES4 way, Opera brought the VIDEO and AUDIO tags, … all of which are suggested to standard bodies.

Internet Explorer brought XMLHttpRequest but they never brought it for standardisation nor do they have the open standard support track record of the 3 browser vendors above.

j4606: BTW document.getElementsByClassName is already in Opera 9.5beta ;)

Comment by Mathieu \'p01\' Henri — December 17, 2007

css:expression() is too useful to not become a standard…

Comment by Marty — December 17, 2007

I couldn’t agree more. Case in point: Canvas + VML are giving us usable imaging / charting capabilities without Flash. As long as browser extensions are fully optional, I don’t see the problem. Another example is IE’s admittedly goofy filter() API, which allows use of transparent PNGs in IE6. It solved a problem, and now the PNG support is native, it’s use will fade with IE6.

Comment by K9 — December 17, 2007

I think the major vendors will be concentrating more on separate RIA platforms than really push the native features of their browsers– Microsoft especially. RIA platforms have much more lock-in than browsers where the medium [must] be compatible.

Comment by Jacob — December 17, 2007

I think alot of people are missing the point here. I believe what Alex is trying to say is that the people who only make use of what is put forth by the standards bodies are shooting themselves in the foot so to speak. If we do nothing but follow the standards we would never implement the new features that browsers do include, because they are yet to be standard. The idea is to experiment with the new features so that they will gain wide adoption. If we allow the standards bodies to dictate the pace of innovation we are going to have one hell of a wait…

Comment by cannuk — December 17, 2007

Burning standards literature, a return to browser wars, and a non-standards future? Since when did developing standards equate to stagnant innovation? Mathieu is correct – they are not mutually-exclusive – and cannuk is reading beyond what was written in the article. When have developers ONLY made use of standards?? This entire site showcases the creative uses of new features. Take a look on google code and look at the plugins and libraries that have grown into communities that push for innovation. That is definitely not the problem…the problem is a lack of a foundation of standards/expectations that would make experimenting and innovating easier in the future. Because right now most of our time is spent “making it work” in the “A-grade” browsers instead of innovating.

Comment by Jigs — December 17, 2007

If he was correct then Flash and all the other plugin / ActiveX’s would have taken over the web completely by now. They offer all the non-standard wiz bang newness that the author thinks will form the basis for the future. That didn’t happen because STANDARDS RULE!

Comment by Chris Phillips — December 17, 2007

I wonder if Alex would feel the same way if “Javascript wars” emerged in such a way that every browser not only had diverge DOM/Event/CSS behavior, but had divergent Javascript syntax! Forget JS2, let’s have Javascript syntax extension wars!

I think part of the underlying philosophy left unsaid, is that toolkits like Dojo can smooth over standards bugs. So basically, browser wars == full employment for JS framework authors. That somehow, browser bugs and broken standards compliance don’t matter, as long as you have a fancy JS framework to abstract away the differences.

The problem is, these abstractions have an overhead/cost. For example, the forementioned IE ‘filter’ hack for PNG overlooks the memory consumption caused by it. ExCanvas/VML, for all of its cleverness, is simply not a replacement for an immediate mode canvas renderer. The world would be better off if IE had Canvas. SVG cannot replace Canvas either, as DOM oriented scenegraph techniques have a huge performance and memory overhead compared to immediate mode rendering.

So, all else being equal, I’d rather the browser vendors fix bugs, memory consumption, and standards compliance first, before adding more competitive features. As even with framework abstractions, there is a cost to ensuring multibrowser compatability. (not to mention loading up tons and tons of JS compatibility code that wastes network traffic and increases startup time, and should simply not be needed)

Comment by Ray Cromwell — December 17, 2007

Ray: we’re already there, hence the JS toolkits. The cost of the frameworks in comparison to native features is a primary reason why I think that only the browser vendors have enough leverage to actually solve this problem. I’ve pleaded with some of them to build in “toolkit caches” which are inherently multi-site and which never go to the network, but that seems not to have found any receptive ears. So the toolkits (as you so cogently note) are out of the running to solve the problem(s).

Chris: I think you’re missing the essential point: I’m asking for browser vendors to introduce new stuff which can be standardized in the future, not for new things behind a plugin-wall. The difference is significant.

Jigs: You’re welcome to stick your head in the sand, but we’ve been the standardize-first thing for nearly half a decade and it hasn’t worked so far. I’d love for it to work, but it hasn’t. Time for a new strategy.

Comment by slightlyoff — December 17, 2007

@Ray – You’re right that these proprietary extensions are limited until the become standardized. But I think its clear that particularly with IE, we are going to be left to choose between a proprietary extension or nothing. Frameworks are able to abstract away much of the pain of different implementations, and given the choice of (for example) VML or no VML, I’d choose to have it, imperfect though it may be.

Comment by K9 — December 17, 2007

slightlyoff – I never said that everything was hunky dory. Clearly there needs to be changes. I just don’t agree that those changes should necessarily involve a browser war (which is what GOT us here) and burning standards docs. My point was that the problem isn’t a lack of new shiny proprietary features, its a lack of a way to deploy them efficiently across browsers. Abandoning standards is not going to make that a reality.

Comment by Jigs — December 17, 2007

I’m all for the browser war, it’d be nice if the vendors passed each other the specs on their new features though so that the interface stays consistent and there aren’t bridges all over the place. *cough* C#script *cough*

Comment by Andy Kant — December 17, 2007

Hey Fnustle:

One of the things I’m trying to suggest with the original article is that we should, indeed, providing breathing room for browser vendors to implement great new things. When you say that “developers have never driven the browser wars in the past”, I think you’re ignoring the tremendous pressure that the standards advocacy movement has brought to bear. I’m pointing out the mixed results of that effort and suggesting that (as you say) we should all just chill out a bit WRT standards compliance and encourage meaningful forward progress.

As for the “change the URL” strawman, it’s not clear how this would work or what the effect would be at an HTTP level.


Comment by slightlyoff — December 18, 2007

Well yes I do agree that the standards compliance rallying cry is ineffective and even whiny at times. The use of appeal-to-authority is only as effective as the authority is credible and the W3C has successfully squandered away as much as it could. I also agree that the social pressure from internet advocacy is nothing to sneeze at. My argument is that its ineffectiveness can be attributed to a large degree to its confrontational attitude, rather than a “let’s make this happen” attitude. Confrontation is necessary to get various parties to be real with each other. But without letting the “other side” save face cooperation will never happen. When you are in the bowls of the coding beast sometimes one can lose a little perspective. I’ve been there, I can sympathize. It’s easy to forget that all computer problems are ultimately human problems.

[You don’t need to affect anything on the HTTP level to allow page script control over adding “virtual” history items by changing the url to something else within the same domain, at the same time you do a partial page update. I haven’t thought out the security ramifications, but I can’t think of any right now.]

Comment by Fnustle — December 18, 2007

As far as the ability to change the URL without a page reload, let’s say one of the browsers implements such a feature. Now we’d have both developer success stories as far as the utility of the feature, and horror stories as far as what went wrong with that proprietary implementation. The W3C would then have a significant head start technically and politically in getting that feature into a spec.

Comment by K9 — December 18, 2007

Absolute, 100% utter garbage. You fail. We need to move forward with web standards. Browsers being so non-compliant are the cause of literally millions of dollars worth of extra time spent working on ridiculous problems entirely based on the fact that some browsers just aren’t up to par.

The purpose of standards is to be compliant with them. If you want to FAIL but not following those standards, then go for gold, making terrible non-compliant, appalling, immature applications.

Comment by Gavin — December 18, 2007

I think what is most irritating to me is that I’m not using any ‘experimental’ code in my pages, but I constantly need to branch out my standard CSS to account for idiosyncrasies in IE6 and 7. I can deal with the fact that IE doesn’t have the <canvas> tag, fix the f#cking CSS differences and I’m good.

Comment by starkraving — December 19, 2007

Leave a comment

You must be logged in to post a comment.