Should Macromedia open Flash?
Written at 22:22, on Wednesday 28 September 2005. Tags: webdesign .
Andy Budd recently had a change of heart on Macromedia’s Flash and considers its potential for Web2.0. Since it already solves a lot of problems that AJAX -based RIA‘s currently struggle with (such as maintaining state), he considers its current strengths as development platform: the Flash platform is already able to separate presentation and business logic, it’s asynchronous by nature, it’s fully object-oriented, etc. Like everything, I think web developers/designers should use Flash when it’s the best solution for your website (i.e. if it serves your business goals, your website goals and your audience). Nevertheless, it’s important to realise that Flash is still a proprietary solution, which is a serious drawback.
Flash is not free.
There are two meanings to freedom according to the Free Software Definition. Software can be freely available, at no cost, or it can have certain qualities of liberty attached to it:
Free software is a matter of the users’ freedom to run, copy, distribute, study, change and improve the software.
Note that this definition considers surfers, developers and designers all as users.
While the Flash SWF specification and the Flash player are free as in beer (no fees are required) it’s not free as in speech (you cannot use the license to create your own Flash player). While everyone can create authoring software to produce Flash files without paying license fees, there’s a restriction in the license which prevents anyone from using the specification for creating their own Flash player. This means that all platforms which Macromedia can’t or doesn’t want to support cannot legally view Flash files (%(note)but hey, why would you want to run Flash on an Linux AMD64%). The Flash SDK is only available at a license cost for third-party implementors. Open Source software, such as GPL Flash or Swfdec, which attempt to create free Flash players1, must thus reverse-engineer the format (an act which is illegal in some countries). Furthermore, since using the Flash player restricts your uses of the software, systems such as Debian, which only include free software, don’t contain the Flash player. So it’s great that you can use free software to create Flash files, but you can’t use free software to view Flash files. This does not make the Flash specification “open” in my view.
Flash, despite that developers have access to the specification and users can get the player for free, does not give users freedom and cannot freely be used in Open Source software.
Flash is not a standard.
But while Flash isn’t free, it sure is ubiquitously available. According to Macromedia, Flash is available on 98% of all Internet-enabled computers. Yet, since Macromedia has all control over the format, can it really be considered a standard? There are two major consortia which determine the standards which are used on the Internet: the IETF and the W3C.
An “Internet Standard” is defined by the IETF, which is responsible for things like TCP/IP, HTTP, POP3, SMTP and (more recently) ATOM and XMPP (Jabber). Yet, as far as I know, Macromedia hasn’t submitted Flash to the IETF as a Proposed Standard (which has a lot to do with the fact that its license isn’t free). But isn’t it a Web Standard then? Well, no, the W3C releases recommendations (which are, by all intents and purposes, referred to as standards), but Flash is not part of those recommendations either, nor from the other (dozens of) standards organisations. Therefore, Flash does not qualify as a standard in a formal sense.
A specification can only be considered a standard if it’s adopted by a standards organisation. While Flash may be a de facto standard, it’s not a de jure standard. A de facto standard is an unofficial or unformalized standard, a de jure standard is an official or legal standard. But there’s nothing to prevent a de facto standard from becoming a de jure standard.
So, Flash is free as in beer, but not free as in speech. It’s a de facto standard, but not endorsed by any standards organisation.
The future of flash?
With the upcoming releases of Visual Studio 2005 and Windows Vista in 2006, Microsoft intends to bridge the gap between designer and developer. Applications such as Sparkle and the Expression Suite, combined with the power of languages such as XAML and C#, show that Microsoft is invading the territory of Macromedia and Adobe, and have the potential to become much more then a flash killer.
Although it’s too soon to compare a mature platform such as Flash with unreleased software from Microsoft, the latter is notorious for leveraging its current userbase and OS monopoly. Microsoft can grow an installed base large enough to directly compete with Flash’s currently unique position.
From an idealistic point of view, I believe that Flash should be free and standardised (by the W3C or even by an ad-hoc consortium such as the WHATWG). And reasoning from a strategic point of view for Macromedia, considering the developments with Microsoft and the fate of some of their competitors (Netscape, RealPlayer, StarOffice), opening up and standardising may be a tactical move, although it may mean a short-term revenue loss from freeing up the SDK. There are still many questions though. What would Macromedia gain from submitting the Flash specification to a standards body, considering that progress is slow and they lose a lot of control over the standard, as Andy comments? And is it reasonable to say that creativity and freedom is hampered if it’s produced with proprietary technology? (%(note)This would mean that Adobe should therefore also open up it’s PSD and AI formats, and Microsoft its .DOC format%) Is it the tools which should be open or is it the content?
1 In this article, everywhere I mention “free”, I mean free as in speech.
Comments closed | Permalink