I'm not usually someone who reviews individual software products. There are stacks of people in the blogosphere who will take products for a spin, kick the tires, and write long posts about their experiences. Okay, I may do a bit of that. My installation of Media Center as my primary viewing system for TV caused me to have lots of experience with Media Center, which served as grist for many blog posts.
In this case, though, Microsoft's Response Point - the product I learned about at last week's ITEXPO - was particularly interesting to me as it didn't fit well into some of the theories I have about the directions Microsoft should take from a business and strategic standpoint.
Most former Microsoft employees, in my experience, have strong opinions about the strategic directions they think their former employer should take, and I am no exception. In my case, I tend to fixate on Microsoft's historical role as maker of software platforms. I think that every piece of software Microsoft makes should be designed as a set of reusable widgets that easily plugs into the wider Microsoft ecosystem.
Granted, not every product in the Microsoft lineup lends itself easily to high levels of programmability. Even so, a good model is the one Microsoft used with the Office suite of products. Every application in the Office family can be reused and automated in third party software. This served as a strong competitive advantage for the company, and the fact that Microsoft tends to do this with most of its products makes the Microsoft "ecosystem" approach a winning strategy.
Microsoft's Response Point, however, doesn't fit into that model at all...at least not yet.
Microsoft Response Point is a product that aims to serve as a drop-in solution for business telephony in organizations with less than 50 people. On that count alone, Response Point is pretty interesting. You buy the Response Point base unit much like you buy a wireless router for you home, dropping it into your network without having to do anything fiddly and error-prone like install software (the base unit, in other words, is designed as a telephony appliance). The base unit is made by various hardware vendors (which is generally a wise move for a software company), such as Syspine, D-Link and Aastra. It's also available at easy to find places (at least in United States) like Costco. On some units, you can plug into the PSTN, but Response Point really comes into its own by using a SIP trunk provider (a technology I discussed on Monday). Favored trunk providers include 8x8 (aka Packet8) and Bandwidth.com, which is a concept of particular relevance in SIP trunking given the evolving nature of SIP trunking standards.
Response Point phones all have an ethernet jack on the back, which means you just plug the phone into the network like you do any other network-enabled device. At that point, the phone broadcasts its MAC identity via uPnP, which adminstrators link to a user account via a configuration tool that communicates with the base station. Once linked, configuration changes automatically propagate back to the phone. For instance, during my demo, I noticed that the phone they had configured for me to use had my name misspelled in the LCD window, a common occurrence given that Carroll for some inconceivable reason has two r's and l's. One of the program manager's in attendance fired up the admin console, changed the name, and it propagated back to the phone.
SIP is the protocol they use for networking within the office environment, the software stack for which was borrowed from the main code tree used for Office Communications Server (OCS, which is a product aimed at larger organizations, and considerably more complicated to configure). Why, then, are there special phones licensed as Response Point-compatible devices?
Response Point does work with traditional phones, but Response Point-licensed phones - easily identifiable by a large-ish blue button on the face of the device - provide special functionality. When pressed, the blue button initiates the voice recognition features that are an integral part of the Response Point system. This allows users to do things like call other people in the office, call named addresses in an address book, transfer calls, or even transfer the call to other phones in the office (you pick up the call by hitting the blue button at your destination and "unparking" the call). It is built on Microsoft Speech Server technology (a feature likely influenced by Xuedong Huang, General Manager of "Microsoft Communications Incubations" and the manager responsible for Response Point, who spent most of his career at Microsoft helping to build the company's speech recognition technologies) all of which is packaged into the base station.
That voice recognition feature can serve to give your organization a "digital receptionist." For instance, you can create a "switchboard" number for your office, and all the named individuals in your organization can be found simply by saying the name of the person to whom the caller wishes to speak.
It's a pretty easy to use arrangement. It's not yet within the price range of ordinary consumers. The base station costs about $1000, and the phones cost around $150. That's cheap by office telephony standards, but not cheap enough that a typical consumer is going to run out and build a home telephony system based on it (though I could see things heading that direction at some point in the future).
Response Point is clearly architected as a drop-in appliance that is easy to configure. That militates pretty strongly against the concept of making extensive developer hooks for customization of the experience, which doesn't really fit into the whole "programmable ecosystem" model to which Microsoft, in my opinion, should adhere as a matter of principle.
Every rule, however, has its exceptions, and I think this product makes a strong case for such an exception. The people responsible for Response Point wanted it to be a solution that is as complex to use as a DVD player. You don't program DVD players, and neither should you be programming a Response Point base station. I think there could be more ways to hook Response Point video and audio streams into third party applications (small companies have customization needs, too), though for a version 1.1 product aiming for simplicity, I can understand why that isn't something that is emphasized, at least yet.
I still think most applications at Microsoft should emphasize programmability and reusability, as that is their competitive advantage. But, there is a time and place for it, and early in a product lifecycle might not serve as the right place. Response Point is based on SIP, however,which should help things considerably down the road should they ever contemplate more developer-oriented features.
The concept of easy configuration is certainly of benefit, and one that should be applied even to products that have a high degree of programmer customizability. It does occur to me that one of the reasons Microsoft's server products have gained so much traction is not just because it is solid and stable product (even Microsoft's bitter enemies will admit that), but because Microsoft makes it a lot easier to configure than competing servers. Ease of configuration and use is a virtue in modern computing. Apple has ridden that concept into newfound prominence in the computing landscape.
Generally, I found the Response Point product interesting in ways more complicated solutions on display at the conference did not. It does a good job of pulling legos out of the Microsoft software toolchest and putting them together in an interesting way, something at which I can't say every department within the company is equally skilled. It's also an interesting approach to telephony of a kind that we will see a lot more in the future. The hardest part of breaking the hold traditional telephony has on the average consumer is breaking through the "ease of use" barrier. Something like this helps to popularize an end-to-end digital solution, which is an important step in the evolution away from traditional phone service.