Apple asserts patents over “canvas” element

15th Mar 2007

According to a message apparently sent from Apple's patent department, Apple is asserting patents over the “canvas” HTML element. This element was indeed invented over at Apple for their WebKit browser framework, at the time primarily for the benefit of the HTML-based “Dashboard Widgets”. The WHATWG has been attempting to document this as part of their Web Applications 1.0 (or “HTML5”) specification, and mostly-compatible alternative implementations of canvas exist in both Opera's and Mozilla's browsers.

I think this is pretty bad form on Apple's part. I've nothing against innovation in web technologies, but there's a right and a wrong way to go about it. The right way is to make an experimental implementation, and then if it's successful write down a specification so that everyone else can interoperate. The wrong way is to make your implementation, patent the hell out of it and then threaten and intimidate anyone who tries to work with your technology. Down that road lies a fragmented web that no-one wants to develop for.

This is particularly concerning having watched only yesterday a series of talks by representatives of Microsoft, Mozilla and Opera where all three pledged that they are no longer adding non-standard, proprietary “features” to their browsers, acknowledging that the web has only taken off as a platform in recent years because the platform has stablised and is, with a few notable exceptions, reasonably interoperable. An Apple representative was notably absent at this panel talk, because Apple refused to send anyone.

Apple's behavior reminds me a lot of first Netscape and later Microsoft during the oft-lamented “browser wars” in the nineties. Netscape invented all sorts of crazy stuff, such as JavaScript, LiveConnect, Layers, Embedded plugins and “JavaScript Stylesheets” (JSSS). Of these, only JavaScript has stuck around to this day, and for a very good reason: JavaScript was the only one of these that wasn't designed purely to suit Netscape's specific implementation. Brendan Eich did an excellent job in designing a good scripting language for the web, and it went to a standards board and resulted in competing implementations from both Microsoft and Opera. Netscape's implementation (SpiderMonkey) is now of course open source via the Mozilla project.

Microsoft did its fair share of this as well: DHTML behaviors, DirectX Filters, ActiveX embedding and probably more I can't think of right now. DirectX Filters and ActiveX embedding were basically dead on arrival as far as the rest of the browsers were concerned because they tie directly in to proprietary Microsoft technologies. DHTML behaviors were a nice idea, and the work-in-progress XBL2 is now heading towards a cleaner version of the same principle.

It wasn't until all of the major browsers reached a certain level of interoperability that webapps really started to take off. Today's web apps rarely make use of the browser-specific proprietary technologies, and instead use the bits that the major browsers have managed to (mostly) agree on: XMLHttpRequest, JavaScript, CSS and HTML4. If Apple chooses to persue licencing for this patent on the canvas element — which, to be fair, they explicitly haven't made a statement on yet — this can only hurt the web at large, and I would hope it'd hurt Apple's reputation as well. In recent years Apple has been increasingly getting a “good boy” image by using open source technologies and releasing several things back to the community. But to attempt to stifle the use of a web technology that's already out there in the wild and in the process of taking off just isn't appropriate.

Comments

(comment with no subject)

I have to say that if Apple do raise a stink about this I think it will just stifle any usage of Canvas elements. And there's not that much of that at the moment due to cross browser issues (ie. it doesn't work in IE).