Web Design in Halifax Nova Scotia, Canada

Show Navigation 

Not all Flash Designers are created equal

Posted On April 8th, 2008 Author Kyle Racki Filed Under Coding & Application Development,

It can be said that Flash is a niche area of web development. Generally speaking, “typical” web developers (and by typical, I mean developers who build websites using web scripting languages, like PHP or Ruby, build databases with MySQL, and mark-up the front-end with HTML, and style it with CSS) use Flash very little or not at all. The reason being that Flash is a closed piece of software. It requires a license to use, and once published to a website, the code is hidden away, never to be seen by anyone—including both developers and search engines. Also, Flash websites usually aren’t even recognized by browsers; you can’t right-click and open links in new windows, you can’t bookmark internal pages and the visually impaired can’t access the content.

On the other hand, most web designers use Flash. Or I should say they can use Flash, even if they primarily build website the “proper” way. Whether it’s for banner ads, intros, or simple page headings, you’re average web designer should be able to open up Flash and make some nice animations.

Between the two aforementioned groups, there is a massive gap, and if you are looking for a high-end Flash website or application, you need to find someone with a specialized skill-set. Some website managers, not understanding the difference, make the mistake of assuming that their designer who knows the basics can implement streamlined, advanced Flash interactivity. What makes it even more confusing is that these Flash “tweeners” (I’ll explain in a minute), often try to make it appear as thought they can do this more advanced stuff, and sometimes they can actually pull it off.

How does Flash work

So here’s the difference; if you’ve ever seen a Flash file being worked on, you’ll notice that it looks a lot like a design program, ala Photoshop, Illustrator, Fireworks. It’s got color pallettes, selection tools, and basic shapes. You’ll also notice that it has a large grid timeline at the top. When being used this way, Flash is an animation tool. What’s made Flash so popular since it’s inception is that it makes it very easy to pull off simple animations. For example in my workspace, if I draw a red circle on the “stage” (canvas), and then I create a “keyframe” (animation starting point), and then I create another keyframe on the five second mark on the timeline, and then drag the circle to another place on the stage, when I play my animation, my circle will move from point A to B in five seconds. This is called tweening. You only need to instruct Flash when the animation starts and when it ends, it will take care of the in-between frames for you.

However there is another large part of Flash development that is becoming more important as Adobe improves its product—programming. The language that controls Flash is called Actionscript. What began as a very simple non-language in the early days of Flash requiring basic “play”, “stop” instructions, has become since Actionscript 2.0, and especially 3.0, a very robust programming language. Actionscript now shares a similar structure (syntax) as advanced software languages. Because of that, there’s a lot more you can do with Flash than simple animations and page headers. If you’ve ever kept tabs on the FWA (Favorite Website Awards), you know what I mean. Most of these sites employ powerful development practices, such as “speaking” to languages outside of Flash, like PHP, XML or Javascript, pulling in user-generated content, or even what’s called socket programming, where the Flash file your viewing is showing what other users are doing on the site, like in Flash community games.

Know what you need

So the big question is this; what do you need to know when you want Flash work done? First, know exactly what you need. Is it a website, with different content sections, maybe a photogallery, or dynamic video integration. A “tweener” may be able to pull this off, but more often than not, he/she will not employ Actionscript, meaning the end product may look fine, but it’s not built in a flexible way. Let’s use the example of a photogallery. In the Flash interface, you can easily import, drag and drop photos, and even make them react to buttons. But what that means is a) The Flash file will take longer to load, because all of the photos are contained directly inside the Flash file b) Adding/removing photos is a chore because the designer has to go in and manually move all of the photos c) the gallery is harder to build on, in the event that you want to add categories, or perhaps change the way the photos transition.

An Actionscripter on the other hand will do things differently. He/she will use very limited drag and drop components, if any at all, and will instead write the whole gallery with code. That means that a) the gallery will load quickly because all of the photos will be contained outside of the Flash file, only being loaded when a user clicks on a particular button b) Adding/removing photos becomes very quick and easy because the gallery is dynamic - simply calling a new photo will automatically re-arrange the position of all the other photos c) building on the gallery becomes much easier. If you wanted to have a fade effect between transitions for example, the developer would add a simple function call in the right place, and it would automatically apply to all of the images.

A lot of large web companies utilize Flash teams of designers and developers—the designers only adding art-work and animations to Flash, and the developers make it function. Make sure that if you require anything beyond a simple banner, that you get an Actionscripter for the job. Get someone who either knows both design, animation and development (which is ideal, yet hard to find), or just get a developer and use your inhouse designer for the graphics, even if he just produces them in Illustrator or Photoshop. As with any project, understand what you need done exactly, and communicate the functional specs well. The more complex the application, the more expensive and time consuming it is to switch up the functionality of a Flash site on your Actionscript developer.

What to look for in a Flash developer

So here are some things to ask a prospective contractor when you need a medium to large scale Flash application developed:

  • How would you rate your Actionscript skills, beginner, medium, or advanced?
  • What level, 2.0 or 3.0? Both are acceptable, 3.0 is the way of the future, but many haven’t had a chance to learn it yet.
  • Can you pull in XML or database driven content with Actionscript?
  • Do you keep your swfs (compiled Flash files) lightweight, keeping in images, classes and media files outside and pulling them in at runtime?
  • Do you efficiently make us of object and functions to streamline your code?
  • Do you document and comment your code clearly, and is the source code available in your price?
  • Many AS developers have a specialty, for example writing dynamic animation algorithms, or perhaps video/sound integration—do you have a specialty?

Questions like this should give you a good indication of whether your prospective contractor is up to the task. Of course, you’d ask other questions too like timing and cost. Keep in mind that advanced Actionscripters tend to be more expensive than other types of web programmers, but you’ll find that the cost is worth paying to someone who can write advanced code and solve challenging Flash problems. Also, the high cost is frankly because there aren’t that many Flash developers out there, and it is a niche, highly lucrative market.

This post hopefully helped you understand Flash a little better and the people who build Flash applications. If you’re in need, talk to someone who has access to a pool of talented Flash developers, just don’t try googling them—most of their sites are built in Flash.

View Kyle Racki's profile on LinkedIn

What do you think?

comments powered by Disqus