So the idea is to get a bunch of Flash and DHTML experts to (re)implement apps in their respective technologies. In theory, wacky hijinx should ensue.
So, let me start with the good. Seeing the implementations are definitely interesting. Dunstan takes charge on converting a Flash mountain resort map/travel site into DHTML, Kevin does an implementation of GMail in Flash (Flex), each side gives a JetBlue redesign a go, and then each team does an ‘only’ version of Flickr (the joke here being that Flickr tried a Flash only version and switched off for good reason, right?)
Judging was done w/ a not-very accurate flash-based sound-meter. Obviously things were tilted rather unfairly against the Flash guys just because of the room composition. What actually really sucked about the setup was that there was no time to substantively discuss pros/cons, or even to correct gross inaccuracies. A lot of this is based on the fact that most of it isn’t “what can we do that they can’t do”, but what makes it easier. Also, many of the diferences aren’t ‘sexy’ in the traditional sense (searchability, structure, etc.)
Some notes:
- Dunstan had a tough row to hoe with the maps. It’s not totally true that you can’t do zoomable maps (see Google Maps, after all), but it is true that it’s a complete PITA. Also, as far as a more usable/accessible version, you definitely would design it differently, and I’m a bit disappointed that Dunstan left it there w/o even sketching something out (probably a time thing)
- Kevin showed off some nice drag and drop w/ his GMail reimplementation (although DHTML can do that too, there have even been good photo album implementations). The central attachment filing is nice, although AFAIK, Flash can’t do desktop drag and drop to the desktop w/o Central?
- Jaxon does some great stuff witht the JetBlue redesign, having an Expose-style zoom map of where you are in the process. I can think of even wilder ways to go with that, that simply can’t be easily done in HTML.
- Eris (whom everyone I met has said is incredibly talented, and who has a beautiful site) inexplicably did the “HTML” version in XForms. I’ve ranted on XForms before…
- For the Flickr redesign, Vera added speech bubbles into which is also just plain bizarre because Flickr’s notes are already in Flash (and DHTML can do scaling speech bubbles trivially anyway, div w/ contained elements for curves))
- Chris showed off lots of math foo, calculating offsets/bounding to replicate Flickr annotations. Very trick.
- Simon asks a great question in regards to Greasemonkey — Flash just doesn’t allow a user to do any of those sorts of injections. This is a good and bad thing, actually and leads to…
So, I sort of got a bit agitated at various parts throughout this panel because of the general FUD, and I started making a list of Flash/DHTML pros/cons. Now, a lot of things just have to do with ease, but there are some things where they’re just (potentially different), which can be both good or bad. Alex added some things, and then I lost the file, so here’s just what I can pull off the top of my head
Flash | DHTML |
---|---|
+ Significantly better vector, animation + Multimedia: native sound! video! + Better compositing + Richer built-in widgets (Flex) + Significatnly easier compatibility + Works or doesn't + Higher market penetration ~ Harder to externally modify |
+ Potentially webbier + Browser navigation + Source viewable + RESTful + Bookmarkable + Progressive Enhancement + Structured (important, esp for search) + Standards Interaction (DOM, XML) + Easier to modify ~ "access" to variety of plugins ~ Easier to externally modify |
That being said, the DHTML webbiness is definitely potential (the Google apps so far for example don’t do that well on those counts) and that tendency may even be a liability (think about the positives and negatives of easy external modification [not that you can trust any client-side data 100%, but still]). Not, by access to plugins, that can be bad because it’s usually limited and buggy, but also good in the sense that these can overcome DHTML’s inherent weaknesses (the best DHTML sound engine I’ve found is Scott Schiller’s SoundManager, which pings to Flash to play sound).
Has someone done a comprehensive pros/cons on the various RIA options? Seems obvious, but I haven’t seen one around (feel free to send URLs now :).
Notes: