The concept of Web Services is good, but I've been waiting for the ultimate example of why this technology makes sense. This week, after speaking with SnapStream Media CEO Rakesh K. Agrawal, I think I've finally found that example, and it's not some hard-to-explain techie feature, either. Instead, it's something we can all rally around: television.
In the early 1980s, I dreamt of a future TV-on-demand functionality that companies often promised but never delivered. The goal, I thought, was to provide consumers with a catalog of TV shows dating back to the technology's inception so that you could view, say, any episode of "Magnum P.I.," "M*A*S*H," "The X-Files," or whatever else floats your boat, whenever you want and wherever you want. This technology would transform the TV industry in the same ways that MP3s and Napster later transformed music: Instead of being bound by the rigid programming schedule of the networks, new shows could "debut" at a certain time and then be available in perpetuity. It was a grand plan, but it never happened.
Part of the reason for this failure is inertia, but most of the blame lies with the maturation of the TV industry. Faced with competition from cable networks, upstart national networks, movie rentals, and even video games, television has largely stood still technologically as the industry grapples with new forms of entertainment and consumer-enabling technologies. One such technology, digital video recording (DVR), shows great promise, although it has never really taken off. Essentially hard disk-based VCRs, DVR units from companies such as TiVo and SONICblue have sold poorly because the units are expensive and hard to explain to average consumers. But people who own such devices are often evangelical with friends and family and wonder how anyone ever got along without DVR.
DVR units can record TV shows and pause live TV, and the units offer program guides that let you search and set up automatic recordings. For example, you can choose to record any show that features a certain actor, or every episode of a show such as "The Simpsons," regardless of when it's on or what channel it's on. DVR units don't offer the TV-on-demand features I've always wanted, but the DVR units' features are pretty close.
Agrawal and SnapStream have entered the DVR market from a different angle, however. Instead of requiring consumers to purchase set-top boxes that cost $500 or more, SnapStream offers a $50 software product that brings DVR capabilities to the PC. This product lets you take advantage of that whopping hard disk you probably already own, and the PC-based solution is almost infinitely expandable (a new 100GB hard disk costs far less than a hardware-based DVR unit, for example).
But it's SnapStream's plans for the future that excite me most. Beginning in March 2002, the company will offer a new version of its SnapStream PVS product, called SnapStream.NET, that will integrate with the Microsoft .NET platform and offer consumers an affordable and exciting way to record, share, and watch TV.
Here's how SnapStream.NET works. A subscription service that will likely cost about $5 a month, SnapStream.NET will offer an online version of the SnapStream programming guide, which includes TV listings and search functionality, fully integrated with the company's PC-based software. Another component, called SnapStream Anywhere, will let users hit a server from any Internet-enabled location and program recordings on their home PCs. Thus, you could "tape" a show on your home PC, even though you're accessing the server from a hotel across the country. And if you have a broadband connection on either end, you can watch any of the shows you've already recorded. Agrawal tells me that, during the January 2002 Consumer Electronics Show (CES) in Las Vegas, Nevada, he would regularly watch the evening news broadcast from his hometown (Houston, Texas) by using the broadband connection in his hotel to access his home PC across the Internet.
So where does .NET come in to all this? Agrawal says that SnapStream is using .NET technologies throughout SnapStream.NET, from the Microsoft .NET Password authentication system for logging on to its servers to .NET Alerts, which will notify users when their favorite actors, actresses, and TV shows are airing. "It's tied into the \[Windows\] Messenger service," he says. "So you can get an alert each morning about your favorite TV-related events. If, say, Tom Cruise will be appearing on two shows that day, you can get alerted about that and will be provided with a link so you can record the shows automatically."
SnapStream is also working on a concept for a future release that will integrate a .NET feature called Session Invite. Used today by Windows Messenger and Microsoft's online games, Session Invite lets users connect with each other for purposes such as application sharing, Remote Assistance, and video conferencing. SnapStream.NET will use Session Invite to let two broadband-connected users share a recorded show. For example, one user might use Windows Messenger to send a second user an invitation to watch a show. If the second user accepts the invitation, they can watch the show simultaneously and chat through Windows Messenger.
"This all relies on .NET technology," Agrawal says. "If the .NET My Services \[formerly code-named HailStorm\] infrastructure wasn't there, I'd have to build my own messenger client, and I don't want to do that. Instead, I can create a great user experience based on existing Web Services and clients."
The initial version of SnapStream.NET won't rely on XML and Simple Object Access Protocol (SOAP), but the next version will be fully rendered as a Web Service. "That way, it's just a Plug and Play scenario for users, and it just works," Agrawal says. For security, users can close their machines to the outside world, until the consumer logs on and reconfigures the software to allow remote TV viewing. Users can change settings through a central SnapStream server as well.
"The key is anywhere, anytime access, not just to TV listings, but to the actual content," Agrawal says. "It has to work from any device \[and\] from any network connection. It's that simple; that's the strategy."
I think he might be on to something.