All Articles

LightSwitch and the Enterprise

After reading this post about LightSwitch in the Enterprise, I decided to give my two cents.

I started developing with LightSwitch since the first Beta version, which was lauched in 2010, in last days of August. At that time, I was developing with my team a web application around Governance, Risk Management, and Complicance (GRC). We were using a typical web stack with ASP.Net MVC, Entity Framework (I can't remember if it was Linq2Sql at that time), Html, Javascript, in particular jQuery. The truth is that our velocity was very slow, and we were constantly struggling with the user interface. As soon as the first Beta 1 of LightSwitch was available to download, I decided to give it a try. Since we had the data model already designed, I tried to use LightSwitch to develop the majority of the screens that we had, but now using Lightswitch. The final result was awesome, since I spent no more than two days to build the screens that had been developed in a month. The application was now a silverlight app running on the browser, with a different look and feel, but you know what: the product owner liked the "aesthetics" of this new silverlight app and we decided to move on with LightSwitch to build the first version of app (which was designed following the Minimum Viable Prodcut approach, to test the idea of the product).

Since then, I have already used Lightswitch in many other situations, developing applications that are currently running in production. I don't have doubts that Lightswitch has a corner in the enterprise applications space, allowing a development team has a boost in productivity, and seeing their development costs reduced.

I am happy to watch Microsoft investing in Lightswitch, improving, for example, the collaborative development on Lightswitch applications, which was already announced to be present in Visual Studio 2013.

Even though it seems I am LightSwitch fan, I am not saying that LightSwitch is a silver bullet, and that we should forget everything we learned so far. Far from that. What I am saying, is that LightSwitch can be used in the Enterprise without any fear. I suggest to start with small applications, maybe to serve a few department users, and specially if you have a lot CRUD screens (a typical small backoffice application, perhaps). I think you will be surprised how fast you develop this kind of apps with Lightswitch.

I am not saying also that Lightswitch does not have any problems. As any other technology, Lightswitch can present some problems. For example, you have to know very well the technology to avoid some performance issues you can have. LightSwitch advocates a kind of development, and you have to know it well. When we are constantly struggling with LightSwitch to do things, perhaps it is a signal that we shouldn't be using LightSwitch. There are a lot extensibility points there, but it's not comparable with the full control you have when using the tools you want (for example, Asp.Net MVC, WebApi, HTML5, CSS, jQuery, etc.).

As a conclusion, I just want to say that Lightswitch has a space in the enterprise. Of course every organization is different, with different requirements, and above all, with different believings when regarding software development, which can produce some resistance to adopt this kind of RAD tool. Give it a try to use Lightswitch in a small CRUD line-of-business application, and in an economical point of view you will be surprised about the results.

Published Jul 16, 2013

Cloud Solutions and Software Engineer. Married and father of two sons. Obsessed to be a continuous learner.