I recently came back from a Macromedia MAX conference marathon. The conference was held in sunny rainy Anaheim California from October 16th to the 19th. While I’m not a big user of Macromedia products I found it particularly interesting in learning more about Flash and Macromedia’s plans with this platform.
Better Than Ever
The great news about Flash is that it’s better than ever, and quickly getting better. The new Flash 8.0 player release brought some significant speed increases and some robust live rendering effects. While I don’t know much about Flash, it was very apparent that Macromedia and many developers were very excited about this release.
Quickly following on it’s heels will be an 8.5 version of the player. Being touted as the quickest release of Flash ever, this new version will introduce Actionscript 3.0 and an entirely new Virtual Machine (The Flash engine that executes Actionscript) written from the ground up. The new strong typing (geek talk) found in Actionscript 3.0 coupled with the new Virtual Machine will allow significant speed improvements on all 3.0 written code. By significant, they mean significant. Numbers of around 1,300% were spoken of in more than a few sessions at the conference.
Everywhere Air Is
Flash is still continuing on it’s world domination tour. The new player is being gobbled up at a quickened pace. This version is being downloaded faster than all previous versions, not by much, but a quicker adoption none-the-less. With the new auto updating features introduced in Flash 7, there’s little reason to believe this trend won’t continue for future Flash player releases.
To further bring Flash to the far corners of the world, Macromedia is working hard at improving Flash Lite, the mobile version of the Flash player. While cell phone manufacturers have picked up the platform in every other corner of the globe except our own (Japan and Europe most notably), Macromedia was clear in promising that adoption here in the United States will be soon. Speaking with mobile developers, it was resoundingly clear that Java was as doomed in the mobile space as it is in the PC world (ahem). Flash is looking to pick up this slack. With Macromedia Being able to boast of an enormous existing developer base, having a light footprint, and utilizing superior multimedia technologies, I think they certainly have a shot.
Web 2.Flash
Since the web as a platform is all the rage these days, Macromedia was quick to share their vision for how this would work. Introducing the new Flex 2 Builder, Macromedia is making a big push the establish Flash as an application platform. Flex, in the words of Macromedia itself, is for developers who may not be comfortable developing in the Flash Pro IDE and with a timeline. Flex removes a lot of the hassle out of developing by using standard UI controls and a robust application framework all built using Flash technology. Of course, you get all the ‘page’ refresh goodness we expect from a RIA. This new Flex version no longer requires the use of a server and will sell for less than $1,000. That means it doesn’t require the $12,000 server license that Flex 1 did and will be able to reach a much broader audience.
Accessibility
One of the more interesting sessions I attended was on Flash and accessibility. Always assuming that Flash’s past was it’s present, I thought accessibility was still weak or clumsy in Flash. To my surprise, this is far from the case. The truth is a text reader, or any other device dependent on reading content to enhance the experience, works quite well with Flash.
The session I attended used a recent redesign of J.K. Rowlings site as an example. If you ever seen an example of a rich media experience, this has to be it. It’s about as ‘Flashy’ as it gets. Yet this same site is completely accessible (the presenter used a screen reader to read a few screens out loud), and it sounds like a good experience to boot.
In some cases I believe Flash can offer an improved experience over what is possible in XHTML. In Flash to create a text version of a button or a movie clip, you simple fill in the ‘Label’ field. Whatever is in that guy will be read out loud. They added a few properties to Flash 7 that would then allow you to decide if Flash should continue to read all the movie clips inside the movie, or just stop at the parent object. This fine grain, and scriptable, control allowed the developers for the J.K. Rowling site to fine-tune the screen reader behavior for those visitors. They used scripting to hide things on the screen that a visual person should see, but would be audio garbage to the listener. That type of control is not possible in the XHTML world, or at least not nearly as easy. You can use Javascript to set some properties the same way, but the timing mechanisms and fine control is still difficult and not nearly as baked in as Flash’s solution.
War Is Brewing
Personally, with a background in XHTML and believing in the notion of the web as a platform, I saw a war starting. During the sessions I attended, it was often mentioned that XHTML is good, and preferred for many situations. However Flash is still their flagship product, and they want it to be THE web 2.0 platform. This may or may not be a good thing depending on your point of view.
Essentially Flash is the rich media platform many thought the web was supposed to be. However because we couldn’t get our XHTML butt’s in gear as an industry, Flash has since positioned itself to be just that. Able to deliver anything from images, movies, vector animations, and now a powerful scripting language for rich applications. It IS the vision of the web we had hoped XHTML might deliver. There’s a slight caveat here, Flash is completely proprietary. Now that Macormedia and Adobe have merged, SVG’s only real corporate backing will drop support and SVG will die a whimper of a death. I also distinctly noted, when SVG was introduced, that Macromedia made no mention to incorporate any support for this standards based vector language into it’s product. Now I understand a lot more of why that was.
So how does the XHTML platform stack up? Not very well. Javascript is slow and cumbersome, and very difficult to develop for. Yes, the use of AJAX techniques are great, but with a variety of competing frameworks and no real good IDE, Javascript + XHTML as a platform sucks right now. Not too mention that the poor performance of Javascript in modern browsers is no comparison for the rich media possibilities in Flash. I know Javascript wasn’t built for that, but in an application you want to be able to utilize the strength of transitions to maintain user context and Javascript just can’t hack it. Actionscript was, and still is, difficult to develop for as well. However Macromedia is working hard to fix that, and they will be successful long before anyone can in the XHTML/Javascript space.
So Now What?
Honestly I still don’t think we have what we wanted. XHTML and Javascript is an awful platform for rich applications. Flash is still a platform within a platform. Operating inside a browser is hurting the Flash platform, not helping it. It was a necessary evil to get to where they want to be. In response they are working on future projects to remove the dependence on the browser for Flash applications. They alluded to this in the keynote speech and it could solidify the deal.
When it comes to applications, why bother with a browser meant to consume documents anyways? We could easily create an application messaging network based on HTTP (hint: XML and SOAP style technologies). All we need is a standard platform to distribute applications across multiple operating systems with one build. This is exactly what Flash is. I think the big question remains does it matter to you or not that it’s proprietary? Does it matter that the only company able to produce a consistent platform with speed and power is Macromedia and not an organization like the W3C pushing out standard recommendations?
Personally, I think Macromedia is a great company. The feeling I got from them at the conference was that they are very committed to creating tools for us to rule with. The people I talked to, and the Macromedia folks I heard speak, clearly came from a company with a strong and vibrant culture. It definitely seems that creativity and innovation are encouraged at Macromedia. So I don’t necessarily think this type of domination is a bad thing, nor is their vision for the web. It just blind-sided me as to what I thought Flash was. I think a lot of this comes from hanging out in the web standards based community. So is it really worth waiting years and years for a standardized platform, waiting for the rusty dinosaur of Microsoft to update their dominating browser so we can move forward? What do you think?
Published on October 21, 2005
Resides in Web Technologies
Comments feed | TrackBack URI
4 Responses to “Flash: The Good, The Bad, The Ugly”
1
James Paden on November 21st, 2005
I’m a little late here, but I just wanted to say that the above is an amazingly beautifuly written post. Just an explanation of the current state of Flash and the web. Great job, keep it up!
2
ryan on November 21st, 2005
Hey thanks James! I certainly didn’t get out of the conference what I thought I was going to get out of it. It was very interesting none-the-less!
3
Kevin Cannon on November 22nd, 2005
Hi,
Good post, interesting reading. I’ve just discovered your site, it’s nice to read posts with a bit of thought put into them, by someone with a lot of talent.
Regarding Flash being proprietary, I don’t see that as much of an issue. The SWF format is an open format, and many tools can generate SWF files, Indeed you can create Flash content without touching a Macromedia products at all.
I agree that reading too many web standards sites can sometimes result in a slightly blinkered view. It was only recently that Javascript as a technology was considered ‘ok’.
For me it boils down to this: XHTML is a great for documents. Flash is a great tool for animation, applications and interactivity. Ajax is now opening the possibility of using XHTML for applications, but Flash, as a development platform is still further ahead along that path.
4
ryan on November 22nd, 2005
That’s a good way to sum it up. For an application we’ll be releasing shortly for our clients, we are doing a fair amount of DOM manipulation. IE 6 is not only slow at the same processes that are cake for modern browsers, it just plain crashes in some instances. Not to mention not being able to get PNG transparency to work. (Despite using the normal workarounds)
I really believe that Microsoft has done us all a huge disservice by not upgrading one of the world’s most often used desktop applications(IE). They have held the advancement of XHTML/CSS/JS back as a reliable platform, more than many people realize, since the early 2000’s.