About two months ago, Brandon announced our partnership with PreEmptive Solutions to bring analytics for free to every Windows Phone 7 developer. The reception has been great: developers are using PreEmptive’s Runtime Intelligence (RI) for Windows Phone to instrument their applications and get deep insights into user engagement with the apps they create. There are already hundreds of applications in the Windows Phone Marketplace that are using RI to improve the user experience and to make smart decisions about what to build next.
Back in November PreEmptive released a new version of the tools. Now, Runtime Intelligence is much easier to use: no more “starter template” and obfuscation is smarter and easier to configure. Good news if you’re in the “good artists borrow, great artists steal” camp: there are two new sample applications (one for Silverlight and one for XNA) included for your stealing/learning pleasure.
A couple examples of the data you can get from RI appear below in the screen caps from the RI portal. This is real data from a live WP7 app (bonus points if you can name the app…hint: it’s an open source app on CodePlex). Application runs over time, number of unique users, average time spent in the app, feature usage, and geographic distribution are all available.
Get Started (Your Users Will Thank You)
Get started with RI by going to sign up & download the software. It’s free, sign-up takes 30 seconds and you’ll get your registration credentials and software download link emailed to you right away. I also recommend that you watch this quick-start video: it is less than 13 minutes long and gives you a great overview of how to get up and running.
If you’re already using the older version of RI (i.e. you got it prior to November 29th), you will need to download the new version as the old version expired on December 17, 2010. You don’t need to sign-up again: you should have already received an email from PreEmptive with download and installation instructions. Any applications you’ve previously created and released to Marketplace will continue to do what you’d expect based on what you set-up: stream usage data to the RI portal and/or make use of obfuscation.
What kinds of things might you do differently if you knew how your app was being used in the wild? How would you improve the user experience of your app by understanding its actual usage? Already using RI? I’d love to hear how you’re using it. If you’re not using it then please share your thoughts on how the insights could help you create the best app possible.
Ben Lower, Product Manager, Windows Phone Developer Experience
@Ben it would have been much more reassuring if the stats are on Microsoft servers rather than third party. The FREE offer expires on 31/Mar and though we don't mind paying $10(something like this was announced don't remember where) per month, we do mind hosting stats on third party servers. BTW For obfuscation, there is a free tool and works great. Get Windows Phone 7 FREE obfuscation tool from here : www.foss.kharkov.ua/.../Default.aspx . Works great and passes certification as well with it.
@axelriet: yes, per the intial post on this, currently the free offer is set to expire on 3/31/2011
@neonstardream: we are currently evaluating what happens after 3/31/2011
Is the idea to make this free indefinately or just for a limited time?
The question above about performance impact is a common one and one that is worth clarifying. Runtime Intelligence is highly configurable and has been designed to be as light-weight and nimble as possible specifically to reduce the chances that the collection and transmission of runtime data will impact performance.
• The first point worth noting is that Runtime Intelligence does not automatically monitor anything. A developer must identify what session metrics, which features, and what specific data is to be tracked. Unlike profilers and debuggers that capture everything, Runtime Intelligence only gathers what is explicitly requested by the developer.
• The second is that the packets are sent asynchronously in a compact and (optionally) secure format (SSL).
• The third is that offline caching is employed to handle network availability issues and some of the unique end of life behaviors that WP7 (and Silverlight in general) exhibit.
• Lastly, there is an opt-in/opt-out mechanism – in addition to its obvious use of enforcing privacy policies, it can be used to start-up and shut-down monitoring for any reason (like selectively collecting usage data).
So, is Runtime Intelligence invisible with no measurable impact on an application’s behavior? Of course not. However, it is built to ensure that, from a performance perspective, you only pay for what you use – there is no arbitrary overhead “tax” – no background tasks or agents and no additional application artifacts.
You should make clear that the free agreement expires on March 31, 2011
Here's an idea, just get the reporting working on AppHub, then we'll all be happy, mate! :)
Doesn't this over-all logging system lead in a very high performance consumption? I'd rather like to give more detailed feedback than to be stucked with slow and heavy apps.