Ayende @ Rahien

Refunds available at head office

LightSwitch: Initial thoughts

As promised, I intend to spend some time today with LightSwitch, and see how it works. Expect a series of post on the topic. In order to make this a read scenario, I decided that that a simple app recording animals and their feed schedule is appropriately simple.

I created the following table:

image

Note that it has a calculated field, which is computed using:

image

There are several things to note here:

  • ReSharper doesn’t work with LightSwitch, which is a big minus to me.
  • The decision to use partial methods had resulted in really ugly code.
  • Why is the class called Animals? I would expect to find an inflector at work here.
  • Yes, the actual calculation is crap, I know.

This error kept appearing at random:

image

It appears to be a known issue, but it is incredibly annoying.

This is actually really interesting:

image

  • You can’t really work with the app unless you are running in debug mode. That isn’t the way I usually work, so it is a bit annoying.
  • More importantly, it confirms that this is indeed KittyHawk, which was a secret project in 2008 MVP Summit that had some hilarious aspects.

There is something that is really interesting, it takes roughly 5 – 10 seconds to start a LS application. That is a huge amount of time. I am guessing, but I would say that a lot of that is because the entire UI is built dynamically from the data source.

That would be problematic, but acceptable, except that it takes seconds to load data even after the app has been running for a while. For example, take a look here:

image

This is running on a quad core, 8 GB machine, in 2 tiers mode. It takes about 1 – 2 seconds to load each screen. I was actually able to capture a screen half way loaded. Yes, it is beta, I know. Yes, perf probably isn’t a priority yet, but that is still worrying.

Another issue is that while Visual Studio is very slow, busy about 50% of the time. This is when the LS app is running or not. As an a side issue, it is hard to know if the problem is with LS or VS, because of all the problems that VS has normally.

image

As an example of that, this is me trying to open the UserCode, it took about 10 seconds to do so.

What I like about LS is that getting to a working CRUD sample is very quick. But the problems there are pretty big, even at a cursory examination. More detailed posts touching each topic are coming shortly.

Comments

Demis Bellot
08/25/2010 05:41 AM by
Demis Bellot

I'm surprised you're spending a lot of time reviewing it. After watching a couple vids my conclusions is that it looks like access only worse.

Fredrik Normén
08/25/2010 05:56 AM by
Fredrik Normén

Something to have in mind is the targetting people.

George J. Capnias
08/25/2010 06:02 AM by
George J. Capnias

@Demis Bellot: I do not doubt your conclusions, but LightSwitch is "Enterprise Tool" after all...

And Ayende loves "Enterprise Tools"!

Jim Burger
08/25/2010 06:54 AM by
Jim Burger

I applaud ayende for taking an honest look. It is easy to dismiss this stuff so early.

Although this [might|will|could] not be the case, I do hope that the 'KittyHawk' team take this type of feedback on board as they move to RTM.

Bill Campbell
08/25/2010 12:36 PM by
Bill Campbell

I am so excited to see you are taking an interest in these tools as I have total respect for your opinions and analysis. Thank you for taking the time and effort to really give this a good look!

Jim
08/25/2010 07:46 PM by
Jim

Kinda reminds me of foxpro.. Except vfp is 1000 times faster and more productive...

Jim
08/25/2010 08:09 PM by
Jim

Most of my customers will not move from TRUE RAD stuff like Foxpro or VB6 simply because they dont want to spend the money on .NET overkill or SQL server over kill... Microsoft killed its RAD stuff like Foxpro and VB6 and now they come out with Lightswitch? Why not just make a VFP.Net language and maybe small to middle size companies will take the plunge. I know Microsoft needs to make money.. they keep coming out with something new every time you turn around..[Windows Forms.. Presentation... Silverlight.. on and on] which technology is better? Who or what are they all targeted for? Microsoft originally said DYNAMIC Languages would be too hard to be part of .NET.. Until the DLR.. And now C# 4 uses DYNAMIC variables... huh? I'm not sure what the target audience is for Lightswitch. Maybe its all the VFP and VB6 developers they lost when the dropped these products...

Arnis L.
08/27/2010 08:06 PM by
Arnis L.

Keep em coming, Ayende. This is great stuff.

Comments have been closed on this topic.