Archive for Tag ‘Flash‘

Are Flash and Flex Web Technologies?

Throughout this week and part of last, I’ve been working (in between meetings) on getting Alfresco Labs 3.0 set up on my laptop to be able to demo (and experiment with) their new Share application. The challenge has been in getting the flash-based preview of uploaded multi-page PDF documents working (see this thread in the Alfresco forums for some of the details).

The way the feature should work is that the Alfresco Share application takes the PDF a user uploads into the document library, converts it to an SWF using swftools (one frame of the SWF per each page of the PDF), and then uses the YUI framework to “play” the resulting SWF.

The problem is that for me, depending on the version of Flash installed, the preview SWF cannot be displayed. (Short version: Flash 9.0.45-47 works fine, later Flash versions just result in a spinning cursor which never resolves. The problem is Flash 9.0.45 breaks file upload, which works in later Flash versions).

Good Flash

Good Flash

 
Bad Flash

Bad Flash

Just finding this out required a lengthy exercise including full uninstalls of Flash (using Flash uninstaller for Mac OS X, which takes forever since it is a PowerPC binary running on an Intel machine) along with installs of various versions of Flash from the 9.x archive.

It was in this context that I was so happy to see the dialogue Dion Almaer and Brad Neuberg posted at Ajaxian today: How Flash Can Join The Open Web.

Read more…

Flash, Flex, Open Source?

(Via Alex Russell’s blog I came across Mike Shaver’s “Being Open About Being Closed,” which is an excellent discussion of Adobe’s positioning of the Flash player and Flex in Top 10 Adobe Flex Misconceptions.

As Mike points out, the fact that the Tamarin is an open source project, and that various people in the community have over time deciphered the SWF file format, does not make Flash anything other than a proprietary product.

In many of the presentations I give about rich Internet applications, I use a slide which looks something like this:

Ajax and RIA Frameworks

It’s intended to communicate two key concepts:

  1. There are a huge number of mature, professional open source toolkits and frameworks for building RIAs.
  2. There is strong pressure on proprietary, closed, commercial toolkits and frameworks in this space to open up, at least in terms of source code visibility and modifiability, if not in terms of redistribution.


Read more…

Mozilla Prism vs Adobe AIR

A few weeks back, Mozilla introduced into Mozilla Labs an application called Prism, which essentially rebrands the old Mozilla WebRunner as a desktop container for web applications.

As the following image (from the Mozilla Labs Prism page) illustrates, the idea is that Prism splits apart the light coming from the cloud into separate apps. (I know, light doesn’t really come from clouds, but you get the point):

Mozilla Prism

In essence, what Prism does is simply to create a single-url loading instance of firefox without all the browser chrome – so that the application gets an icon of its own, has an entry in the Start menu, is accessible via alt-tab application switching, and the like.

Its an interesting direction for WebRunner, and a good step forward for some specific use cases along the desktop application / web application continuum. Take an app which has offline sync via GoogleGears, run it inside Prism, and you’ve got a desktop application which syncs to the cloud but can also be accessed from other non-prism browsers when you are away from your machine.

(For more info on Prism, see Read/Write Web, Geeks are Sexy, Alex Faaborg’s discussion of its UI, feature suggestions on Prism Brainstorming, Mark Finkle’s discussion of changes from the existing WebRunner, and the forums at Mozilla Labs).

In the process of explaining what Mozilla Labs is up to, the (anonymous?) Mozilla Labs blog entry author said:

Unlike Adobe AIR and Microsoft Silverlight, we’re not building a proprietary platform to replace the web. We think the web is a powerful and open platform for this sort of innovation, so our goal is to identify and facilitate the development of enhancements that bring the advantages of desktop apps to the web platform.

This got the attention of Adobe’s Mike Chambers, who first posted in the comments on the Mozilla announcement, taking issue with the idea that Prism is fundamentally different from AIR. After all, he noted, AIR also runs applications developed on web standards and runs them in a desktop container with some additional desktop-like features:

So, is the main difference between something like Prism and Adobe AIR, that Adobe AIR is being primarily developed by a company (Adobe), and that Prism is being developed by Mozilla?

Later, he expanded on this issue in a blog post: “Mozilla Prism and the Disingenuous Web,” repeating the notion that AIR and Prism seem quite similar in goal and usage, and complaining:

Come on Mozilla, the web development community deserves better than that. Adobe has been an active supporter of the web development community, of open source, of web standards and of Mozilla (donating the ActionScript virtual machine from the Flash Player (Tamarin)). Adobe AIR leverages a number of open source technologies (including Tamarin, SQLite and WebKit) and we actively participate in both of those development communities, and we have been open with our development process for some time.

So what does differentiate Prism from AIR? (See also “AIR, and a Prism” at Technological Musings for another comparison)

Mozilla Prism, for now, is Windows only; Adobe AIR, for now, is Windows and Mac OS only. Both have promised Linux support in the near future.

As several readers pointed out in comments threads on both Mike Chambers post and the one at Mozilla labs, the Mozilla foundation has a better track record at porting applications to Linux than Adobe does. (Flash Player 9 notwithstanding).

(Note that Linux and MacOS X installers are already listed in the Mozilla Labs Wiki – I’m trying one out in Linux now, and it seems to work just fine).

Adobe AIR is based on WebKit (also used in Safari, originally from the Konqueror browser in KDE) for rendering HTML; Mozilla Prism is based on Firefox. AIR can handle flash content, pdf content, or Ajax (HTML/JavaScript) content; Mozilla Prism can as well, though it relies on the same plugins the Firefox browser does to support these other content types.

One significant difference is that Adobe AIR applications are created by developers, who do some “extra work” to create and package their application as an AIR application, whereas Mozilla Prism applications are created by end users, who take an existing web application and tell Prism to run it.

Finally, and perhaps most importantly, while AIR “leverages a number of open source technologies (including Tamarin, SQLite and WebKit) and [Adobe] actively participate in both of those development communities, and [Adobe] have been open with our development process for some time” (quotes from Mike Chambers’ blog post), Mozilla Prism is itself an Open Source project (Mozilla Public License).

What this means it that if the development community is unhappy with the directions in which Prism is going, they can fork, and take the existing code base in different directions.

Or, working in collaboration with the existing project, they can extend that code base, taking it to other platforms or contexts.

In other words, I’d say the difference isn’t, to answer Mike Chamber’s question, that one is developed by a company (Adobe) while the other is developed by a foundation (Mozilla), but that one consumes and participates in open source (Adobe AIR), while the other is itself fully open source (Mozilla Prism).

That’s not to say Adobe has not been a good open source citizen or contributed appropriately to WebKit, SQLite, and others – I believe they have contributed substantially to a number of projects. It’s just that an implementation which is fully open is preferable, for many folks, to one which is mostly open except for where it isn’t.

I’m surprised that is still so hard to understand.

Internet TV – Joost and Miro

Steve Borsch at Connect the Dots has a post today titled “Two approaches to internet TV: Joost and Miro.

I’ve left a brief comment there, but wanted to expand on it here. This isn’t just a question of two different approaches to delivering Internet TV – it’s a fundamental difference of passive consumption versus active participation.

The fundamental difference between Joost and Miro is seen in these two quotes.

Read more…

AjaxWorld West Presentation: Two Steps Forward, One Step Back

I presented earlier this morning at Ajax World West. The title of the presentation was “Two Steps Forward, One Step Back: Back to the Browser Wars.”

Not sure how valuable the slides will be in the absence of my commentary on them, but here they are:

Thanks to those who attended and feel free to contact me with any questions.