100% Pure Flash – What Can Flash Achieve Alone?

Share this article

With all the hype around Flash’s ability to communicate with servers to build “Rich Internet Applications”, many people seem to have forgotten some of Flash’s native abilities. Sadly, new developers are unable to think outside the box as they try to figure out how to perform unctions using a technology like ASP, when Flash can handle the problem all by itself. Knowing what Flash can do by itself, and where Flash will need help from a server, is imperative for planning and developing projects.

Once Upon a Time…

Flash started out simply as a way to deliver vector animation over the Internet. Many would-be competitors came and went, but Flash clearly stayed on top as animation platform of choice for most developers and designers. No one was capable of predicting what we’d be doing with Flash today. As new versions were released, new features emerged that opened up whole new worlds for developers. Audio, ActionScript, streaming video, and remoting have made today’s Flash Player the most diverse platform available on the Internet.

Enter: Rich Internet Applications

The latest selling point is the ability to build applications in Flash. Macromedia wants the world to know that Flash is no longer just a simple marketing tool. This baby can now save data, calculate complex equations, and stream up-to-date information without the need for users to refresh your browser.

Data can now be saved and retrieved from remote databases. This has opened possibly the largest source of revenue for Flash development to date, as companies are constantly looking for new ways to build dynamic applications on top of their databases. To top it all off, developers can now build and reuse components to dramatically reduce development time.

With all these new features, developers can build what Macromedia calls “Rich Internet Applications”. Basically, this means that developers can build in Flash useful programs that can be applied to practical tasks, and part of this description involves using Flash with a server side language like Cold Fusion MX. Macromedia has provided several samples of RIAs in action, including a mortgage calculator, an address book, and the ever popular Pet Market Blueprint Application. Although each of these samples are very diverse in nature, all of them have one thing in common: a server is required.

In Macromedia’s push to sell more copies of Cold Fusion MX and advertise Flash’s new remoting capabilities, Flash’s native features have been neglected. In these samples, tasks that could have been handled within Flash are instead achieved using Cold Fusion MX, which makes the task much more complicated. If you, as a developer, wanted to recreate the power of Flash in any of these samples, you’d need a server, as well as whatever language was involved.

One of the many attractive features of Flash is the ability to create a self contained movie that requires no additional tools – not a server, nor JavaScript, or even a browser. That means a Flash movie can be played from within a browser, or on a user’s desktop. Where are these application samples on the Macromedia site? Well, using Flash with the server ties the movie to that server permanently, so it should only be done when absolutely necessary.

What Flash can Acheive by Iitself

The list of items that Flash can handle by itself is large. The more obvious capabilities include animation, audio, key framing, loading and streaming MP3 and JPEG files, and tweening (shape and motion).

But, among the capabilities many developers erroneously think necessitate the use of a server, are:

1. Calculations

There is not a single equation out there that Flash cannot handle. Using ActionScript, Flash can calculate everything from simple addition equations, all the way through to complex calculus equations that you might not have used since High School.

2. Client-Side Data Storage

Instead of making life complicated with cookies and JavaScript, Flash’s Shared Object has the ability to save variables to a user’s computer. That means a Flash movie can remember things like preferences, usernames, and passwords.

3. Client-Side Validation

When users enter data into Flash, Flash can handle all validation, including email addresses, required fields, phone numbers, and more. Instead of the typical browser refresh telling the server to check a database, find invalid data, and then use the browser to tell a user that he or she did something wrong, Flash can determine a problem immediately.

Where Flash Needs Help

With all the magic Flash can perform, it can’t do everything. There are two incidences where help from a server is needed:

1. Remote Storage

On any occasion when Flash needs to connect to a remote database in order to save or retrieve information, a server must be involved. Although the Shared Object can save information locally, this data can only be accessed on the user’s local computer.

2. Multi-Client Communication

In the event that one user needs to communicate to another user via Flash, a server must be involved. Whether it is video, audio, or text, Flash cannot act as a server to pass the communication back and forth. All of these multi-client communication features are handled in Macromedia’s Flash Comm Server.

Further Reading

There you have it — a complete overview of what Flash can and can’t do on its own. Now that you know the difference, remember these aspects when planning your next Flash project. It will save you a lot of unnecessary time and money.

If you’re after more information on this technology, try:

ActionScript.com (Flash news)

http://www.actionscript.com/

The History of Flash

http://www.flashmagazine.com/html/413.htm

Scott ManningScott Manning
View Author

Scott started a Web development shop three years ago after discovering his propensity for usability-oriented design. Sticking with the straightforward name Scottmanning.com, his vision has resulted in the company becoming an indispensable part of the international Flash community.

Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week