It's been an interesting few months since the release of the first version of Sonar. We've had thousands of downloads, lots of good press, and a great deal of interest from SharePoint developers and administrators around the world. Like any first version, Sonar had a few rough edges, and we've been working diligently to fix issues, respond to feature requests, and improve some of the ancillary areas like installation, user registration, license activation, and the like. Today we're releasing Sonar version 1.1, both in the Lite (free) and Standard (commercial) flavors, and have already begun work on the product that everyone is waiting for (well, at least everyone we talk to about SharePoint performance), Sonar Professional.
We've made some minor improvements in this version, notably the addition of user-defined control filters, better support for MOSS publishing sites with anonymous users, and visible control selection, but we've also made some pretty big changes as well. The most important change is the elimination of the HTTPModule to capture in-flight performance information. While we did an extensive amount of testing regarding negative performance impact from an attached module (or, I should say, yet another attached module, as SharePoint attaches plenty of its own) there was always a concern that we could be making things worse instead of better. But beyond that, the mechanism for deploying and removing HTTPModules via web.config changes across a server farm is not quite ready for primetime; the SPWebConfigModication methods are a bit cantankerous, especially when trying to roll back modifications, and larger farms seem to have issues with synchronizing changes across all front-end servers. So rather than subject customers to an install process that doesn't always work well, we pulled the HTTPModule and moved all our processing logic into the Protocol Analyzer. This has a few advantages, the most important of which is that all performance analysis is done in the background without impact to the current user process, insuring that we don't slow down the system while trying to determine how it's really performing.
We've also changed the licensing model for Sonar to better reflect the way in which SharePoint solutions are deployed. With standard desktop or server applications, which launch from some executable or set of executables, licensing per machine (or processor) makes sense, as the code is tied to a particular physical hardware instance. But in SharePoint, an application may live in multiple places – front end web servers, application servers, index servers, database servers, etc. – making the single-license-per-machine approach a bit outdated. When a solution package is deployed, it gets deployed throughout the entire farm, not just to a single server, and enterprise customers often have multiple farms in their environment. Perhaps Microsoft can keep track of all those machine and user licenses (although judging from the outcry over Windows Activation problems that may not be so true) but we sure can't, so it makes more sense to price and sell software the way it's deployed in SharePoint, i.e. on a per farm, instead of per server, basis. This makes it much easier to budget for and manage licenses, including those used by developers running multiple virtual machine instances, and reduces the complexity of purchasing and deploying our product (I wonder if any other ISV's will catch on to this?).
Finally, we spent a great deal of time thinking about how customers will use our products in the future. First and foremost, they need consolidated reporting, historical trending, automated data collection, and the ability to do their own analysis and reporting (hint: cool BDC stuff coming), all of which we will deliver in the Professional version later this summer. But beyond that, we're looking at thorny issues like measuring the performance of embedded and client-side applications (think AJAX and Silverlight), providing end-to-end metrics for real (not synthetic) user transactions, and integrating with enterprise management frameworks like System Center. How much of it we'll get done this year remains to be seen but we're hopeful that the next few months will enable us to bring a great deal of value in this new but rapidly expanding portion of the SharePoint market.
If SharePoint performance is of interest to you, download Sonar Lite for free or, if you're interested in the additional capabilities of a commercial product, grab a 30-day trial version of Sonar Standard. Let us know what you think, what you like, what you don't like, what features you think would be cool or useful, or any other performance-related thoughts that come to mind. And be sure to look for us at TechEd 2008 IT Pro in booth #1349 – we'll have plenty of Sonar swag to give away, along with some free Standard single farm licenses.