Friday, September 25, 2009

A Note on Flash SEO

Once upon a time there was a myth that search engines can’t reach into Flash. Then there emerged an announcement that Google can crawl and index SWF files, but not files loaded by SWFs (XML, HTML, plain text, or another SWF file). Then we saw a post that stated this particular issue was resolved. Does it make SWF fit the web as it is now as perfectly as good old HTML? The answer is still no. SWF files have become somewhat less opaque, but are still far from becoming fully transparent. Noteworthy is also the fact that SWF indexing is a valid discussion topic pretty much exclusively with Google.

The now aged Big Crawling Breakthrough was powered by Adobe’s providing Google with a headless Flash player dubbed Ichabod (oh the headless reference) that enabled Googlebot to make its way through apps in SWF in a virtual user-like capacity, thus dragging all the text (out of static and dynamic text fields) to the light and recognizing links as it came along. As it turned out, the problem is what comes up is plain text matter, with no discriminations made as to whether given fragments belong together and their semantic structure. Therefore, what the search engine gets is not much to work with. “Raw” SWFs do not even have their XMP meta titles and descriptions indexed – yet, hopefully.

Ichabod might have improved visibility. The lay of the land in terms of searchability, however, remained pretty much intact. Progressive enhancement will still remain the only well-argued response to that. Putting basic markup and content as the universally accessible foundation and progressively weaving more advanced elements in is not even as much a good SEO decision as it is a universally sensible usability practice, which importantly enough includes browser experience (good SEO is primarily about non-disruptive experience after all).

Speaking of making SWF browser experience a better one, there are a couple of points of note here. First off, embedding, which reads “SWFObject” – around since 2006, and surprisingly enough, often disregarded. Reliance on the dynamic publishing method is by far the best option that allows stipulating appropriate fallback content, structured and marked up. Second, deep linking – the main thing the web is about. Essentially this is a way to provide an app with multiple entry points so that users (and SEs for that matter) would not have to navigate all the way to the desired part. It is a named anchor SWF solution – you establish a relationship between an app state and a URL that does not cause a reload of the whole app. This is achievable via the SWFAddress or URL Kit libraries, or the BrowserManager class that works as a proxy between the app and the browser.

Where to go (some shoot-from-the-hip suggestions):
http://www.adobe.com/devnet/flashplayer/articles/alternative_content.html
http://www.adobe.com/devnet/flash/articles/ora_seo_flash.html
http://www.insideria.com/2008/09/advanced-flex-deep-linking-wit-1.html

0 comments: