Web DevCenter
oreilly.comSafari Books Online.Conferences.
MySQL Conference and Expo April 14-17, 2008, Santa Clara, CA

Sponsored Developer Resources

Web Columns
Adobe GoLive
Essential JavaScript

Web Topics
All Articles
Scripting Languages

Atom 1.0 Feed RSS 1.0 Feed RSS 2.0 Feed

Learning Lab

A Pet Market with Flash
Pages: 1, 2

Why Pet Market Works

The Flash-based Pet Market has a live, engaging interface with an appropriate level of animation effects that aren't gratuitous or burdened with "visual noise". Rather, they guide the user through transitions from one "page" or task to another. It is focused and utilitarian, yet attractive and inviting. The credit for much of the design goes to the award-winning design firm Popular Front, which designed Pet Market with Macromedia.

The J2EE and .NET pet-store interfaces are more pedestrian in nature. To be fair, they weren't designed to highlight user interface design, yet a comparison is appropriate. The JSP and ASP technologies are really rooted in the old WIMP paradigm. While they are functional, are they as likely to attract and keep users?

Fortunately for designers of high-traffic Web sites and enterprise applications, a Flash front end can be used with J2EE, .NET, or Web service back ends, too. Macromedia has done a good job of integrating Flash with ColdFusion, but they haven't forgotten shops that are committed to J2EE or .NET.

Picking the Right Tools for the Job

Consider the Importance of a Rich UI -- An early myth of the Web was the belief that Web sites are a cheap way to do business. Then it was discovered that the hard and expensive part is attracting and keeping site visitors. Many otherwise useful Web sites failed to keep their visitors because of poor usability or simple boredom. A lively, vibrant user interface encourages users to come back.

Developers of "enterprise" applications need to understand this point, too. The same principles of successful Web interfaces can make enterprise applications more productive and engaging for their users. We've all seen enterprise applications where the interface was an afterthought. How many of us use those applications reluctantly? Are we as productive as we could be when we use them?

A major problem of Web-based interfaces is the inconsistent behavior of DHTML and Java across platforms, browser versions, and so on. Because Flash behaves consistently and predictably across platforms, your development and testing costs may be significantly reduced, despite the cost of the authoring tools and the learning curve.

Using a Flash user interface can help overcome many of these challenges.

Flash Developer Tools

As I mentioned before, SWF applications can be constructed with third-party tools, some of which are open source (see SWF Is Not Flash), but the premier authoring tool is Macromedia's own.

Designers get an excellent authoring environment that also minimizes the "pocket protector" expertise required to build interactive applications. For example, ActionScript, the scripting language for Flash, is easier for designers to use than many alternatives.

Software developers may misinterpret ActionScript as too "lightweight" for "real" application development, but it's easy to be misled when you're accustomed to working with difficult and obscure tools.

Flash doesn't eliminate all problems. No tool can magically enable a bad designer (or a good software developer!) to produce elegant, yet functional interfaces. There will always be a need for experienced designers who possess good esthetic sensibilities and a solid grounding in usability. They need to know how to design for the intended audience and they need to keep restraints on the visual pizzazz. Of course, good designers are needed no matter what user interface toolkit you use.

Finally, any powerful tool presents a learning barrier. Macromedia has lowered the bar about as far as it can reasonably go. However, if you already know DHTML, JSP, or ASP, you'll have to decide if you should go with what you already know, limitations and all, or learn a potentially "better way". Of course, Flash collaborates well with these technologies, so you can mix and match as appropriate.

What About ColdFusion?

While I'm focusing primarily on the enhanced usability enabled by Flash in this article, it's worth mentioning that enterprise-class J2EE and .NET application servers are overkill for some applications. A lighter-weight and mature application framework like ColdFusion is appropriate for many mid-size needs.

ColdFusion is well integrated with Flash and ActionScript. It has a rich tag library to integrate the front and back ends of your application and to simplify development. ColdFusion was one of the first environments to extend basic HTML to simplify the construction of interactive Web pages that work with back-end systems. Its example was followed by ASP and JSP. ColdFusion is a mature, full-featured, and well-regarded product that can complement or replace J2EE and .NET. However, it may be harder to find experts in ColdFusion since J2EE and .NET are more in vogue.

Fortunately, Macromedia's strategy of integrating J2EE and .NET with ColdFusion gives the developer the option of "upgrading" applications to a top-tier J2EE server or integrating the applications as Web services with .NET applications, thereby protecting the investment.



Pet Market Application Development Center (Macromedia)
Cat Fight in a Pet Store: J2EE vs. .NET
SWF Is Not Flash (and Other Vectored Thoughts)
Why Flash is Significant
Macromedia's Home Page for ColdFusion
Macromedia's Home Page for Flash
Macromedia White Paper on Rich Internet Applications

You could dismiss Pet Market as a "hey, don't forget about me" application, but it reminds us of one of the very best lessons of the Internet era, the value of a visually rich, yet functional user interface.

Flash is an excellent tool for building these interfaces. It is now ubiquitous and quite rich in its support for sophisticated client-server applications, whether you use Macromedia's ColdFusion as the back end, or J2EE, .NET, or another Web service platform.

Developers of web sites and enterprise applications should consider crafting their user interfaces with Flash.

Dean Wampler is a Software Engineer with DRW Trading. He was formerly a Consultant, Trainer, and Mentor with Object Mentor, Inc.

Return to the Web Development DevCenter.