Until the availability of Javascript libraries such as jQuery and MooTools adding animation and interactive features that don’t require reloading a web page were out of reach for many web designers/developers unless they used Flash.

This was largely due to Javascript implementations not being consistent in major browsers. Without using a Javascript library you need extensive knowledge about the inconsistencies between the browsers and extensive knowledge about Javascript in order to work around them.

jQuery and MooTools offer a library of routines that are cross browser compatible which greatly reduces the learning curve. These libraries also offer functions to handle many routine tasks making Javascript programming faster and easier to learn.

The Pros & Cons of using Flash vs Javascript:

Flash Pros

Flash Cons

Extensive features

3D Capabilities

Consistent appearance in supported browsers

Supports vector artwork

Built-in UI & other features

Many free and Commercial tools available

More font options

Not compatible with all browsers including iPhone, iPad and cell phones

Moderate learning curve to use

Cost of purchasing Flash software

Possible problems with users that have older versions of the Flash Player

Potentially large file size

Possible security issues with Flash Player

Tracking stats for Flash elements is limited

Javascript Pros

Javascript Cons

Small size

Using jQuery or other libraries reduces the learning curve

Hundreds of free professional quality programs

Can add interactivity to web page elements and tags

Skinnable Form Components UI

Compatible with more browsers than Flash including iPhone, cell phones, PS3, PSP

While Flash still has a few areas that make it the better choice there are many features that are easily handled by Javascript. If you’re just getting started take a look at jQuery, it simplifies the process of using Javascript and can greatly enhance a web site.

Comments

In my experience, jQuery’s impressive and reliable (incl. sophisticated animations) with proper implementation. It’s also a snap to degrade without JS (which to be clear is a fully-fledged language and object-oriented- ECMAScript Harmony would establish classes modules etc.)

I’m surprised SVG had no mention. It has some serious advantages over Flash – extensible, interoperable, XML, DHTML, CSS…

People tend to forget in this who flash/html5 argument that one of the MAJOR uses for flash is web applications and games. I shudder at the thought of trying to build games using weakly typed, outdated JavaScript spaghetti code. When I can actually start writing ‘proper’ object oriented applications using JavaScript (probably with the next iteration of the language) then we can talk about it becoming a practical alternative to flash. Steve Jobs has done a lot of harm spreading misinformation about the Flash platform, as well as refusing to get with the rest of the world and allow it on his mobile devices. The general statement above about not being compatible with ‘cell phones’ is misleading as well. Android based devices support flash, as well as MANY non-apple phones. Cheap phones tend to have issues with any type of complex plugins or even scripting languages for that matter.

I am in pursuit of a software capable enough to perform 3d animations. It will be used on a touch screen surface. I am not a software guy, but I am seeking for some one to perform that kind of programming job. I would like to know the best software to use before I start looking for programmer. As far as I know, Flash is the best option. What do you guys think?

Hey Guys…iam learning web design and application development but there are so many options out there to go with…my question is which is the best for web development and RIA…and is flash future somehow looks bleak?Am currently using HTML5,CSS3 and JAVASCRIPT

As far as I’m concerned flash is essentially dead. Adobe has announced they will not make anymore updates to the Android flash player which means very few users will have a device even capable of viewing flash content. A better investment might be learning mobile development with jQuery Mobile and Phonegap. With that skill you’ll be able to not only produce for the web, but also mobile devices. For animation take a look at adobe’s edge software which produces flash style animations using javascript: http://www.adobe.com/products/edge.html