Tonight I covered a LightSwitch presentation, at the local user group, for a Microsoft Developer Evangelist who could not make it. When I started the session, I asked the 30 developers in the room, “Who is a Silverlight developer?”. one hand went up, and even he admitted that like me, he does not use Silverlight on his day job, he just likes it.
Face it, MVVM, used to create Silverlight applications, is too hard. Don’t get me wrong. I love Silverlight. I have published numerous articles on Silverlight and MVVM. I have created numerous applications using Silverlight. But, not a single one of my non “Silverlight MVP” friends has ever completed a Silverlight MVVM project.
The number one problem is the “you’re not doing it right”. This scares people away, who needs the fighting? MVVM is very time consuming, and confusing. I have watched developers spend hours trying to learn how to fill a drop down properly. You may say “well these developers are lame”. Perhaps, but, the Silverlight adoption among developers is low.
With all the negativity of the preceding paragraph, why do I now feel that the number of Silverlight programmers will explode?
LightSwitch IS Silverlight.
My presentation was on LightSwitch for the professional programmer. As I demonstrated the LightSwitch projects covered in my LightSwitch Student Information System project, I challenged the audience to “voice your concerns, your fears, your criticism… bring it on!”. I received questions like:
The answer to most questions was to create a Silverlight Custom Control. A large number of LightSwitch programmers, means there will now be a large number of Silverlight programmers. LightSwitch uses MVVM,however, it gives you easy to use tools to create the “M” (Model) , and the “VM” (View Model). You only need to create the “V” (View) manually, using Silverlight Custom Controls.
I recently looked at my speaking engagements over the past few years, and I have presented about so many Silverlight applications and techniques I have learned, however, I know that the majority of the attendees did not fully understand, and 95% never tried any of it themselves.
However, at my presentation tonight I could tell that everyone in the room, FULLY, understood and followed my presentation. I fully expect that a year from now, 95% will have used LightSwitch for at least one project.
I challenged the audience to “use LightSwitch for that project that you would otherwise not do”. Sometimes I feel we programmers are like doctors who wont fix that cleft lip on a child because any operation will cost at least $10,000. A simple web page that gathers data into a single database table can take a programmer a day to code, test, and deploy. If the application has any business rules, it could take days. If you don’t have $3-4k don’t even bother asking for any help from a professional programmer.
People matter, and their work matters. As programmers we should help, but time is money, and if the project is going to take 30 hours, I need someone to come up with $3,000. However, with LightSwitch I can do the project in 2 hours.
LightSwitch is powerful, but it is easy to use and understand. Most importantly, it is blazingly fast to develop an application with it. Time is money, and it can cut the time by 80%+. LightSwitch is here to stay and it’s adoption is going to be big. However, to have it display the user interface exactly how you desire, you will want to make Silverlight Custom Controls.
Yes, now, you’re using Silverlight. Good old fashion 100% Silverlight. Congratulations, you’re now a “Silverlight Programmer”… I am glad you made it.
Great post. Thanks! <br /><br />@Nathan: Silverlight and HTML5 are complementary tools. The IT shops I've spoken with are developing their ***LOB apps*** in Silverlight for an impressive/immersive UX, lowest cost, and fastest time to market. They're considering HTML5 for generic content-based public-facing websites - in a few years when browsers become uniformly addressable with HTML5 constructs. <br /><br />An HTML/JS developer recently commented to me that HTML5 is already outdated because the spec for (now popular) multi-touch remains predominately unbaked and unimplemented - and is years away from browser ubiquity. He lamented that he's had to build apps for the iPad using their native iOS to be at all competitive in the appstore as everyone expects a touch experience!! Watch for very slick Silverlight (WP7) based smartphones and pads later this year!<br /><br />Also: MS is using SL in upcoming Business Dynamics releases: <br /><a href="http://msdynamicsworld.com/story/silverlight-ui-microsoft-dynamics-gp-12-key-cloud-credibility-microsoft-believes" rel="nofollow">msdynamicsworld.com/story/silverlight-ui-microsoft-dynamics-gp-12-key-cloud-credibility-microsoft-believes</a>
@Nathan - HTML5 is equivalent to Silverlight 2 in capabilities. What HTML5 brings is semi-ubiquity (even now each web browser displays HTML5 differently in some cases).<br /><br />I don't feel that LightSwitch is propping up a failed technology, but instead, it is a demonstration of a superior technology.
Well, I guess that's one way to try to prop up a failed technology. Silverlight < Flash. Html5 will make them both irrelevant for many devs.