Recently I used this space to express some skepticism about Microsoft's Windows Live and Office Live programs. These programs, as you will recall, represent the latest iteration of Microsoft's "software as a service" plan to bring their major applications to the Internet, presumably in the hopes of deriving a long-term annuity revenue stream from them. Clearly, though, my skepticism isn't shared by all developers, because now the news is out that John Montgomery, a senior level manager at Microsoft, has been charged with thinking about a future "Live" version of Visual Studio. Please don't call it "Visual Studio Live," though; for the moment, this project is code-named Tuscany.
Although it's clear that the preliminary thinking for this project has just barely started, and no one even knows what might go into Tuscany, how it might be packaged, or what it might cost, I can't help it that I've got a classic Marx Brothers tune running through my head as I write this column: "Whatever it is, I'm against it!" Perhaps living in a rural area with relatively poor connectivity has scarred me for life, or perhaps the Microsoft folks, with their practically unlimited redundant on-campus bandwidth, just lack a grasp of the problems in the real world. Either way, I find that the more essential an application is to my own work, the less I want to have any part of it Internet-enabled -- or, in current Microsoft-speak, "Live."
To my way of thinking, there are two cases here. Either a Live feature is fabulous and will make my development experience better, or it's an extra doo-dad stuck on the side of the product that I'll never use. In the former case, I don't really want the code that implements this feature to be living at the other end of my Internet connection, vulnerable to the whims of my ISP, backhoes, the National Security Agency, sunspots, and who knows what else. Nope, I want mission-critical features to live on my own computers on my own side of the firewall on my own network. True, the dog may chew up a network cable, but on the whole connectivity to my servers is substantially more reliable than connectivity to any outside service.
If the feature is just something stuck on the side of the product because there was room to stick it and a mandate from management saying "go forth and be Live," then I want it even less. Visual Studio is bloated enough already without adding on extra stuff just for the sake of keeping up with this year's trends. Either way, Live features are not a selling point for me. Instead, they are things to View With Alarm, or at least with some suspicion.
There's another factor that gives me pause, even beyond connectivity and reliability issues. The current fracas over the legality of the BlackBerry service, and the looming possibility of a court-ordered shutdown, underscore the dangers of depending on code that runs on servers that you do not control. If you stake your career on software as a service, you're depending on no legal action ever unplugging that service. On the other hand, even if some submarine patent comes along and torpedoes future sales of Visual Studio 2005, I really doubt that any court will craft a remedy that includes searching my hard drive and deleting all copies of the code that I already have. Software in my own hands is an excellent insurance policy.
Sure, maybe John and the other folks in the Developer Division will come up with truly compelling scenarios for online content in Visual Studio that are not occuring to me. But I'm not betting on it. As far as I'm concerned, the mandate to make a Live product from Visual Studio makes just as little sense as the drive to connect every Microsoft product to the Internet did in 1995. Every once in a while Microsoft finds a hammer and goes around pretending that everything is a nail, and I think that this is one of those times.
Mike Gunderloy is the Senior Technology Partner for Adaptive Strategy, a Washington State consulting firm. You can read more of Mike's work at his Larkware Web site, or contact him at MikeG1@larkfarm.com.