Blog > All Flash = Bad
- Flash isn't indexed by search engines. As Patrick points out, Google (and other search engines) don't index the contents of Flash movies. Making your site inside of Flash is like saying that search engine traffic isn't important to you - and I've almost never encountered a site for which that is true (it's definitely not for real estate sites!) There are ways around this but most of them are frowned on and one - presenting a so-called 'doorway' page that delivers an alternate text version of your site when the GoogleBot stops by to index - got BMW and Ricoh's German websites delisted from Google (which is a lot like disappearing from the web). It should be possible to use JavaScript (or a similar technology) to detect whether the Flash plugin is installed and to redirect to an HTML-based version of the site if it isn't, and most search engine bots probably don't report having Flash installed, and they probably won't penalize you for redirecting for all non-Flash visitors rather than just them, but then you're just paying more to build a Flash version and the HTML version you should have built in the first place :).
- Flash breaks the Back button. When you're inside of a Flash movie, the browser still thinks you're on the first page that loaded (i.e.: the one containing the Flash movie and not a frame inside the movie) and so Back will take you to the page before the one you're on (i.e.: not the one with the Flash movie). Back is the second most often used browser control (after links) and jumping out of your movie will annoy your visitors every time they try to use it. It is possible to build Flash movies that use the Back button (see Flash Magazine's Making the back button work for Flash), but it's rarely done (and even less rarely done properly).
- Flash doesn't print. When site visitors print the page containing your Flash movie, they will almost always see an empty rectangle where your beautifully styled movie used to sit. It is possible to make Flash movies that print (see Peach Pit Press' Flash MX Printing sample chapter from Certified Macromedia Flash MX Developer Study Guide), but it's a time consuming extra step that most designers don't consider. I wish it were the case that people never printed off the web, but we know lots of people who do, especially when considering buying a home and wanting the ability to print off different models to show their friends and family.
- Flash movies have a single entry point. You may have the best looking, most original, all-singing, all-dancing Flash production in the history of the Interweb, but people can only enter from the very beginning. There's no way to bookmark a page inside of your website (e.g.: I can't return directly to the unit I'm thinking of buying), and there's no way for me to send a link to a friend (e.g.: Hey honey! I found our perfect new condo, but you're going to have to navigate through this really complicated Flash movie to find it). For the record, there are some techniques for enabling bookmarking inside of Flash, but they seem to be PC only (e.g.: see Bookmarks in Flash!, although half the comments are spam).
Comments
Dugg - http://digg.com/design/All_Flash_based_Web_Design_is_Bad
http://www.someurl.com/index.jsp?entry=aboutus(or, if you use mod_rewrite - and you should! - you can just do /aboutus and rewrite to the above)
Then pass the entry point into the Flash movie as a parameter on the embed tag:
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/"
WIDTH="250" HEIGHT="300" id="flaMovie">
PARAM NAME=movie VALUE="flaMovie.swf?entry=<%=entry%>">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
<EMBED src="flaMovie.swf?entry=<%=entry%>"
quality=high bgcolor=#FFFFFF WIDTH="250" HEIGHT="250" NAME="flaMovie"
TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">
</EMBED>
</OBJECT>
(for non-Java speakers, <%=entry%> just outputs the contents of the Java variable entry)And then, finally, have your Flash movie pick up the variable and jump to the right frame. If you're looking for more info, check out Flash: Passing Varaibles into Flash from HTML via QueryString.
But, you can't have people bookmark those URLs easily because once they land on the Flash movie at http://www.someurl.com/index.jsp?entry=aboutus, the URL never changes again. Any 'page' within the Flash movie that they bookmark will take them back to the About Us page. Half a solution is, I suppose, better than no solution, but neither is better than an HTML website.
Good LORD that takes forever to load (I'm on cable). I didn't stick around long enough to see if the bottles danced, or something more spetacular to account for the long wait and the use of Flash.
We're not against using Flash at all - we quite like it for doing things like animations and playing video. The Bacardi Breezer homepage includes two synchronized animations in separate Flash movies, surrounded by pure HTML.
I'm not sure why the site would be slow for you as it's hosted at a great facility and has plenty of bandwidth. Maybe give it another try?
I wholeheartedly agree, also flash can cause problems for smaller servers that hold a number of uses:
- Example: A school server
The flash animations and other high bandwidth sites slow down the server prehaps causing it to crash. I may not be the tech expert number 1 here, BUT, I know of examples where this has indeed happened.
I don't want it to seem like I'm harping on flash, because there are TONS of other factors. But it contributes to it, while a HTML site doesn't slow down the particular server I'm talking about as much.
I may just be talking out of my but, and correct me if im wrong, but those are my 2 cents.
Note: if this is 100% wrong and off topic, im sorry and please correct me :)
Note: Jay, Flash does have a ton of cool functions, but the drawbacks sometimes over rule these.
Adobe/Macromedia released a while ago a tool for search engines to be able to translate swf files into html for crawling purposes.
That aside, however, if a company is willing to pay $200k - $1m+ for an immersive visual experience, I'm sure they can sacrifice a little more for a very basic html equivalent. I'd be surprised if less than 70% of the mere fraction that will ever see the html equivalent will be search crawlers anyway.
2) This is only true if the developer doesn't code to use the back button ;)
Flash can easily manage a history with your browser using javascript calls, and the Flex framework even has this natively integrated for many of its components.
3) Flash does methods you can call to send data to a printer. Sure you can't just use your browser to print for you, but so? This approach is even better because developers have complete control over how the data will look once it's passed to the printer.
4) Just like #2, this is only true if the developer doesn't code for it. I've witnessed many implementations that interpret the url in the browser for deep-linking, and I believe newer versions of Flex have built-in managers for handling this as well, although I haven't looked into it myself yet.
Please, get your facts straight :)
Thanks for the reply! Like any discussion which borders on religious beliefs, I'm sure your perspective our facts makes them look a little crooked :)
A few thoughts:
1) Google does index some of the content inside of a .swf file, particularly the text. But since the Flash movie is loaded on a single HTML page (generally speaking), the link in Google will be to the index page of your site and not directly to the content that was indexed. Instead of a catalog site, for example, where the landing page for a product gets indexed by Google and becomes the link into your site, visitors will follow the link and find themselves at the beginning of the Flash movie.
2) $200k - $1m describes a very, very small subset of the Flash projects which get built. At that sort of price range, I would expect that all of the issues outlined in my post are dealt with by the developers. The vase majority of Flash sites are built on budgets more in the $10k or less range, and at that price virtually none of these do.
3) As I mentioned in the post, Flash does support printing. As I also said, it's a time consuming extra step and it requires the visitors to your site to know that they can't just print your webpage (the way they would with an HTML page), but rather have to find the Print button within the Flash movie. I agree that it gives designers more control over the print layout vs. the screen layout, but that's why we define a Print CSS file for pages on our clients' sites which need to be printed. Visitors to the site can just merrily print away, and their browser will automatically use the Print CSS to layout the page.
4) I completely agree - Flash can support 'deep linking' into a movie. The problem is more that the URL never changes once you're inside the movie, so if you landed on a sub-section, browsed around for a bit and found some great content you'd like to share with your friend Julie, you'd be sending her the deep-link URL to the first page you were on rather than to the new content. With an HTML site, the URL changes as you browse around and your bookmarks or shared links will accurately point to the location that you wanted them to.
However, $200k for a Flash site does not represent as small of a subset as you might think. I've previously worked with consulting firms that specialize in Flex/Flash technologies and only accept projects that pay at least that much, and even then they still can't keep up with the demand for their services. If anything, I'd attribute the lack of presence of such sites to the small number of Flash/Flex developers that actually exist. The advancements of these technologies are relatively new for the web industry, but it offers much more of what name-brand marketing departments want, and I expect trends to continue in this direction in the future.
Also for deep linking....integration into Flash can easily work both ways. Nobody says the URL can't change when you're inside the movie.
For example, check out this site:
http://www.schematic.com/
Not only can you deep link to it, and the URL updates as you navigate, but if you manually enter a sub-link of the site into the URL, it seamlessly transitions to it!
As I said before, you don't see these things often because developers usually don't code for it, but that doesn't mean it has to work that way. ;)
Post a New Comment
Please note that comments are moderated to prevent abuse of the comment system and will only appear after they have been approved by the author of this post. Use the "View Source" mode to edit HTML directly if you're into that kind of thing. We might not approve posts that are offensive or really off-topic, and we will definitely delete spam (and place nasty, nasty curses on the spammers).

