The Future of Flash
An anonymous reader writes "Adobe is celebrating the 10th anniversary of Flash, and News.com has an article looking at the company's plans for the future of the technology. No longer just a choice for 'innovative' web designers, Adobe is positioning Flash as an application development platform, with special emphasis on video delivery and mobile device applications." From the article: "On Tuesday, the company intends to launch a microsite showing the evolution of Flash over the past 10 years, including video interviews with developers. Those videos will no doubt be played with the Flash Video Player, something many high-profile Web sites, including YouTube, have chosen to use as well. The success of Flash in the next 10 years rides largely on whether leading-edge customers like YouTube will design their Web sites with Flash, Lynch said. Adobe, which gained the Flash technology when it bought Macromedia, is trying to build an 'ecosystem' of developers and partners, he said. "
..which is spelled SVG.
What a fool believes, he sees, no wise man has the power to reason away.
In the past I've always classified flash as a cute toy that web designers play with to get some interactivity that consisted of timelines and hiding little snippets of code in obscure places in the timeline.
However over the past month I've been imersing myself in the Flash world and have been amazed.
Did you know...
- You don't have to use the Flash IDE to create applications, you can use:
Eclipse (My preferred environment for this)
FlashDevelop
Notepad/Emacs/vi + a compiler
A crapton of other environments
Flex Builder (another adobe product)
- You never have to deal with a timeline if you don't want to.
- Real object-orientated programming is possible.
- Actionscript 3 (available in Flash Player 9) is clearly targetted at developers and not designers and removes many of the oddities of AS2 that you may have heard about.
- Real applications, not web toys can be created.
- With the upcomming apollo runtime, native applications can be created with full access to all machine resources.
- There's a ton of open source libraries out there
Want an IoC container like Spring? Sure!
Want a port of the java swing library? Sure!
- The new version of Flex Builder (the environment targetted at developers) is simply an eclipse plugin.
- Adobe is now making tools and libraries available free of charge to developers. (not the whiz-bang IDE's, but compilers, libraries, etc.)
Pardon, but you don't know what you're talking about.
Flashs accessability follows official standards for RIA plattforms by the book. And there's enough ammo that has "Flash is more accessible than HTML" written on it. I'll build a site that's perfect for blind people to navigate in flash - and they won't even need a screenreader.
Since AS 2 it's been an industry strength plattform and VM, with nearly all ties to the official IDE cut. Security is next to paranoid and because it's also monolithic plattform it's considered a reliable and easy to develop for.
Then again, you actually need to be able to develop webapps that don't suck. If used correctly a full-blown flash only site can be the best web experience ever. And, admitted, there are very few people who can do it right. Then again you've got the same thing with websites. 80% crap, 10% so-so, 10% ok and good. Same with flash.
Then again, the flash-bashers are getting less and less and the community of serious flash developers is growing steady, so future isn't that bleak.
We suffer more in our imagination than in reality. - Seneca
God I am so sick of seeing that Alertbox post - check the date:
October 29, 2000
Almost 6 years old.
*6* years.
The update is 4 years old, and IT admits Flash has gotten things right -- 4 years ago.
Flash is drastically different now, and the dev community has evolved from graphic artists with timelines and transitions to programmers with solid API's and robust, documented libs - if you're still building on 6 year old design information, techniques and (since we're talking about 6 year old buzzwords) paradigms, it's a designer issue, not a Flash issue.
One MAJOR problem - Flash content cannot be indexed by a search engine (AFAIK), AJAX sites (well any site that contains parseable text) can. That being said, if you don't care about being indexed (at least by content), then I guess it isn't an issue ;).
I know for Windows you have several options.
1 - Go the 32-bit route for Firefox.
2 - Use Flock and their 64-bit Flash clone.
3 - There is a plugin wrapper that allows you to use 32-bit plugins in a 64-bit version of Firefox.
With Ubuntu64, you can use Gnash, or whatever it is called, but it only supports up to Flash 7.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
Two of those articles have written 5-6 years back.
Another aspect of Flash is the Flash cookies, cookies that are separate and distinct from those the browser creates. The Flash cookies are not managed by any of the cookie management facilities in browsers or security programs, bypassing the security and privacy measures that are in effect for HTML cookies.
I'm on Linux/ppc with no binary codecs and I can play WMV9 and QT7 with open-source bits just fine. Admittedly the WMV9 bit of the equation is very recent :)
On capturing streams -- you might want to use a Mozilla browser and get the LiveHTTPHeaders extension. A site might obfusicate the URL all it likes, but the HTTP requests don't lie.
> It's almost ubiquitos distribution, and cross-platform support is the tops.
> All that was done with Flash 7. Flash 8 and especially 9 add fantastic video-speicific features that weren't in 6 or 7.
This may be true if you're talking about Flash 7, but Flash 8 and 9 are not available on Linux (I think they're going to release Flash 10), so if you want real cross-platform support, you'll either have to stick to Flash 7 (which doesn't have the video-specific features you like) or move to OGG, QT, or even WMV (without DRM) since those codecs are available on Windows, Mac, and Linux.
Every single thing you just complained about has been fixed in version 9.
Most of it was fixed in version 7.
And that's just what's on the top of my head now.
I was a big fan of SVG when it came out. But I'm just not seeing it as a popular success in the long run, not without a ubiquitous viewer shipped with IE. My view is that SVG will follow in the path of VRML - still a success in some niche markets, but forgotten by most.
there is no need to sign your posts. this isn't usenet. your username is right there above your post. stop it.
The only reason that YouTube, Google Video et al adopted Flash as their video player client was because Flash is pretty much universal, and it's easier to convert videos into a Flash video file than to deal with all the compatibility issues that come with embedding a Windows Media / Quicktime / RealVideo file. Nothing wrong with that, because Flash was designed to be an animation / movie player, and moving to full motion video isn't that big of a step.
.NET or J2EE. As for ActionScript 2.0, its API is based on the ECMA Script standard and can be as "complex" as JavaScript. I don't think you want to get into ActionScript 3.0 either because that my friend is about as close as you're going to get to a strongly-typed OO language. And, let's disucuss your usage of the word "complex". That's a pretty relative descriptor, don't you think? Whose "yardstick" are you using anyway? I wrote a job tracking system in Flash/ActionScript 2.0 that plotted jobs in two-dimensional conical space based on latitude and longitude using very "complex" trigonometry.
.NET developer? Java developer? And, "limited" how? You have quite an arsenal at your disposal in terms of executing server-side code when using Flash with Flash Remoting. I agree, most people won't be able or be willing to cough up the coin for Flash Remoting but with Flex 2.0 most of that functionality is built-in. I will say if you choose to use some of the data components in Flash (e.g. Web Services Connector) you are somewhat limited and have to do some extra work to get the desired results.
Right. The ubiquity of the Flash Player does lend itself well to providing a single solution to play/stream video without having to worry about the type of media player the user installed.
What Flash is not is an API, at least not in terms of developing complex applications. The first thing wrong with that is that Flash itself is very closed compared to open HTML. Getting a screen-reader to work with Flash is a Herculean effort that I'm pretty sure nobody has yet accomplished.
Wrong. Flash has had an API since ActionScript 1.0, albeit less robust than
The second thing is that you're basically limited to working with Flash alone as your presentation layer. Want to do AJAX-like things? Sure, but you have to do it Adobe's way or not at all.
Wrong, and really just a bad argument. You are most certainly not limited to using Flash exclusively as your presentation layer. You can easily establish communication between HTML and Flash with Adobe's Flash/JavaScript Integration Kit. Now, I will agree there aren't many ways to do this communication but the Flash/JavaScript Integration Kit is the de facto standard. My question is, how else would you suggest doing it? Fortran and smoke signals? At least there is a standard way of accomplishing said communication.
Want to do AJAX-like things? Sure, but you have to do it Adobe's way or not at all.
Wrong. If you want to use a AJAX in your javascript you are definitely able to do so with the Flash/JavaScript Integration Kit I mentioned above. If you mean you can't do asynchronous XML requests from Flash, then you're mistaken again. You have the ability to load XML either synchronously or asynchronously with the XML object in ActionScript 3.0 and 2.0 (but in 2.0 you can't do it explicitly).
Want to have server-side execution of certain things? OK, but you have to go through Flash's weird ActionScript connection points and are limited to what Adobe has programmed into it.
Flawed reasoning, and here we go again with the relative terms. "Weird"? For whom? A PHP developer? C++ developer?
Flash is great for certain things, but for complicated web applications, stick with HTML. It's already universal, you won't have compatibility issues if written well, and you can keep your animations embedded. Just keep them separate from the rest of the page. Nothing annoys me more than a
In that case, your problem is simply that you don't understand the nature of the Internet. The only way to not distribute something is to -- wait for it -- not distribute it!
In other words, even if you use Flash you're still giving away your movie because there's no way to stop the person at the other end from making a copy that they can keep. In fact, there's even a Firefox extension expressly designed for this purpose. If you think Flash will stop distribution, you're just fooling yourself.
Okay, you're talking about something completely different than I thought, apparently. In your previous post I thought you meant implementing a custom video player UI in Flash, that would run in a Flash player. But now you appear to be talking about implementing a modified version of Flash Player itself such that it would be a stand-alone application capable of running on platforms that Flash (as distributed by Macrom^WAdobe) doesn't support (which doesn't make any sense to me). Which is it?
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Flash should be used where one needs to use Flash, and HTML/JS/CSS (+XML+XSLT) likewise.
Flash behaves consistently cross-browser, cross/platform -- and most features cannot be disabled by the user. (compare that to a user being able to turn off JS, or Java -- something often mandated in a corporate environment.) It's either "all on" or "all off." (w/ a few minor exceptions, eg: local storage and camera/mic access.)
Flash has a large install base. It's arguably the most widely available platform for delivering media-rich "applications" over the web.
Flash does not rely on anywhere near the number of kludges and workarounds necessary to replicate similar features -- where possible -- in different browsers and browser *versions.* (Unlike various browser technologies, supported features are more stable across updates of the Flash Player.)
Not to sound like I work for MM/Adobe, but, here's what the Flash Player can do at *run time*: