Tuesday, February 24, 2009

When good browsers go bad -- and they all do Page 6

For example, Apple Inc. released its Canvas design element in Safari for developers to play with, and then later offered the Canvas element to W3C as a possible CSS module. The idea has been accepted, although the first working draft has yet to be created.

For its part, IE8 will include a new feature called Access Control Specification, which handles cross-domain requests. "It's a new object, a new API that lets Web developers make a request across Web site domains," and it creates an object called a CrossDomainRequest (XDR) object, Wilson says. But it may be at odds with a similar effort at the W3C, the Access Control for Cross-Site Requests draft specification.

While Access Control is a standards draft in the Web Apps Working Group, says Wilson, "the working group declined our proposal of the separate object XDR, and wants to use Access Control" instead. While Microsoft has "concerns" about that approach, Wilson says that developers can allow the use of both objects by writing code that switches between objects as needs dictate. But in the long run, he says, "We hope to implement the working group's final spec."

Do developments like these foreshadow a return to the bad old days of browser wars? "If one of the teams starts ignoring that hard-won wisdom, we could be back where we were before," Meyer says. Adding lots of new capabilities outside of the standards-making process could easily "break forward movement" on standards.

Wilson doesn't see the XDR action as a move away from standards. "We were pragmatic, however, in recognizing we were better off building a parallel object for the time being," he says.

But all in all, Meyer thinks that Microsoft and other vendors are more cautious than they once were about getting too far ahead of the curve. "To a large degree, the browser vendors have learned their lesson."

Broken browsers: A sign of life?

While most of the Web code out there still isn't fully standards compliant, most major Web sites are much better than they used to be. Even with the 95% of Web sites that aren't fully compliant with all W3C specifications, in most cases the violations are trivial to the end user experience. "They forget an Escape or an ampersand," says Le Hegaret.

Browser spoofing
The browser's user agent string can easily be changed to fool browser detection schemes. Click to view larger image.

"There are developers who are unwilling or unable to follow the specifications.... there are gaps in the specifications that allow vendor-specific technology to take off, and there are parts of the existing specs that have not been implemented by all major browsers," says Lawson. But, he says, "I think the situation is improving."

Web standards are an ongoing process in which the goal posts keep moving all the time. They will never be perfect, nor will Web pages that follow them, even when those pages are created by standards-aware professionals with the best of intentions, says Meyer.

He points to one project where he was pulling images from Flickr into a Web site as an example. "The code [from Flickr] had unencoded ampersands in the links," he says. Meyer had a choice: "I could spend a half a day writing code to make sure I encoded every ampersand or I could do some real work." He chose the latter.

For all of the recent gains, the open Web is still very much a work in progress, but that's a good thing, Meyers says. "The only time you don't have issues to be resolved is when a system is closed and dead."


THE AUTHOR OF THIS FANTASTIC STORY IS Robert L. Mitchell.

No comments:

Post a Comment