The great rich internet application SEO debate (part 1)

The great rich internet application SEO debate (part 1)

Summary: Search engine optimization in rich internet applications is starting to come up a lot more. Part of has to do with the fact that rich internet applications are simply becoming more prevalent.

SHARE:
TOPICS: Browser
4

Search engine optimization in rich internet applications is starting to come up a lot more. Part of has to do with the fact that rich internet applications are simply becoming more prevalent. But part of it also has to do with the fact that competition in the space has never been at a higher level than it is now. As a result, SEO-ability is starting to become a differentiator especially between Silverlight, which uses plain text XAML, and Flash, which uses a binary SWF. This shouldn't be the case.

I've talked a lot about the myth of Silverlight SEO on my personal blog, so I won't bring it up here. But as the debate heats up, I think it's very important we take a step back and figure out what we want when we try to optimize our rich internet applications for search engines. Therein lies the debate; why and how should rich internet applications be indexed? It first probably makes sense to discuss a few kinds of rich internet applications. So for the SEO discussion, let's divide them into 3 broad categories which I'll talk about in 3 parts: commerce-based RIAs (storefronts), productivity RIAs (mail, office applications, etc), and branded experiences (RIAs meant to enhance a brand or engage the user).

Commerce-based Rich Internet Applications
In the past, the main problem with RIAs was that because they gave a better experience by not refreshing the page, the spiders couldn't differentiate between one page and anotherThis is the most relevant for search engine optimization, but still tricky. If you're using an RIA front end to power your store, you want to make sure that people who search for whatever you're selling will see that item of yours listed in the results. With HTML, this is fairly straight forward. As long as that item is linked somewhere, like a listing of items under a subcategory. the search engines will spider that content, note the URL and provide a direct link into on the search results page. As a webmaster you can optimize that product page with all of the terms and Google juice you want.

In the past, the main problem with RIAs was that because they gave a better experience by not refreshing the page, the spiders couldn't differentiate between one page and another. As a result, even when they could spider content, there was no way for anyone to get directly to the product's page. Luckily that part has changed. Most of the RIA technologies now allow for some form of URL changing and the technology within the app to respond to that URL (this document describes the feature in Flex 3).

So now that we can deep link into a specific part of an application, what does that get is. Here's the main issue, which Josh Tynjala covers well in this blog post. In a storefront we want to expose the product. In the past, we loaded up the page with search terms and crossed our fingers. I think with RIAs we have a better way to do this. If we can work with the search engine companies and expose our data in a structured way, we can get more relevant results and improve the overall find-ability of our applications.

A Possible Solution
why can't we come up with a standard way to expose the data in our RIAs via XML so that search engines can index them, have all the relevant data about them, and then also associate it with a specific URL for deep-linking purposes?As with all rich internet applications, in a storefront, the data is the most important thing and we have the ability to abstract it away so that our presentation layer and our data layer are very separate. The best example of this I've seen is the Flex Directory. Do a view source on that. You'll see an XML document with a listing of all the companies in the directory. The XML file contains their information so search engines can spider it and associate it with that page.

So why can't we come up with a standard way to expose the data in our RIAs via XML so that search engines can index them, have all the relevant data about them, and then also associate it with a specific URL for deep-linking purposes? This is the great thing about RIAs: they give us a way to rethink how we store/access/deal with data. In the storefront example, an XML file for each subcategory that lists all of the products, their information, and then the associated URL would go a long way towards getting more exposure for companies leveraging RIAs on the commerce side. It would also be a great way to provide that data to other devices which would make creating more touch points (mobile devices, video games, etc) a fairly easy task.

We've got a lot to do to get SEO in RIAs totally figured out. Storefronts are the most basic example, but in the next couple of parts I'll talk about what I think we can do about productivity applications and also branded experiences.

Topic: Browser

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

4 comments
Log in or register to join the discussion
  • Wondering..

    Hi Ryan. Nice article as usual!
    Having no idea about what EXACTLY search engines are doing in order to better
    index "the all web" i wonder.. Shouldn't this be a problem for them? I mean of course
    as a dev you would like to make everything possible in order to SE can index your
    project and that's why you are following their rules. Shouldn't they examine and
    maybe change some of these rules? Isn't Google in position to see what flash is for
    the web?
    savvasmalamas
    • What about Adobe?

      Hey savvasmalamas,

      While I think your comments are certainly relevant to the overall discussion, the fact remains that there is real business value in search engine marketing. That value is being entirely left on the table if we wait for Google to improve its Flash indexing (or to implement an XML-based indexing option). For many projects, Flash/AJAX would be completely out of the question if it could not be indexed by search engines.

      We had this, as well as other accessibility issues, at the heart of the Flash experiment that became our corporate blog - www.pierinc.com. We needed indexing - http://www.google.com/search?num=100&hl=en&safe=off&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=AjX&q=site%3Apierinc.com&btnG=Search - we needed deep linking, and we needed it all to be dynamically managed. The only way to get this was to do it ourselves. Now Flex 3 has deep linking built in. I wonder if another side of the discussion might be regarding Adobe?s role in building SEO into Flex as well. Again, it is certainly valid to discuss the role the search engines will play, but the beauty of having Adobe at the helm of both an open source Flex framework, and an open source VM in AVM2 is that they can spearhead one deployment mechanism for making Flash content search engine friendly. The flip side that was discussed in this post was trying to get search engines all to adopt a single XML format for deploying Flash content.

      They can't even get on the same page with XML sitemaps yet, so in terms of efficiency the Flash question might best be answered by Adobe.

      Mike
      mcolombo
    • RE: Wondering..

      Hey savvasmalamas, thanks for the comment.. I don't think this is just a search engine issue but I do hope they work on it. At this stage in the game, it seems like it's going to be a group project. Part of me would love to see this be something the W3C takes on since it's applicable for all technologies.

      I tend to agree with Mike below that this is something the technology companies should be trying to make as easy for developers as possible.
      ryanstewart
  • You are right..

    Ryan, Mike excuse my English i hope you didn't misunderstand me.
    The reason i reply to your post Ryan is because i don't really know what SE are doing
    to fix this issue. Definitely Adobe and the others that make the techs should try to fix
    it and they are (as for Adobe) but it looks that they should work ALL together to find
    the best solution.Again maybe SE are doing an excellent job that i am not aware of..
    (I care most for the Adobe sight)
    I hope for the best. Thank you both for the replies.
    Take care..
    Savvas
    savvasmalamas