Can LightSwitch do to development what Visual Basic did 20 years ago?
After entirely too long (nearly four years), Microsoft has shipped Project KittyHawk, now known as Visual Studio LightSwitch 2011. For some folks there has been much rejoicing—they see the .NET development stack as too difficult, too complex, and taking too long to build applications. For other folks there's a totally different reaction: that LightSwitch is a toy, it's far too limited to be useful, and that "real developers" would never use it.
I remember this reaction well. It's the same one that occurred when the original Visual Basic (VB) shipped back in 1991. Back then if you wanted to do Windows development, you were pretty much stuck with C++ and all the challenges that it entailed… nothing like debugging with reboots! VB addressed the issue by significantly limiting the level of access a developer had to Windows, but at the same time creating a much "safer" environment to build software in. Those limitations were a key strength to VB: Since developers were protected from the vagaries of Windows programming, they could focus on what they needed to do, which was to build forms-over-data applications quickly. (Actually, if I'm honest, the first version of VB wasn't all that good at building forms-over-data; it took to VB3 to really knock it out of the park.)
But I think the folks at Microsoft have gone much further with the first version of LightSwitch than they did with first version of VB. Data is at the center of everything that LightSwitch does. It can consume a huge range of data sources (as long as they're Microsoft data sources) including SQL Server, SQL Azure, and even SharePoint. And LightSwitch creates Silverlight 4 clients that run on desktops and on the web equally well.
Back in 1991 I jumped on the VB bandwagon from dBase. I was a one-man-band developer, and my customers wanted "real" Windows applications in a reasonable length of time and for a reasonable price. And today, twenty years later, LightSwitch is offering the exact same concept for the current generation of requirements: a method for quickly constructing applications that consume the data a business has and creates good-looking clients that work on the desktop and over the web. LightSwitch is the kind of tool that can make the one-man-band developer a viable proposition for businesses again.
.NET developers are still important to the equation. The same way that VB applications sometimes outgrew themselves, I expect that some LightSwitch applications will have the same challenges. These are good challenges though—the kind that are very profitable for everyone involved.
The path forward for LightSwitch is intriguing as well. I see deeper integration with Azure in the future for LightSwitch, and being able to build Windows Phone 7 clients seems almost inevitable. By version 3, I expect it will be self-evident that LightSwitch is a key part of building forms-over-data style applications. The reaction in the community (positive and negative) makes this seem inevitable.
Richard Campbell is technical director for DevProConnections.