All Flash based Technology is a bad idea 5 comments

The hot news this morning seems to be that is going to open source their platform for rich internet applications. This is good news, right? Another victory for open source? right? right?

Wrong. This is a smart move by Adobe to enhance the popularity of the still closed and proprietary runtime. But even if the Flash runtime was free and open I would still have problems with the platform.

The true power of and / based solutions is not that they are open and free (although this is a big deal), but that they are transparent and extensible. If I build a new widget or web application everyone can see how it works, how the magic was done, and can take that knowledge and use it to build similar components and extend them. They can scrape content from my application, interconnect with it , use it in a mash up, or simply copy and paste from it. For me to favor Flash, view source needs to be there, and non optional (content creators cannot disable it), and every flash component needs to have non optional extension points by default (like the ).

I remember when Google Maps and GMail first launched, hordes of excited techies crawled all over it until its tricks and secrets where spread far and wide. The Pragmatic Ajax book even uses a Google Maps style interface as one of its examples. has lost nothing from this, no horde of competitors has sprung out of the night to steal its business using the code. But the concepts have enriched a thousand other web applications. News of the beauty of their code and their innovative techniques has reached every potential hire. Compare this to something like . Are the web developers of the world crawling all over its video playing Flash widget? No, because its a closed world.

Look at this great little mashup, its syncs Google Map with video footage of a car racing through the streets of Paris in the early morning. But whats the mechanism used to integrate? "Hit play at the 4 second mark". Smooth integration is impossible, because Flash is a closed world. If streaming media was a transparent, extensible technology such a crude bridge would be unnecessary.

The One Laptop Per Child project considers this to be such an important concept that they are building a view source button for all running applications right into the keyboard. This may turn out to be the greatest stroke of genius by an already overwhelmingly impressive project.

is promising us a path for rich graphics. , and others are promising us native video streaming in their next versions. We should focus our energy and passion on the technologies that allow us to work and learn together, rather than in lonely workshops and walled gardens.

Comments

I totally agree.

stelt 16:56 Friday the 27th of April 2007 #

So, you would prefer a net dominated by one tech only? Personally I prefer choice. Having written flash players in the past your idea of view source in SWF files is just plain mad since the swf file output would not in most cases bear a resemblance to how it was authored. One aspect that Flash has totally in its favour is that it will look the same across all browsers - something that cannot be said of XHTML and CSS at the moment because of poor implementations of the standards. I love XHTML/CSS/PHP programming and I also love Flash programming and I would not want to see all but one web tech disapear. Also, your argument about being able to see how google did google maps etc... well, google are massive and can afford to let people see their api but if you are small developer and some tech you produce is your only source of income should you not have the right to try and protect that while you have the advantage?

Bud 16:58 Friday the 27th of April 2007 #

Hi Bud, I would prefer one dominant open tech to a mass of closed technologies. But in reality the web is already based on many open technologies. In many respects what I want is what we have, many technologies that all play well together . CSS, HTML, XHTML, JavaScript, SVG and many of the upcoming standards all fit that description. I am worried that many are on the brink of abandoning a many technologies approach in favor of one technology that does everything, but badly. As regards "My Idea" of view source for SWF files, Its not something I am seriously suggesting, its an Achilles heal of the technology I am pointing out. Your assertion that this is plain mad only confirms that Flash is a bad technology. Flash most definitely does not look and behave the same across all browsers. Use Flash under Firefox on Linux and learn the brutal truth, flash too has cross platform issues Everyone has the right to protect their content Bud, thats why we have copyright law. You do not need to hide the content of a book from me to protect it. Many small developers have succeeded using open technologies, look at 37 signals, not only can you see how they built it, they actually give you permission to use their JavaScript libraries and web framework. It does not seem to be hurting their bottom line. Look at Bloglines, del.icio.us, Feedburner and Flickr. None of them feel that they need that protection. Flickr even migrated large portions of their UI from Flash to open technologies. Their success and popularity has only grown since. There are some things that only flash can do well at the moment, Streaming video is currently only really possible with flash. But I think it is a mistake to go from using Flash selectively where it is the only option, to using Flash based frameworks like Flex and Apollo. This time next year web browsers will support superior video streaming natively with better inter operation than Flash and a move to a Flash based framework will prove to be short sighted.

Sean O'Donnell 16:59 Friday the 27th of April 2007 #

Why does flash do it badly? I must admit I have not used Linux so I will claim ignorance there as far as Flash is concerned. But my point still remains that at the moment in the majority of cases all browsers are not the same. its getting better but the sheer fact it hasn't been better for a long time means that there is no way to ensure the same user experience across browsers - why limit your user to 'A' grade browsers only? As for the book analogy - I agree - in a Utopian world where copyright is easy to prove and enforce but in reality these things come down to who's lawyer can shout the loudest and who can afford to keep their lawyer shouting the loudest for the longest time. I love the idea of totally open source but at the same time I need to put food on the table and if that means keeping my technological advantage secret for a while - then why not? Once it is out in the open all can use it despite copyright unless we want to get back to lawyers hollering from the roof-tops again.... At the end of the day I choose whatever technology allows me to do what I need with the minimum amount of fuss and with the quickest turn-around. To that end most of my stuff is XHTML/CSS/PHP and practically no Flash. However, if Flash were more appropriate I would not hesitate to use it as to me its just like all technologies - a tool. You may be right about the short sightedness of going down a totally flash based framework but that really depends on what it gives us and what we can do with it and if it really isn't easier to use something else to achieve the same ends.

Bud 17:01 Friday the 27th of April 2007 #

Im not sure what you mean by "Why does flash do it badly". I find your take on copyright law interesting. Any cases of copyright infringement on source code I am aware of have generally proceeded in a straight forward manner. Can you provide me with an example of a drawn out complicated battle in what you believe to be a clear cut case of infringement? I too try to choose the most pragmatic technology for the task at hand. But I temper that with trying to avoid lending support to technologies that will inflict long term harm on the environment in which I work. I believe using flash as anything other than a technology of last resort is harmful to the web. The web prospers because of open, non proprietary , transparent extensible technologies. Flash is closed, proprietary, opaque and difficult to extend. It is worth noting that the web shares these traits with the Internet that supports it. Both systems have enjoyed far more long term success than any proprietary rival. Web content is generally very malleable, Flash content is rigid and difficult to reuse. Web content is easy to integrate with by default, Flash content is difficult to integrate with unless it has been built with integration specifically in mind. Web content is easy to index by default, Flash content is difficult to index by default. This stark contrast in characteristics leads me to view flash content as quite literally being pollution in a certain sense.

Sean O'Donnell 17:03 Friday the 27th of April 2007 #

New Comment

required
required (not published)
optional