Search Engines still cant index Flash sites with dynamic content

There are two types of Web applications: those that care about their discoverability and those that don “t.

If you are developing a Web application in Flash or Flex for, say, financial advisers (FA) of a brokerage house or salesmen of an insurance company, discoverability is not a concern because FA “s or salesmen of your firm will be told, “Go to so-and-so URL and use so-and-so application rdquo;. We can happily say that both FA “s and salesmen have discover their RIA.

If you are developing a consumer-oriented RIA , you want random people to discover their pizzeria, department store, medical office or a car dealership. Why a doctor needs a Web site? Mainly to be discovered by people from the neighborhood if someone will google for a family physician. You can say that some doctors also use Web site to post some useful articles or medical form for their existing customers. True. But still, the main reason for investing into development of a Web site is to increase visibility.

Recently, I wrote a blog about iPhone and Flash , and half of this blog was about excellent Google indexing of the plain HTML information about services of our company.

Today, I “ve read an article by Armando Roggio titled “Best practices for Search-Optimized Flash Development rdquo; . This article was supposed to give you a feeling that Google really knows how to peek inside your swf file. The author states, “Need proof? Run this search on Google right now, filetype:swf + “comic books. rdquo; rdquo;

Sure enough, if you “ll do it, the search will return several .swf files that have the words “comic books rdquo; hard-coded inside. But most of the RIA bring the content dynamically and rightly so. A well designed RIA arrives to the client with the code that makes the screen pretty. The information about the upcoming sale of your local Ford dealer or recall of millions Toyota cars is not hardcoded into the Web site, but is dynamically downloaded from the server. This creates a nice separation of responsibilities ndash; people who create the content of the site don “t have to modify the Web site every time they want to announce a weekend sale at Ford dealerships.

Will Google index and find dynamically loaded content? I don “t think so.

Mr. Roggio quotes in his article executives of Adobe and Google stating how they collaborate and work hard on improving the situation. I “m sure they do, but so far I don “t see the results.

That article also states the following:

“In fact on June 18, 2009, Google announced that it could load external Flash resources, including text, HTML, XML, additional SWFs, and more. This feature means that you can create a Flash application that draws its content from a structured and external XML document. rdquo; And a little later the author states, “As of this past summer, Google can and does retrieve this external files. rdquo;

I love Google and use it a hundred times a day, but this announcement (if it really was made by Google) is simply not true, and I can easily prove it to you.

Once again, I “ll direct you to the Flash based Web site of our company . Now I “ll reveal some insider “s information. Our Web site is written in ActionScript 3, but the content of every view you see there comes from external XML files.

For example, if I decide to change the information on the Home view, there is no need to recompile the Web site. I can just use Notepad, TextEdit, Vi, or any other available plain text editor to modify the content of the home.xml file that is being downloded as soon as the compiled SWF file arrives to the Web browser.

Let “s an experiment. The Home view of our Web site starts with the following long statement:

“Do you want your RIA application to be done right the first time? We ‘ve built lots of great RIA applications for our clients. Our teams of Flex developers are geographically located in the USA and Eastern Europe. ”

Now, copy/paste this long text fragment (with or without double quotes) to Google “s search field. Hit Search. Do you see Farata Systems anywhere in the vicinities? I don “t.

This Web site was deployed about three years ago, and this poor little text we “ve been using in this experiments hasn “t been changed for a couple of years either waiting for any search engine to notice and index it.

You may ask, “Did you use deep linking available in Flex to provide unique URL “s for different views of the in your Web site helping search engines to index the content? rdquo; No I didn “t. Our Web site was created in ActionScript long time ago to be as light as possible.

But I know a firm with a complex commercial Web site written in Flex that did use deep linking feature, but it didn “t help. They are considering re-developing the Web site in HTML/JavaScript. Unfortunately, this won “t help, unless they will put the entire content of the Web site inside HTML (but this is not possible and stupid). Using AJAX won “t make them happy if they decide to keep the content dynamically loaded.

If you “ve developed a large Web application with deep linking Flex feature and have good results in terms of Web analytics, I “d love to hear from you.

Now the happy end.

I “ll continue recommending Flex and Flash as the platform of choice for developing of the enterprise RIA. Don “t pay attention to those who predict that HTML5 will kill Flash. It won “t happen for another 10 years, and we need to develop and deploy our RIA today. The fact that someone can afford to pay H.264 patent licensing royalties and stream the video has very little to do with a robust and well written platform for enterprise RIA such as Flash.

But if your cousin Vinnie asks you to develop a Web site for his new Italian restaurant, use Flash very carefully – mainly for embedding interactive widgets here and there.


2 thoughts on “Search Engines still cant index Flash sites with dynamic content

  1. Guys, did you use Deep Linking with Flex4 ? Can you please share your experience? Are 3rd party libraries like SWFAddress and SWFObject worth consideration ? I was asked to add deep linking to our massive Flex4+Struts app, maybe even allow to move/switch between Flex & Struts (letting them pass parameters to each other). TIA, Oleg.

    1. I was using deep linking 5 years ago or so – worked fine. But it simply adds a suffix to identify a view inside Flex app – this is not a good tool for passing params between Flex and Stuts-generated UI. You can exchange the data between Flex and JavaScript via the class ExternalInterface – it’s a simple solution IMO if you really have to exchange data on the client.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s