Categories
Environment

Thousands impacted

The impact of the BP oil spill is only now being felt, and yet we have demands from the oil industry and Britain, not only to “lay off” our criticism of BP (because British pensioners could supposedly starve to death if we don’t), but to allow any and all new drilling (because Louisiana residents will supposedly starve to death if we don’t).

We are facing the prospect of the death of the Gulf, the destruction of entire species of animals, as well as the utter devastation of a way of life for many people in the Gulf, because we can’t take a moment to ponder these events without immediately demanding that we proceed, business as usual.

The state and federal governments could be using these events as a way to face the harm that our dependence on oil is causing us. They don’t though. They can’t even stop new oil wells from being drilled in shallow water, completely forgetting that more oils spills occur in shallow water operations than those in deeper water, such as the Deepwater Horizon. We mustn’t take time to understand how such a profound breakdown in safety can occur with one oil well, in order to ensure it doesn’t happen again. No, to do so would cost somebody somewhere, and our current crop of leaders—across both parties—doesn’t have the balls to take a stand if doing so might cost a vote.

What is the true cost of the current oil moratorium? Is it the Gulf’s fault that the British pension systems are too heavily invested in one company? A good pension is one that has a diversity of investments, just for contingencies such as this. And frankly, would the British people feel so sanguine if the oil spill were happening in their backyard?

As for those “thousands” of Louisiana residents facing unemployment because we’re not allowing new drilling—what employees? These wells haven’t even begun yet. We’re not stopping the existing platforms. We’re not forcing people currently employed in oil platforms out of work.

And what about the employees in Alabama, Mississippi and Florida that are dependent on tourism? Do they not matter? Or is Louisiana, frankly, playing a Katrina card in order to garner sympathy? Doing so rings hollow, because the oil spill is dumping one environmental disaster on another—if Louisiana politicians are really concerned about the state’s way of life and welfare of the people, they would be in the forefront of demanding the oil moratorium. Instead they call for increased oil drilling out one side of their mouth, while condemning the federal government for not doing enough to protect against oil spills, out the other. I can understand the hypocrisy of the Louisiana politicians; I just can’t understand why they continue to think we’re so stupid as to not see it.

Louisiana unemployment? Ask Michigan about dealing with unemployment. Ask Missouri. California. We are all facing deep problems with unemployment. Unemployment that, ironically, could actually be helped by the oil spill. Why? Because increasing the cost of oil increases the cost of transportation, and eventually those companies that moved their manufacturing overseas may see profits eaten up by transportation, and move the jobs back here.

I could wish our leaders would stand firm on this moratorium—even extend it to not allowing any new offshore oil drilling, period— but I have faint hope that any resolve will last beyond next Fall’s elections.

Categories
HTML5 Specs

Apple, Opera, and Mozilla: Why are you working against open standards?

I have a question for Mozilla, Opera, and Apple: why are you working against open standards?

Why do you still support an organization, known as the WhatWG, that has proven itself to be detrimental to an open and inclusive specification development effort?

Recently I wrote about a kerfuffle that happened within the HTML WG, when the editor, Ian Hickson, decided to insert snarky material in the WhatWG version of the HTML5 spec, and then point the W3C version to this snarky material. The material has since been removed but the problem still remains, because we still have two versions of HTML5. We still have confusion about which one is official. We still have divisive discussions, consisting of parties of them and us, rather than one group working on one document.

Two versions of HTML5—has there ever been anything more absurd? They’re not the same, either. When the W3C HTML WG makes a decision about changing the HTML5 specification, the WhatWG copy doesn’t reflect this change. And the HTML5 editor adds all sorts of unproven and controversial stuff to the WhatWG version of the document, but still pretends that it is an “official” copy of the specification. Excuse me, official future versionless version of HTML5, which only implies that you all plan on continuing this debacle into the future.

When web communities outside of the picked handful of browser implementers protest, we’re called names, accused of whining and various forms of skullduggerydisdainedmocked and made fun of, and generally, it seems to me that you three companies are forgetting one inescapable fact: we’re your customers. Yeah, sucks, doesn’t it?

Why does the WhatWG still exist? You have long had your way when it comes to HTML5. The W3C dropped work on XHTML2, and started work on HTML5; browser companies control two of the three co-chair seats; the implementers are given precedence when it comes to what’s in the document…I mean, what more do you need? Gold stars by your names? A lollipop?

If you’re expecting us to meekly allow one person to have absolute control over what’s in HTML5, forget it. There’s not a development team in the world that would give one individual the control you seem willing to give to the HTML5 editor.

You can’t blame this state of affairs on Microsoft, because it is actually operating solely within the W3C. The same as Google, though Google does employ the HTML5 editor. No, your three companies are on the so-called document copyright. You have claimed ownership of the WhatWG. You are the WhatWG.

So why don’t you stop? Why don’t you see the damage you’re causing by turning a blind eye to what’s happening in the WhatWG name? I would rather you do this then spend time, one upping each other by implementing one more cool, non-standard innovation in your products.

I know all three of your companies have good people who have done much for HTML5, and we do appreciate it. All three of you have people who are just as unhappy about the state of affairs regarding WhatWG. But the good stuff they do is frequently outweighed by the bad, when we have to once against stop moving forward because of WhatWG/W3C conflict.

Getting cool stuff is no longer enough. You see, we’ve grown up. We like cool, but we want solid performance and some sense of stability. We definitely only want one version of HTML5. So, Apple, Opera, Mozilla: why don’t you grow up, too?

Categories
Specs

The W3C bites back?

Recovered from the Wayback Machine.

This has been a long time coming, and not sure where it will go. It started innocuously enough: remove a paragraph associated with the alt attribute, about user agents using some form of heuristics to determine replacement text. It wasn’t associated with a bug—it predated the current decision process. It did have an issue, though, Issue 66.

Consensus was: remove the text. Simple, easy, and absolutely no impact on HTML5.

Except…

Except that Ian Hickson decided to do a little editorializing:

The latest stable version of the editor’s draft of this specification is always available on the W3C CVS server and in the WHATWG Subversion repository. The latest editor’s working copy (which may contain unfinished text in the process of being prepared) contains the latest draft text of this specification (amongst others). For more details, please see the WHATWG FAQ.” — <http://dev.w3.org/html5/spec/>, “Status of this document”.

And what does the WhatWG document now contain?

The W3C has also been working on HTML in conjunction with the WHATWG; at the W3C, this document has been split into several parts, and the occasional informative paragraph or example has been removed for technical or editorial reasons. For all intents and purposes, however, the W3C HTML specifications and this specification are equivalent (and they are in fact all generated from the same source document). The minor differences are:

  • Instead of this section, the W3C version has a different paragraph explaining the difference between the W3C and WHATWG versions of HTML.
  • The W3C version refers to the technology as HTML5, rather than just HTML.
  • Examples that use features from HTML5 are not present in the W3C version since the W3C version is published as HTML4 due to W3C publication policies.
  • The W3C version includes a redundant and inconsistent reference to the WCAG document.
  • The W3C version omits a paragraph of implementation advice for political reasons.

So the W3C specification contains a link to the WhatWG document, which contains a rather inflammatory statement, prompting Sam Ruby, the HTML5 WG co-chair, to write:

To have the W3C specification refer readers to another specification for an exact list of differences, and to have that other specification indicate that the omission was due to political reasons is intolerable.

Earlier this afternoon, I filed a Formal Objection against publication of the HTML5 heartbeat documentation, until all references to the WhatWG version of the specification, and the WhatWG mailing list, are removed from the W3C document. That this state has continued for so long is unconscionable. What, on earth, was the W3C thinking?

I was pleased to see that two of the HTML5 co-chairs, Paul Cotton and Sam Ruby, have stopped the heartbeat publication of the HTML5 specification, until the offending material is withdrawn. This effort was not prompted by my Formal Objection—the chairs are reacting to the editorial changes.

Even now, the HTML5 editor, Ian Hickson, is demanding an accounting of decisions that satisfy him. I wonder how many fan boys will rush to provide him support, or whether the browser companies finally start to realize that he is more wall, than doorway.

Regardless, if you’re thinking that the WhatWG will pull out of the HTML5 effort, and doom it by their lack of participation, think again: the WhatWG organization is not a legal entity. It is an informal group of a handful of individuals, half of whom became disillusioned with the effort years ago and have not participated since.

The group does not have a patent policy, so there is no way possible that Apple would allow something such as Canvas to be managed under the auspices of the WhatWG. The group can’t even support a copyright license, because there is no legal entity to act as holder of copyright. Not unless you count the person who provides the WhatWG server, who restarts the WhatWG server when it’s down, and who has complete editorial control over the WhatWG HTML5 document: Ian Hickson. And I don’t think even Google could tolerate handing that much power over to one, single individual.

The W3C is also not a legal entity BUT…members of the W3C organizations have to enter into a contract and agreement with the three legal entities behind the W3C: MIT, ERCIM, and Keio University. Though frequently contentious, and overly bureaucratic at times, the W3C effort is the only effort where people other than Ian Hickson may have a say about what is, or is not, in the HTML5 specification. Just as important, the W3C provides the legal stability that allows all of the browser companies to freely, and safely, participate.

Categories
SVG

My SVG progress bar

In honor of Microsoft supporting SVG in IE9, Web Directions is hosting an application contest: create your best and most innovative progress element using SVG. Microsoft is providing the prizes, and they’re nice: a new laptop, XBox, and Lego Mindstorms kit. Tasty.

I was inspired to create my own SVG progress graphic applications, using a well known graphic that I borrowed from Wikipedia. I did the work for fun, and won’t be entering the contest. Why? For one, I don’t have a Windows machine that runs IE9 in order to test the application. For another, I’ve never been much of a contest type of person. Plus there’s that validation requirement: pretty tough when you combine SVG inline in XHTML5 with ARIA.

Note that you can access the page and the examples using any browser you want— including Safari. Either the applications work, or they don’t; I’m not going to stop you from trying them.

Categories
SVG

Making progress with SVG

Web Directions has created a No Bit, Sherlock developer challenge, with nice prizes such as a laptop and XBox for the person or persons who comes up with the most creative variation of SVG progress element. A nice play on the name (“no bit”), but even nicer prizes.

I’m not participating in the contest, but couldn’t resist playing with the idea of creating progress elements with SVG.

One type of progress element is the indeterminate progress, also called a throbber. If you use Twitter, it’s equivalent to the circling animated graphic, and indicates that an event is happening, but the web site can’t determine the exact progress of the event.

When I think of an unending event, I always imagine ouroboros, the serpent swallowing its own tail, and creating an infinite seeming circle. It can represent many things in many different cultures but, to me, represents a continuous cycle with no beginning, middle, or end. It just is, until it is no more.

With that in mind, I thought I would try my hand at creating an ouroboros indeterminate progress element. Luckily for me, I didn’t have to stretch my rather limited graphic skills in order to create the ouroboros: Wikipedia provides an elegant graphic, already formatted as SVG (PNG format), and with a license that allows me to use the graphic for my own work.

My first indeterminate progress element plays on the cyclical nature of ouroboros, by rotating the graphic around its origin, as you can see in the following example if your browser supports SVG. Clicking the start button begins the animation; clicking the end button, stops it. The application makes use of the built-in transformational capability of SVG.

It’s an interesting effect, but a little CPU intensive. In addition, there’s nothing uniquely SVG about the effect. I could have just as easily grabbed the PNG formatted graphic and used the new CSS3 transform attributes to rotate the image. I wanted something that plays on the uniqueness of SVG—that non-bit nature of SVG that forms part of the title of the Web Directions contest.

SVG is a vector graphics language, which means that a graphic consists of various elements, all combined into a whole. The ouroboros I used is actually made up of several path elements, forming the head, the eye, and the different scales along the body.

What if, instead of cycling the entire serpent graphic, I just cycle an effect around the serpent? A popular Ajax-based throbber is the one that Twitter uses, and consists of a animated dashed circle, where the dashes around the circle are hidden and displayed using a circular motion.

I applied the Ajax style throbber effect to my ouroboros graphic to create my next effort, as shown below. In this case, the serpent remains static, and only the scales change color, in a circular motion, to indicate some action is taking place.

I prefer the second approach, and it’s less CPU intensive than using a rotating graphic. You can also play with the colors: just make sure there’s enough contrast between “inactive” scale and active one so that the circular effect is easily seen.

Of course, both of these designs are for an indeterminate progress graphic. What about a deterministic one, where there is a beginning, middle, and end?

Even though I was inspired to use ouroboros because of the cyclical nature of the graphic, I’m also using SVG, which I’ve always felt to be synonymous with limitless possibilities. Ouroboros also means complementary opposites and what is more complementary, and opposite, than an event that’s not started, and an event that’s completely finished?

I made a third progress animation, but this time, there is a beginning, middle, and end. As whatever task progresses, my serpent’s scales turn from gray to black. In order to ensure that my application user knows what’s happening, I also provide a text description of the progress.

One last change for all of the graphics: ensuring they’re accessible.

All three graphics are given a role of progressbar. All three would also normally be associated with the task using other ARIA attributes. In addition, since the third application is a deterministic progress graphic, I also set the aria-valueminaria-valuemax, and aria-valuenow attributes on the SVG element. (I could have also set these values on the g element that groups the graphic within the SVG.)

If you load the graphic within Firefox using the NVDA open source screenreader, you’ll not only “see” the progress, you’ll also be able to hear the progress. And though these variations are a fixed size for demonstration purposes, they can be easily scaled as small or as large as you want, because I’m using SVG.

A fun little challenge. I’m looking forward to seeing the Web Directions “No Bit, Sherlock” contest entries.