The first mention of Microsoft Visual Studio LightSwitch was at the VSLive! event in August of 2010. It's gone through two beta releases with an announced availability for version 1.0 to MSDN subscribers on July 26. LightSwitch is an intriguing product focused on building lightweight applications that access a data source and present results through a variety of different screens. You can build fully functional applications without writing any code, although if you need any customization you'll need to use either Visual Basic or C#.
Business developers are a prime target for LightSwitch. From an application perspective, LightSwitch is aimed at minimally complex applications with straightforward requirements. In many situations the basic need is to grab some data and throw it up on the screen. You might need some simple filter or query capability, but that's just about it. You might call LightSwitch the ad hoc developer's tool, although that's probably not what Microsoft had in mind.
Data is the Key
Accessing multiple kinds of data is, without a doubt, the single common thread amongst most business developers. The data might be stored in a SQL server or even an Access database. Another common task is converting data from one format to another and then storing it in a database. The obvious data sources for a Microsoft shop are SQL Server and Microsoft Access. Other possibilities include SharePoint, SQL Azure and a Windows Communication Foundation (WCF) Rich Internet Application (RIA) Service.
That last one (WCF RIA) is essentially the glue between the presentation tier and data access layer. Creating one of these things is way beyond casual programmer knowledge and would be a potential opportunity for enterprising ISVs. It also highlights the fact that you will need some additional tools if the data you wish to access is stored in something other than a Microsoft product.
Presentation Layer Magic
Creating quick-and-dirty applications is another stated goal of LightSwitch. Visual Basic has filled this role for many years but doesn't really meet the needs of the casual developer. The biggest issue for creating "custom" business applications is almost always how the information is presented to the user. While Visual Basic does make it possible to build simple applications, it does require a certain amount of coding using the language to add the necessary functionality.
LightSwitch takes care of many of the rudimentary tasks for which you have traditionally had to write code, such as querying a database and filling a grid with the results. It provides a nice visual designer to create your forms and reports. LightSwitch also adds a number of new capabilities for data validation, such as recognizing an e-mail or telephone number field and validating it for you. Be aware that LightSwitch refers to unique data input or output forms as screens.
Independent Software Vendors (ISVs) should take a hard look at LightSwitch from the perspective of potential add-on features. LightSwitch has basic database connectivity capabilities out of the box but doesn't even begin to address all of the data sources businesses need to service. It's also somewhat limited in terms of the customized screen components although the usual vendors here have already announced support.
The good news for programmers already familiar with Visual Basic or C# is you don't have to learn anything new. In fact, you can take your VB or C# skills and put them to work right away with LightSwitch. If you want to get started now, you'll find an Extensions Cookbook and sample project available on the MSDN site.