WPF/Silverlight Gut Check

Jan 26, 2011 at 12:59 AM

Not sure if this is the right forum for this, but I'll give it a shot anyways...

This has been on my mind since attending Firestarter early last month: what is the temperature of the room with using Silverlight/WPF for application development?  The messaging seems very confusing coming out of Microsoft, starting with the Silverlight "Strategy Adjustment" late last year.

I just saw Mr. Eisenberg's latest blog post to vote for his Mix talk .  I am conflicted by this.  First off, I sincerely hope he lands because his talk at last year's Mix was the highlight of the conference for me.  However, his subject is a bit disheartening to me because it deals with two technologies I have long since forgotten about with great disdain and vitriol: HTML and JavaScript.  To me, these two technologies are vastly inferior to what is offered by C# and Xaml.  They, along with TSQL, are weak links in the computer science chain and should die a beautiful quick death.

Seeing Mr. Eisenberg's decision to talk about JS/HTML, along with the confusing messaging from the Empire sure does make me mighty nervous.

I have invested years into Silverlight and WPF.  But now, with signs like this, it makes me wonder if I made the wrong turn somewhere.

I did attend and listen to ScottGu's LIDNUG session yesterday.  I asked my question about the future of Silverlight, and he made it clear in no uncertain terms that Silverlight is the platform of choice for Windows Phone 7, and that the Silverlight team is hard at work with the next version.

This was very good news to me, but I still want to do my sanity a favor and gauge the temperature with what people are feeling with the direction of Silverlight/WPF and HTML5 going forward.  I for one could never ever touch the swine that is JavaScript/HTML ever again; it is beneath me. :P

Anyways, maybe I'm over-reacting.  WPF/Silverlight, along with the brilliant minds that brought us Caliburn(.Micro) make it the superior application development platform of choice.  I'd hate to see it become the BetaMax of application development.

Jan 26, 2011 at 1:08 AM

Don't fear. Silverlight is alive and well and v5 is going to be awesome.

However, there is a huge gap between Silverlight and HTML and in the scenarios where I must go to HTML/JS for whatever reason, I want to be able to take as much of my development strategies from Silverlight with me. That is what my talk is about. How to make HTML/JS development a nice experience and build apps similar to the way you would with Caliburn.Micro. So, if for example you want to write an Android or iPhone app, you could take all your Caliburn.Micro knowledge and apply it to HTML/JS semi-instantly and open up some new platform opportunities. For me, it's about having as many options as possible and not having to sacrifice the comfortable workflow I have with CM. Don't be downcast. What this means is that everything you already know is going to apply to an even wider range of platforms...and I might even make you like Javascript again....maybe ;)

Jan 26, 2011 at 1:25 AM

That is great to hear.  However, JavaScript is weak.  Maybe it's just the tooling support back in the day (it might be better now), but I just can't bring myself to type another "function."  And the thought of typing "<div>" when I know I could be typing a "<Grid>" or "<DockPanel>" just makes me queasy.

I do like what you are saying about android/iphone development.  This is obviously critical to reach as much market adoption as possible.  These platforms simply do not run Silverlight (yet) so HTML/js is really the only way to go to ensure maximum compatibility and reach.

However, I still think plaform-specific applications are the way to go -- not web applications.  What I am hold my breath for at Mix is an EPIC announcement by the Empire to embrace Mono and introduce the concept of Adapter Projects, enabling us to create correlating projects for our Silverlight applications for the MonoDroid and MonoPhone platforms.  With one build of a solution, we create 3 versions of the same application for all major platforms.

That way, we still are still developing with a superior technology stack while maximizing market reach.  How cool would that be?

Jan 26, 2011 at 3:08 AM

That would be cool. But in the mean time, HTML/JS is a reasonable alternative if you need breadth of platform support. You might be surprised how much the Javascript community has matured in the last year or two. One of the things I hope to do as part of this talk is bring to the forefront several innovative Js projects and initiatives that are changing the way Javascript development works.