There seems to have been a lot of Flash bashing, both within the community and without, in the last few weeks. In terms of the external criticism, I refrained from a knee jerk reaction: “Flash sucks? Well, YOU suck!” and actually took a look for myself at the state of Flash. Of course, there are some on the outside who would say that there is no excuse for Flash anywhere ever. They refuse to even install the Flash player plugin on their machine. On the other end of the spectrum are those who think that Flash is the be-all and end-all. If it can’t be done in Flash, it isn’t worth doing.
I like to think I fall somewhere in the middle. OK, probably somewhat towards the Flash fanatic side, but not too far. Flash is not the right answer for every problem. There is definitely the phenomenon of “when all you have is a hammer, everything starts looking like a nail” at work. So what IS Flash good for? Well, first, let’s look at what you CAN do with it, and then see how suitable it is for those purposes.
Yes, you CAN make a full web site in Flash. Should you? I don’t want to say resoundingly NO, but if you do so I think you should have a damn good reason for doing so. And when I say “Flash” I mean Flash, Flex, whatever. A SWF-based site. First of all, there are sites that should never be done in Flash. This category includes most, almost all, sites.
My reasoning for this goes back to a local Macromedia event in Boston way back in 2004. Mike Downey, who was kind of new on the scene, was in town talking about Flash. This was when MX 2004 was coming in and the word “Rich” was starting to mingle with the word “Application” and we were about to get RIAs rammed down our throats. 🙂 But Mike was talking about richness and experience. That talk really stuck with me. Flash is awesome for creating experiences. The possible richness of it – the media, the motion, the interactivity – draw you in and make you part of what’s going on.
That’s awesome, but not always appropriate. For the vast, vast majority of sites, the user is going there to get some information. He or she wants to click a link or type a URL, have the site show up fast, see the directions, the business hours, what’s on the menu and how much it costs, etc. and get out. He doesn’t WANT an EXPERIENCE. he wants data. Fast. A preloader stands right between the user and the data he is there to get. So does an intro. So does a page transition if it takes longer than just changing pages. Animation, music, and sound effects are mostly distractions to the information the user is there to get. That’s not to say that a purely informational site has to be ugly or Jakob-Neilson-bland. I think decent aesthetics make a site easier to use. But most of that rich experience stuff people use Flash to create is misused if used for most web sites.
So are there any web sites where Flash IS a good choice? Yes, I think so. Anything where the site is about an experience more than information, Flash gives you great tools to create that experience. Artists’ web sites (musical, visual, or otherwise) are great candidates. If you’re going to check out a band’s or a singer’s web site, there’s a good chance you are looking to see what that artist’s music is like – what the experience will be like. Flash is one of the best ways to incorporate music into a site (custom aesthetic controls, rather than generic, fugly Quicktime embedded ones), and also allows you all kinds of visuals that can go along with the music to create an atmosphere that really advertises that artist. Still, you have to ask if it makes sense to do a full Flash site, or just do certain parts in Flash.
A photographer’s or other visual artist’s portfolio site is also a good candidate for a well done Flash site too. I’m not saying that every artist should do their site in Flash, or that there are no other alternatives. Just saying that these are the kinds of sites where it can make sense to do a Flash web site.
Now, I’m walking a fine line here, because the company I work for, Infrared5, has a full Flash web site. 🙂 But I think there is some justification there too. Basically, we are a company that does very visual Flash stuff. The site really is a portfolio piece of the work that we have done and the kind of work we can do, more than somewhere someone would go to get information. However, if I were going to change it, I would probably have an initial simple HTML splash page with the company name, info, address, phone number, etc. and a button to enter the full site. That way, if someone wanted just that info, we’d be putting nothing in their way.
This brings up another category – pure advertisement sites. Movie sites, TV show sites, new car brand sites. Sadly, most of these are done pretty poorly, but all are designed to deliver an experience that makes you want to buy car x, or watch such and such a show. From my experience, the problem with most of these sites is they are designed by ad agencies by the same people who are doing the print and media campaigns, and don’t know that web interaction design is something different.
OK, other than web sites, what is Flash good for.
Of course, this is the killer. It’s almost safe to say that video on the web IS Flash. Love it or hate it, you can’t deny that Flash video has pwned the web. I know some of you are raising your hand and dying to shout out Silverlight or tell me about the zillions of Quicktime files floating around the net. I will freely admit that Silverlight video is awesome. The quality is great. Various sports franchises and broadcasting networks keep flirting with it, going back and forth between SL and Flash. But say you want to deliver web video. What are you going to do? If you are big enough that Microsoft thinks it will look good to have you as a Silverlight Video customer, they’ll probably build your whole solution for you. Note, that Adobe would probably do the same thing. But if you’re not that big, what are you going to do? There are no solutions for Silverlight (yet) like there are for Flash. Just want to throw up a bunch of video for cheap? Youtube and Vimeo. Make an account, upload your content, you have decent quality video available for the world in minutes. Want to get more serious? Brightcove offers a full service – content management, syndication, scheduling, georestriction, advertisement, etc. I’m sure they have competitors too. As far as I know, if you go Silverlight, you’re building your own solution, or paying someone to build it for you.
Of course, this will change. Silverlight is new in the market and growing and maturing. It will get there. As a matter of fact, back when Silverlight was first coming out, Brightcove announced itself as a Microsoft partner with the intent to bring Silverlight solutions on board. Not sure what happened with that, but I have no doubt it will happen eventually.
Then there’s been a lot of buzz about HTML 5 and video. Can’t say I know much about it. At any rate, it’s something to keep an eye on, but not any kind of viable option in the marketplace at the moment.
OK, this post is getting longer than I wanted, but I have to say that Flash pretty much rules the web in terms of games too. If you want to make a game and put it on the web, chances are you are going to do that game in Flash. End of story really. yes, there’s Unity, I know. We’ll see if it gains ground. Developers are excited about it right now, but I don’t see any hugely popular Unity based games out there yet. (Not saying there aren’t any, just haven’t heard.)
Another huge potential here. The visual aspect of Flash along with its interaction and data handling capabilities make it ideal for data visualization and learning activities. For data vis, look no further than gapminder: http://graphs.gapminder.org/world/
A few years back I was working for an educational software company and did some really great learning activities for web-based learning tools. At the time, doing it in anything other than Flash really would have been unthinkable.
On the artistic front, I look to my own Art From Code web site (ctually, there’s no Flash there, but it’s all created from Flash), or people like Erik Natzke, Dr. Woohoo, Jared Tarbell, etc. Here, Flash is just one tool among many for creating algorithmic art.
Rich Internet Applications
This is a tough one. My gut feeling tells me that there must be some killer examples of these, but I can’t think of any Flash based RIAs that I use on a regular basis. My feeling is that most RIAs are actually made for companies and used in house. I know many of the RIAs my company has worked on fall into this category. The one Flash App I do use regularly is my desktop Twitter client, which actually falls into the next category.
Here we are talking AIR. Again, the only AIR app I use on a daily basis is TweetDeck. Before that, Twhirl. Somehow Twitter emerged about the same time AIR did and the two got married and had a few dozen AIR-based Twitter client babies. Other than that (and my own KClipper app I use now and then for my Kindle) though, I don’t think there are any other AIR apps I use. I think this is one area that’s in danger of falling into the “hammer” analogy mentioned above. Developer knows Flash. Developer wants to make a desktop app. Developer makes desktop app with Flash. Quick and easy solution? Yes. Best solution? …maybe. In some ways I feel that Adobe has encouraged the hammer philosophy by making desktop apps another nail you can hit with the Flash hammer. However, the one huge selling point of AIR is its cross platform capability. I don’t know of any other app solution that currently delivers on the “write once, run anywhere” promise as successfully as AIR does today.
OK, I’m done, almost. I guess my a main point is that when most people go off the handle about how much Flash sucks, they almost always seem to be referring to Flash web sites. I tend to agree with them there. But that doesn’t mean Flash is dead or has no use.
OK, enough, my fingers are tired. Looking forward to comments.