RIAStats.com collects statistics about Rich Internet Application browser plugin deployments and provides the results publicly. The site uses a small javascript, much like Google Analytics, to detect the presence and version of RIA plugins. Like google analytics, any web site can include this javascript and receive customized statistics.
Today, RIAStats.com supports Flash Player and Silverlight detection. I'm looking into adding JavaFX. Any other suggestions are welcome!
You can sort results by browser, operating system and language. Statistics are available as a pie chart of the last 30 days activity and a line chart that shows daily percentages. When Adobe or Microsoft releases a new version of their plugin, we'll be able to track its penetration.
If you like the service, try adding RIAStats to your site. Hopefully this will become a useful resource for better understanding the deployment of RIA plugins for your target audience.
WARNING: If you have silver light installed on your Mac and you use Firefox 3, be sure to get the latest updates! There was a bug in the first release that caused firefox to crash.
Thanks, Travis... a good contribution. There seem to be two areas of question though:
1) What's the detection method? A JavaScript test wouldn't necessarily determine workable plugins. Or are you doing some type of embedding, where a successful plugin invocation passes a JavaScript message to the browser? Or...?
2) What's the sampling method? It looks like "People who visit this stats page use X", which is susceptible to gaming, although there's not much awareness yet:
http://www.google.com/search?q=riastats.com&as_qdr=w
If you had to phrase this in a sentence, what would you say it is actually measuring, and how?
tx, jd/adobe
Comment by John Dowdell at July 24, 2008 02:06 PM
@John Dowdell
I knew some questions like these might pop up :)
I tried to cover as many bases as possible, so here are my answers.
1) The plugins are detected via a javascript that the browser downloads. The script varies slightly for Flash and Silver light.
For Flash, I simply used almost exactly the javascript that the Flex compiler includes in the default html template. Depending on the browser, it either instantiates a small instance of a Flash player or queries the browser plugin directly. The only info pulled is the version number of the Flash plugin.
For Silver Light, the script must always create and deploy on the page an invisible Silver Light instance. The version number is pulled from the plugin instance.
In both cases, no SWF or XAML file is actually loaded and the temporary instances of the plugins are immediately destroyed.
2) The sampling actually takes place across many sites. You can include RIAStats on your own site and get your own stats! The stats collected from your site are aggregated into the public statistics.
The sampling method is per-browser-site-day. So one "unit" is a single browser, on a single site in a 24 hour period. I do this for several reasons.
a) We want to gather penetration stats over time. Basically the counter is reset daily (though the front page of riastats shows a collection of the last 30 days).
b) we don't want people gaming the system, so I made the collection happen over many different sites.
c) we don't want a single browser reporting over and over, so if cookies are disabled for riastats.com in a browser, stats for that browser won't be collected.
d) If a person did game the system, then it would only affect a single 24 hour period. They would have to game the system every single day.
e) Hopefully one day the site will have a wide enough deployment, that a single user trying to game the system would be a tiny fraction of the results.
f) There are some basic filtering rules on the servers that keep a single IP from flooding the stats.
Hope that answers some of your questions. There will be more info like this available in the FAQ at RIAStats.com; just havn't had the time to post it.
Comment by Travis Collins at July 24, 2008 02:24 PM
Cool, thanks. That federated sampling seems like it would be much less susceptible to gaming. The invocation check is solid too... thanks for watching out for those JS-only gotchas!
It might be good to check referrer headers, or whether there are spikes in visits... the "gaming" I was thinking of was more along the lines of "Hey everybody visit this site!" Hard to see how to avoid that, although the wide site sampling helps.
tx, jd/adobe
Comment by John Dowdell at July 24, 2008 02:45 PM
Travis flying into LAX today for #AdobeMax through Wednesday.
Reston, Virginia
Copyright DreamingWell.com 2008