1
|
Adobe Code Goes Open Source
Browser incompatibility -- a long-running problem for web developers which has led to a slowing down of the web's advancement -- may soon become a thing of the past.
Earlier this week, Adobe Systems announced a partnership with the Mozilla Foundation that both companies hope will lead the way to a better web.
Adobe has agreed to release the script engine behind the company's popular Flash Player under an open source license. Mozilla will host the new project, dubbed Tamarin, which makes the code for Adobe's ActionScript Virtual Machine (AVM) freely available.
"We believe that, in the long term, this will help spur even more innovation in Web 2.0 applications," says Pam Deziel, director of product marketing at Adobe.
ActionScript, the code that runs interactive Flash applications, has long been based on an standard known as ECMASCript. ECMAScript is also the basis of JavaScript, the primary tool of Ajax developers. Web 2.0 companies such as Flickr, YouTube and Google rely on scripted technologies like Ajax and Flash to provide their services.
With Tamarin, both Adobe and Mozilla hope to accelerate the development of a standards-based platform for creating faster and more engaging web software. Adobe claims that its script engine can render code up to ten times faster than the engine currently used by Firefox.
Prior to Adobe's announcement, each browser manufacturer has been forced to rely on its own script rendering engine. Differences between the various technologies and the resulting anomalies in browser behavior make software development difficult for Web 2.0 companies. In fact, developers often spend countless hours before a site launch testing their application's behavior on different browsers.
With so many browser manufacturers concurrently developing similar tools, Adobe felt it was time to unify the community's efforts.
"We hope this will benefit the entire developer community by providing a more uniform language for applications," Deziel says.
"This being open source, we're hoping that developers will be able to give users exactly the same experience in all the browsers," Adobe CEO Bruce Chizen said while speaking at the Web 2.0 Summit in San Francisco.
"Adobe's work on the new virtual machine is the largest contribution to the Mozilla Foundation since its inception," said Brendan Eich, chief technology officer of the Mozilla Corporation in a press statement.
The Mozilla Foundation has announced that it plans to release a version of the Firefox browser with the new ActionScript VM code built in sometime in 2008. Adobe's popular Flash Player, which is used extensively by popular sites like YouTube and MySpace, will remain a proprietary Adobe product.
Although the Tamarin project will be hosted by the Mozilla Foundation, the code is available under the same Mozilla open source license as the browser code, meaning that other browsers like Opera, Apple's Safari and Microsoft's Internet Explorer can incorporate the scripting engine into their projects.
Microsoft did not have an immediate comment on the release of Tamarin, but a Microsoft spokesperson did say, "Microsoft welcomes competition because it drives innovation which benefits customers."
Reaction in the developer community has been mixed. Flash developers won't see any immediate benefit to the release since they have long has access to the scripting engine through Adobe's Flash Player.
Unless Tamarin is adopted by all the browsers the long term benefits for developers may be minimal. Mark Belanger of the Flash-based development shop Fluid.com, points out, "There are still going to be at least three major JavaScript interpreters (IE, Firefox, Safari)."
Because of significant bugs and inconsistencies between scripting engines, Belanger says Fluid "will stick with the Flash runtime for our application development."
Indeed the biggest win for Adobe may be the number of developers frustrated with AJAX inconsistencies who decided to further investigate the rendering possibilities of Adobe's proprietary Flash Player.
**************************************************************
Microsoft quote:
Microsoft welcomes competition because it drives innovation which benefits customers. That's a good thing. Ultimately, customers will choose the browser that best meets their needs, and we are confident that most will continue to use Internet Explorer and upgrade to Internet Explorer 7 when they evaluate factors such as end-user functionality, site and application compatibility, developer extensibility, enterprise manageability, and security backed by the processes and engineering discipline employed by Microsoft.
Please attribute this information to "a Microsoft spokesperson." Feel free to contact me if I can be of further assistance.
*************************************************************
Belanger Quotes
It's a fascinating development and one I'm still quite frankly digesting. Macromedia, now Adobe, has been actively and aggressively courting the web development community for years now, but in the Spring made a significant statement to that effect by offering the Flex 2 SDK for free. This new move seems to be backing up that statement in a major way and will undoubtedly earn them more credibility in that community.
That said, I'm not sure there's that much more to this story to get excited about. Here's who wins:
0) Mozilla gets a huge donation of important code. Their already solid JavaScript renderer will get that much better.
1) Adobe gains more credibility within the open source community, but it's important to remember that only the interpreter is being open sourced, not the runtime. Developers who have rejected Flash as a development platform because it's proprietary will continue to do so.
2) Adobe may gain the ability to shunt objections to the proprietary nature of their platform by pointing to the fact that eventually both the Flash AS2 engine and Mozilla's JavaScript engine will be identical, but no pragmatic engineer would buy such an argument.
3) Adobe should gain more influence in the standards setting of ECMAScript.
*yawn*
Unless I'm missing something major, this isn't going to change our development at all in the near-term. AJAX, while much improved, is still not ready for prime-time and still has too many characteristics of the "death by a thousand cuts" development nightmare that we all experienced during the original browser war. Taramin, unless magically adopted by Microsoft and Apple, won't solve that issue at all. There are still going to be at least three major JavaScript interpreters (IE, Firefox, Safari) we're going to still have to develop against, not saying anything about the various rendering engines and their myriad of bugs and inconsistencies. Been there, done that, so we'll stick with the Flash runtime for our application development.
Ultimately, the last point above may be the most significant impact from this move. I'd imagine that by now Adobe must realize they can only get so far with the Flash runtime as an application development platform in the minds of developers. At this point, Adobe has provided the development community with:
- The most widely distributed application platform on Internet, at
least 10 points higher than IE.
- A highly performant runtime in Flash 9.
- Seemingly bit for bit compatible operation across Windows and OS X
and soon even Linux.
- A clean and powerful development language combination in MXML and
ActionScript.
- An enterprise grade IDE in the Eclipse-based Flex Builder or a *zero
cost* tool set to develop with.
And yet, the development community still falls all over itself hyperventilating about truly lousy AJAX technologies while Flash/Flex development is relatively ignored. What more can Adobe possibly do? That's got to be disillusioning.
Likely Flash's proprietary nature or perhaps even a lingering distasteful memory of the Skip Intro/Dancing Banana past of Flash seems to have permanently alienated a whole class of developer that insists on only HTML-based development. Given how similar the XHTML <-> JavaScript development model is to Adobe Flex's MXML <-> ActionScript, I could see this move as a major hedge to ensure that Flex Builder-like solutions for AJAX are a top of class solution. Adobe would be well positioned to continue to own the client-side web development market.
--
_______________________________________________________________________
Mark Belanger - belanger@fluid.com
|