Categories
Specs

The nobility of specification work

Hank Williams responded to the recent ECMAScript Harmony announcement with a post titled, Ru Roh! Adobe Screwed By EcmaScript Standards Agreement. In it, he writes:

Adobe provided support to the standards body in helping to define the standard, and most importantly, in creating an open source virtual machine called Tamarin that would run EcmaScript 4.0. But they did all of this before the standard was officially sanctioned. EcmaScipt 4.0 was nothing more than a draft proposal. But Adobe needed to make this bet because they needed a better language than the early ActionScript was, and the existing template, JavaScript, hadn’t moved substantively forward in years.

And so Adobe released Tamarin, the EcmaScript 4.0/ActionScript 3.0 running virtual machine, and a raft of products based it…Unfortunately, while the technology of EcmaScript 4.0/ActionScript 3.0/Tamarin is compelling, the politics sucked.

Adobe and Microsoft are bitter rivals, and the last thing Microsoft would be willing to accept is wide-spread adoption of a language that is strategically critical to a competitor…And so this meant EcmaScript 4.0 was stillborn.

At the end of his writing, Hank summarizes Adobe’s plight, now that it has been betrayed:

the interesting question is what will Adobe do now. The technology they have is no less impressive today than it was a few days ago. But they are now totally on their own, which wasn’t exactly the plan.

Poor, poor Adobe. Lost in the wilds of the web, all alone.

Balderdash.

Hank is correct with his assessment of the politics and rivalry, (though not all decisions were political in nature). But he’s incorrect about his assumption that ECMAScript 4 is dead. Certain pieces of pre-existing ECMAScript 4 effort are not being pursued, true, but there will be an ECMAScript 4, they same as there will be a 5, 6, and on and on, as browsers and other applications that support ECMAScript evolve over time.

That’s really been the issue all along: there’s a group within the ECMAScript community that has been pushing a much more aggressive course in the development of the next specification release than other players have been comfortable with. By other players, I don’t mean only Microsoft— Google, Yahoo, Opera, Apple…all of the companies impacted by ECMAScript have agreed, with relief, that an interim specification release with full browser company support is the wisest course, with more cautious development in the future.

In addition, Hank also overplayed the nobleness of Adobe’s contribution of Tamarin, as well as the company being “screwed” in this decision. For one, Adobe agrees with the Harmony effort, while managing to get its digs in about the superiority of its offering, as implemented in Flex et al.

Make no mistake: Adobe knew it was throwing the cat among the pigeons when it contributed Tamarin. In 2006, I expressed my concerns about Tamarin:

So what do I think of all of this? I think it’s exciting, I love the canvas element and I’m interested in many of these other innovations, it’s good to revisit HTML, but I wouldn’t be me if I also didn’t note concerns: HTML element bloat; confusion as to direction of standards and where people should be heading; vastly incompatible web pages as browsers desperately try to keep up with all the changes; frustrated web page developers and designers also trying to keep up with changes; and a growing dominance of Mozilla/Adobe in regards to JavaScript and whether this could lead to a non-neutral ECMAScript 4.x, which does no one any good.

In a way, Hank’s biggest misunderstanding is his assuming that any of the other organizations involved with ECMAScript are somehow more “noble” than Microsoft in their involvement. Frankly, that’s a naive assumption. The best we can interpret all of the organizations’ involvement in the development of the ECMAScript specification—any specification, really— as being based on enlightened self interest. I wouldn’t trust any organization that says otherwise.

No, Adobe took a gamble, and the gamble didn’t pay off. It will now shrug its shoulders, reflect on the ubiquity of Flash, and continue its merry course. Forgive me if I don’t greet its noble stoicism at being stood up at the prom, with tears in my eyes and murmurs of “poor baby”.


Interesting comment in the Adobe post in answer to another comment:

Unfortunately, standards aren’t also the smartest things. Dumbing down is often a fact of standardization. We haven’t let that stop us from innovation in the past; we won’t in the future.

Yes, trying to establish a standard that is implemented in all the major browsers is really a dumb thing to do. What we should be doing is picking a winner in this little contest, and then celebrate by increasing the number of torturous cross-browser hacks for the next two decades. That’s the ticket: let’s show everyone how really smart we all are by continuing our worst practices. As long as we call it “innovation” why, it’s all right.

Yes, it’s all right.