Flash Wars: Adobe Fights for AIR with the Open Screen Project [Part 3 of 3]
Flash has plenty of enemies and obstacles, but it also enjoys wide deployment and familiarity. Two areas where Flash can offer real value is in displaying and packaging video on the web, and in serving as a Java replacement for developing applets. Here's a look at how Adobe is working to defend its strengths in the face of competition, and how its efforts to open the Flash specification in the Open Screen Project play into these efforts.
Challenges to Flash Video
Flash rapidly took over the market for embedding videos into web pages and popularized the proprietary FLV video container format. However, as the industry has moved to support the more advanced and open H.264 video codec, Adobe has been forced to drop its obsolete old FLV container and migrate toward H.264 itself, both as a codec and as a container file.
Since nearly all modern mobile devices now play back H.264 content in hardware, any advantage to using the Flash software player is now waning outside of the feeble web environment on PC desktops. Even there, Adobe only owns the playback of largely non-commercial content. Nearly all purchased video content is being distributed by Apple through iTunes, and most streaming content is being delivered by Windows Media, Real, or QuickTime. That reduces Adobe's ability to make enough money on Flash to entrench it as a necessary tool for web video.
Apple's ability to disrupt the status quo in video playback is evident in its deal with Google to vend YouTube videos to the iPhone, iPod Touch, and Apple TV as straight H.264 rather than Google's existing mix of a Flash-based player and its archaic GVI file format based upon AVI. The BBC similarly moved to support Apple's products by serving up standard H.264 video to them.
That rapid erosion of Flash's significance in presenting web videos is a key reason why Adobe is scrambling to create the appearance that Flash is critical infrastructure to the web and mobile devices, even though there is little evidence of any need for Flash outside of the PC browser. As Apple's hardware-based H.264 playback in mobile devices begins to define how to reach affluent customers with content, Flash will increasingly lose any allure on the PC desktop as well, as developers won't want to target PCs and mobiles using two different systems. Apple has already published specifications on how to vend straight H.264 video without relying on Flash, and is itself leading the way with a web presence that is heavy with Flash-free video clips.
Flash Fights for AIR in Rich Internet Applications
Adobe's backup plan is to push Flash as the basis for AIR, the Adobe Integrated Runtime, which allows for the development of standalone applications using Flash tools. But Adobe has a tough fight in that market as well.
Again, Microsoft is pushing Silverlight to do the same thing, and Sun has long been working to do this with Java. Google offers its own Google Web Toolkit for building standards based applications using JavaScript-based Ajax, and there are a variety of other products designed around building Ajax web applications without any dependance upon Flash. In the mobile arena, Google is pushing its Android platform, which essentially uses an open, independent version of the Java VM called Dalvik, without actually using Java bytecode.
The W3C, in conjunction with Apple, Mozilla, and Opera, is working to develop HMTL 5 as a more ideal basis for rich Internet applications, with support for immediate mode drawing, offline data, inline editing, and drag and drop interaction baked right into the web rather than layered on top with a plugin runtime like Flash.
If You Can't Sell It, Make It "Open"
These pressures have forced Adobe to crack open its licensing terms for Flash. While the company has published Flash specifications before, it has done so under NDA and explicitly forbid the creation of alternative Flash content players. The reason for this was likely to prevent Microsoft from creating its own Flash-compatible player, forking it, and hijacking Flash development in the same manner it ripped Java from Sun. Now that Microsoft has created its own Flash replacement; that strategy makes little sense.
Adobe has now begun touting the Open Screen Project, which aspires to partner with a consortium of companies to push Flash as a platform for rich Internet applications. In order to make this happen, Adobe had announced plans to begin working on efforts to:
remove the restrictions on use of the Flash file format specifications
publish device porting layer APIs for Flash Player
publish its proprietary protocols for transmitting data between Flash apps and servers
remove device licensing fees for the next major releases of Flash Player and AIR
Will the Open Screen Project Matter?
Adobe lists a variety of phone makers and chip manufacturers as its partners in the Open Screen Project, but notably excludes any mention of Microsoft, Apple, and Google. How will ARM, Intel, and Cisco have any relevant impact on pushing Flash on Microsoft's desktop, Apple's mobiles and the Mac, or Google's web apps and Android platform?
And how are the existing licensees of Adobe's Flash Lite on mobile phones (LG, Nokia, NTT DoCoMo, Qualcomm, Samsung, Sony Ericsson, Toshiba, and Verizon Wireless) going to do anything to promote Flash-based rich Internet apps when their devices can't even run the full version of Flash?
Adobe seems to be hoping that nobody notices these problems and that its vigilant marketing efforts can entrance the public into thinking that a drawing app extended into an animation tool and then retrofitted into a monstrous hack of a development platform is a superior technology basis for building web apps compared to the use of modern open standards created expressly to promote true interoperability by design rather than retroactively.
Given the existing problems of Adobe's Flash Player, will things get any better once we have a handful of different implementations of the Flash platform runtime? And will developers and vendors manage to avoid facing any patent risks after investing heavily to build on top of Adobe's sort-of-open version of Flash? These questions might have interesting answers, but in a world dominated by Microsoft, Google, and Apple, they won't matter.
Earlier segments in this series:
Flash Wars: Adobe in the History and Future of Flash [Part 1 of 3]
Flash Wars: The Many Enemies and Obstacles of Flash [Part 2 of 3]
Challenges to Flash Video
Flash rapidly took over the market for embedding videos into web pages and popularized the proprietary FLV video container format. However, as the industry has moved to support the more advanced and open H.264 video codec, Adobe has been forced to drop its obsolete old FLV container and migrate toward H.264 itself, both as a codec and as a container file.
Since nearly all modern mobile devices now play back H.264 content in hardware, any advantage to using the Flash software player is now waning outside of the feeble web environment on PC desktops. Even there, Adobe only owns the playback of largely non-commercial content. Nearly all purchased video content is being distributed by Apple through iTunes, and most streaming content is being delivered by Windows Media, Real, or QuickTime. That reduces Adobe's ability to make enough money on Flash to entrench it as a necessary tool for web video.
Apple's ability to disrupt the status quo in video playback is evident in its deal with Google to vend YouTube videos to the iPhone, iPod Touch, and Apple TV as straight H.264 rather than Google's existing mix of a Flash-based player and its archaic GVI file format based upon AVI. The BBC similarly moved to support Apple's products by serving up standard H.264 video to them.
That rapid erosion of Flash's significance in presenting web videos is a key reason why Adobe is scrambling to create the appearance that Flash is critical infrastructure to the web and mobile devices, even though there is little evidence of any need for Flash outside of the PC browser. As Apple's hardware-based H.264 playback in mobile devices begins to define how to reach affluent customers with content, Flash will increasingly lose any allure on the PC desktop as well, as developers won't want to target PCs and mobiles using two different systems. Apple has already published specifications on how to vend straight H.264 video without relying on Flash, and is itself leading the way with a web presence that is heavy with Flash-free video clips.
Flash Fights for AIR in Rich Internet Applications
Adobe's backup plan is to push Flash as the basis for AIR, the Adobe Integrated Runtime, which allows for the development of standalone applications using Flash tools. But Adobe has a tough fight in that market as well.
Again, Microsoft is pushing Silverlight to do the same thing, and Sun has long been working to do this with Java. Google offers its own Google Web Toolkit for building standards based applications using JavaScript-based Ajax, and there are a variety of other products designed around building Ajax web applications without any dependance upon Flash. In the mobile arena, Google is pushing its Android platform, which essentially uses an open, independent version of the Java VM called Dalvik, without actually using Java bytecode.
The W3C, in conjunction with Apple, Mozilla, and Opera, is working to develop HMTL 5 as a more ideal basis for rich Internet applications, with support for immediate mode drawing, offline data, inline editing, and drag and drop interaction baked right into the web rather than layered on top with a plugin runtime like Flash.
If You Can't Sell It, Make It "Open"
These pressures have forced Adobe to crack open its licensing terms for Flash. While the company has published Flash specifications before, it has done so under NDA and explicitly forbid the creation of alternative Flash content players. The reason for this was likely to prevent Microsoft from creating its own Flash-compatible player, forking it, and hijacking Flash development in the same manner it ripped Java from Sun. Now that Microsoft has created its own Flash replacement; that strategy makes little sense.
Adobe has now begun touting the Open Screen Project, which aspires to partner with a consortium of companies to push Flash as a platform for rich Internet applications. In order to make this happen, Adobe had announced plans to begin working on efforts to:
remove the restrictions on use of the Flash file format specifications
publish device porting layer APIs for Flash Player
publish its proprietary protocols for transmitting data between Flash apps and servers
remove device licensing fees for the next major releases of Flash Player and AIR
Will the Open Screen Project Matter?
Adobe lists a variety of phone makers and chip manufacturers as its partners in the Open Screen Project, but notably excludes any mention of Microsoft, Apple, and Google. How will ARM, Intel, and Cisco have any relevant impact on pushing Flash on Microsoft's desktop, Apple's mobiles and the Mac, or Google's web apps and Android platform?
And how are the existing licensees of Adobe's Flash Lite on mobile phones (LG, Nokia, NTT DoCoMo, Qualcomm, Samsung, Sony Ericsson, Toshiba, and Verizon Wireless) going to do anything to promote Flash-based rich Internet apps when their devices can't even run the full version of Flash?
Adobe seems to be hoping that nobody notices these problems and that its vigilant marketing efforts can entrance the public into thinking that a drawing app extended into an animation tool and then retrofitted into a monstrous hack of a development platform is a superior technology basis for building web apps compared to the use of modern open standards created expressly to promote true interoperability by design rather than retroactively.
Given the existing problems of Adobe's Flash Player, will things get any better once we have a handful of different implementations of the Flash platform runtime? And will developers and vendors manage to avoid facing any patent risks after investing heavily to build on top of Adobe's sort-of-open version of Flash? These questions might have interesting answers, but in a world dominated by Microsoft, Google, and Apple, they won't matter.
Earlier segments in this series:
Flash Wars: Adobe in the History and Future of Flash [Part 1 of 3]
Flash Wars: The Many Enemies and Obstacles of Flash [Part 2 of 3]
Comments
That said, Adobe's plans won't work. I am currently building an AIR app using Flex Builder and besides the fact that it's easy to work with, the APIs are buggy and Flash is just generally effin' slow for anything other than the simple Flash animations of yesteryear.
The app I'm building isn't particularly complex but requires that I make use of Lists/HorizontalLists/TileLists...and let me tell you, the UI becomes stuttery if the list contains more than 50 items (often time using basic item renderers.)
The rendering of UI objects in Flash is just way too slow even on a 3 year old computer. Ideas of having a halfblown OS on top of a fullblown OS will never works. Java and Flash are in essence a mini OS on top of a real OS. They'll always be slower and they'll always have trouble doing things that require intricate links to the real OS.
What I would really like would be for apple to stick a layer ontop of SVG so we dont have to write code that looks like this...
<svg width="225" height="250">
eughh horrible.
[svg width: 225 height :250]
thats better
or [svg initWithRect:rect]
the objective c would be parsed and converted to SVG out of sight. Can anyone think of a decent reason why this would be a silly idea?
PS: im sure there may be decent reason, i havent given the idea more than 5 minutes of thought.
The app I'm building isn't particularly complex but requires that I make use of Lists/HorizontalLists/TileLists...and let me tell you, the UI becomes stuttery if the list contains more than 50 items (often time using basic item renderers.)
The rendering of UI objects in Flash is just way too slow even on a 3 year old computer. Ideas of having a halfblown OS on top of a fullblown OS will never works. Java and Flash are in essence a mini OS on top of a real OS. They'll always be slower and they'll always have trouble doing things that require intricate links to the real OS.
I have created several enterprise level Flex and Air applications that easily handle 5,000 or more objects in a single data grid. If you find that the application is too slow, you need to re-factor your code. Like all frameworks, there are right and wrong implementations.
Generally, itemRenders should extend UIComponent (not Canvas, or Panel) and should provide 3 or fewer pieces of information. Each of which should be the direct display of an Objects properties; not requiring computation.
I constantly recieve complements on how quick, easy to use and stylish my Adobe Flex applications are. Because the Flex framework and components are so rubust, I can easily create applications that present gigantic data sets in an easy to understand manner.
The only real standard of the web is Flash. 99% penetration is a standard whether one likes it or not. period.
Apple's HyperCard was a plain English scripting language using a "card" metaphore that empowered ordinary folk to create interactive modules. Solutions Etc.'s SuperCard was/is HyperCard on steroids. Apple should use a small portion of it's cash reserves to buy SuperCard and develop a Flash-killer application.
The bottom line is always "I hate the ads' therefore Flash is evil.
I think many people are very wary of anyone controlling any 'standard', standards are very hard to shake off, sometimes impossible no matter how great the alternatives are.
Adobe have played fair most of the time, but once entrenched, flash could become a royal pain in the ass for everyone bar Adobe.
Kill it now before it's too late in my opinion.
I have created several enterprise level Flex and Air applications that easily handle 5,000 or more objects in a single data grid. If you find that the application is too slow, you need to re-factor your code. Like all frameworks, there are right and wrong implementations.
Generally, itemRenders should extend UIComponent (not Canvas, or Panel) and should provide 3 or fewer pieces of information. Each of which should be the direct display of an Objects properties; not requiring computation.
I constantly recieve complements on how quick, easy to use and stylish my Adobe Flex applications are. Because the Flex framework and components are so rubust, I can easily create applications that present gigantic data sets in an easy to understand manner.
Nice first post. Welcome.
These articles are very critical of Flash but offer little in terms of solutions to the Flash's alleged shortcomings. Flash is still the most powerful tool on the net. I've invested a lot of money and time into Flash but I would switch in a heartbeat if there was something else that worked as well. But just saying Flash is a crappy product doesn't make it so. That is one person's opinion. Flash is so much more than a ubiquitous video container. The bottom line is always "I hate the ads' therefore Flash is evil.
* yawn *
We get it. You're a Flash designer.
The problem with Director and Flash has always been their non-intuitive animation-based interface.
Apple's HyperCard was a plain English scripting language using a "card" metaphore that empowered ordinary folk to create interactive modules. Solutions Etc.'s SuperCard was/is HyperCard on steroids. Apple should use a small portion of it's cash reserves to buy SuperCard and develop a Flash-killer application.
See, I have never liked plain english scripting, and I think the"animation based interface" is one of flash's plus points.
Rapid WYSIWYG results meant graphic designers felt at home, and a timeline that 3D modelers or sequencer users or video editors were accustomed to.
I think many people are very wary of anyone controlling any 'standard', standards are very hard to shake off, sometimes impossible no matter how great the alternatives are.
Adobe have played fair most of the time, but once entrenched, flash could become a royal pain in the ass for everyone bar Adobe.
Kill it now before it's too late in my opinion.
The marketplace will decide if Flash stays or goes. Until something better comes along it will stay. If you look at how well standardizing HTML is turning out, you begin to understand how design by committee actually works. Personally I like the way Flash works, and for those who don't, there is always the off switch.
The only real standard of the web is Flash. 99% penetration is a standard whether one likes it or not. period.
Don't tell lies. No, it is not.
Flash is a proprietary format, whether you like people to realize that or not.
Definition of a standard:
[A] document, established by consensus and approved by a recognized body, that provides, for common and repeated use, rules, guidelines or characteristics for activities or their results, aimed at the achievement of the optimum degree of order in a given context.
NOTE Standards should be based on the consolidated results of science, technology and experience, and aimed at the promotion of optimum community benefits.
http://www.robweir.com/blog/2007/05/...rds-words.html
A standard is a written document (as here, for example). A standard is reached by consensus (as here, for example). A standard is aimed at the promotion of optimum community benefits; it is not about Adobe's, or anyone else's, bottom line, and damn the public.
So no matter what, it's here to stay for a LONG time and I look forward to seeing it grow and improve.
And if it's here to stay, then I won't mind at all if my iPhone someday gains the ability to view it With battery life and performance being concerns, of course.
These articles are very critical of Flash but offer little in terms of solutions to the Flash's alleged shortcomings.
It is not AppleInsider's job to fix Flash.
Flash is still the most powerful tool on the net. I've invested a lot of money and time into Flash but I would switch in a heartbeat if there was something else that worked as well.
Most powerful is unqualified, there is no "Most powerful" at everything, are you talking about its ability to make great burgers? Please qualify, there are a lot of features of flash that you could be referring to. Most Powerful at what?
You state you would switch if there was something else that worked as well, again .... What feature need work as well?
But just saying Flash is a crappy product doesn't make it so. That is one person's opinion. Flash is so much more than a ubiquitous video container. The bottom line is always "I hate the ads' therefore Flash is evil.
Right, and your statement above is also "one person opinion".
Flash is a lot more than playing video, ABSOLUTELY CORRECT, that is the main reason Apple does not want to use it on the iPhone.
Run anywhere? Like Java, we know that usually gets you a compromise and programming for the least denominator.
There is a place for Java and a Place for Flash. When it comes to my Mac and iPhone I have no need for either. When it comes to server side Java and console level java, I love java, but I still do not need Flash.
What you can do with Flash can be done with other languages and a good API.
Flash is risky and most people do not know how to write a secured Flash application. The ones executing it, have no idea what is being executed on their system.
Thing is, the so called web standards cannot to this day garantee that a web application will work on all browsers in the same fashion and with the same looks. I am getting tired of having to debug an application using standards that works in one browser and not the next.
The only real standard of the web is Flash. 99% penetration is a standard whether one likes it or not. period.
Of course, one could make the arguement that the reason web browsers are so poor at following/implementing standards is because they don't need to be good at it. All they need to be able to do is load a plug-in for some ubiquitous (and proprietary) technology. I remember the days of having dozens of different plug-ins for Netscape just to view all the different content that was out there. It was a pain in the arse to keep current on it all. The fewer plug-ins the better, I say!
Proprietary "standards" have pros and cons. The Pro is that since a single company owns it they can move quickly to update and enhance it (formal, open standards are slow to develop). The Con is that since a single company owns it you are at their mercy to update and enhance it. How many platforms are stuck on old versions of Flash because Adobe didn't update it for them?
Apple seems to have struck a good balance between speed to market and use of open standards. Sure, they will never move fast enough for some of us; but when they do deploy they use good design to take the fullest advantage of open standards possible. The most recent builds of WebKit demonstrate that it is possible to fully support standards in a web browser if you make the commitment to do so.
* yawn *
We get it. You're a Flash designer.
Here are 3 examples of extremely compelling user experiences on the web that no other web platform can even come close to:
Site of the Year on FWA.
http://www.gettheglass.com/
Seriously powerful design, layout and photo manipulation tool:
http://www.scrapblog.com/tour/tour.aspx
Drive this car. Full interactive realtime 3d!!!:
http://www.carlosulloa.com/
Plus several hundred more examples at: http://www.thefwa.com
and
http://blog.papervision3d.org
I could go on an on. I challenge anyone to find an example of anything half as compelling as these.
The fact of it is that when progressive companies want to make something impressive and compelling they develop for the Flash Platform.
Plus, with Flex Builder IDE and automated build processes a company can do large scale deployments with hundreds of developers working together at once.
If Adobe plays their cards correctly they will continue to dominate.
Areas where the Flash Platform needs to improve:
1) More robust text display and handling.
2) Native support for rendering motion and graphics via the Graphics Processor
Additional recommendation:
Adobe should merge all the functionality from Director/Shockwave into Flash and kill of Director.
With Flash and AIR now being open source projects it will be fascinating to see what happens. It's World War III for the future of user experiences--a battle between Adobe, Apple, Microsoft, and Sun. Who will emerge as the victor? Excited to find out. And I hope its Adobe Flash.
Tony J.
Most powerful is unqualified, there is no "Most powerful" at everything, are you talking about its ability to make great burgers? Please qualify, there are a lot of features of flash that you could be referring to. Most Powerful at what?
You state you would switch if there was something else that worked as well, again .... What feature need work as well?
It does do EVERYTHING (maybe not burgers, but just about everything else), that is why I consider it the most powerful.
What you can do with Flash can be done with other languages and a good API.
That's a stretch, maybe Director, but certainly not Java. Flash has a pretty good API. Maybe better than anything else I've used.
Flash is risky and most people do not know how to write a secured Flash application. The ones executing it, have no idea what is being executed on their system.
I don't think so. The sandbox is pretty tight.
Here are 3 examples of extremely compelling user experiences on the web that no other web platform can even come close to:
Mmmmm...Sorry, could not see those great sites on my iPhone.
Ed
I am an infrequent but enthousiast user of the Adobe CS3 authoring tools. Flash is a great addition, allowing to animate Illustrator drawings. But a limitation of Flash (the authoring tool) is the available number of output formats. Seen from usability for CS3 users I think it would be just great when Adobe forgets about these standards wars and allows Flash to export animations in any format that is widely used.
Unless you're actually doing cartoon animations the Flash CS3 timeline is not very good. Almost exclusively, flash developers use code to do animation (except illustrative things like cartoons etc). They use open source code libraries like:
Tweener
Fuse/Zigo Tween engine
Real Flash developers use tools like:
Adobe Flex Builder
FlashDevelop
Sepy
etc.
All powerful text editors with additional functionality to assist in ActionScript devevlopment.