Should I commit to Silverlight 1.1 or Flex?

I recently received the following email (abridged and identity disguised)

—–Original Message—–
Importance: High
 

The other side (FLEX) is developing very sophisticated apps. I mean for example Buzzword or Sliderocket….My question: Will the Silverlight framework allow us to create a Rich Text Editor in the near future?

 

 

 

A couple things to note about his message. The importance was marked High. I don't think he did that lightly; this is a very important question for a lot of folks. Second, he refers to Flex as "the other side."  I don't see it that way, but a lot of folks do, and perception matters.

 

I won't bore you with my entire response (I thanked him for writing, put him in touch with the right people, etc.) but will reproduce the parts of my response that I think may be relevant to this blog…

 

…the first part of my answer is that I am a developer, whose task is to help other developers use and succeed with Silverlight, and so I've spent little of my energy learning about how we stack up feature by feature against other products.  (Full disclosure: I happen to be personal friends with three of the founders of Buzzword, so I've been familiar with their product since its conception, and what they've built is very cool).  

To me, Silverlight 1.1 is not itself a platform, it is a stage in the development of one incredibly important part of the entire .NET spectrum of technologies and tools; albeit one that is relatively new, but rapidly developing. Given how quickly new features are being announced, I'm very reluctant to say (out of my own ignorance) what it will or will not be able to do when we release version 1.1 (let alone version 2!) – we know given the public announcements so far that it will be much more powerful than its current alpha state which is already powerful enough to build some amazing applications (have you had a chance to look at our
Showcase Applications
 

Now, specifically, will you be able to reproduce Buzzword's feature set using nothing but Silverlight 1.1 (Release version) with ASP.NET/AJAX? I frankly don't know – I wouldn't be surprised, but I certainly am in no position to even evaluate the question. It's just too early to answer that. 
 
So let me take a step back, as a developer,  and try to get at what I'd be interested in [when] facing a "fork in the road" decision: do I go with Flex or do I go with Silverlight? I assume your goal is not to create Buzzword, as Virtual Ubiquity has already done that. So you must want to know what you will really be able to do with SL 1.1 vs. with (e.g.,) Flex, and will committing to either technology put you at significant risk.
 There are so many factors in a decision such as this.

I remember; I was an independent consultant/developer for 12 years until I joined Microsoft this year.  Among them (and I don't pretend this is an inclusive list) are what you've already built, what tools you're already comfortable with, the maturity of the tools in any given technology, the spec of any project that is imminent, the investment and long term commitment of the competing companies, the full feature set of the surrounding technologies, the investment you'll make in learning a technology and how quickly that will pay off, and on and on. 

The key with Silverlight is that all of the investment that Microsoft has made in building tools, in security, in reliability for .NET, has been cooked into Silverlight from Day 1. Add to that the fact that Silverlight uses Vector Graphics (and so scales beautifully) and integrates with Visual Studio.

Add to that two (for me) mind-blowing facts: the declarative language (XAML) is the same as used in WPF and WF and the inclusion of the CLR means that anything you can create in XAML you can create (or manipulate) programmatically, using managed code. These bring huge immediate advantages and huge potential. 
  

Sales-A-Holic
 
You see the problem, by the end of the message I was practically selling Silverlight. Some hyperactive enthusiasm leads me right into that trap every time.  I'm excited about Silverlight, I try to convey that excitement and what ends up happening is I sound like a marketing character out of Dilbert.  

What is worse is that it is genetic. My dad, his dad, and all my dad's brothers were salesmen. I may have to go to sales anonymous.  "Hi my name is Jesse and I'm a salesaholic. The last time I tried to convince someone to use Silverlight was 15 days ago"
SilverlightGeek.cs…

while(true)
{
  BuildDeveloperCommunity();
  if (AskedWhySilverlight)
    ReferToMarketing();
}
Closing Resolution
In my house we keep what is called a Tzadakah box. Tzadakah is the obligation one has to help those in the general community who need help (the poor, the hungry, people who haven't backed up their disk since 1980). I hereby pledge to contribute to that box each time I find myself thinking "let me tell you why you want Silverlight" rather than "let me show you how you can use Silverlight well."

About Jesse Liberty

Jesse Liberty has three decades of experience writing and delivering software projects and is the author of 2 dozen books and a couple dozen online courses. His latest book, Building APIs with .NET will be released early in 2025. Liberty is a Senior SW Engineer for CNH and he was a Senior Technical Evangelist for Microsoft, a Distinguished Software Engineer for AT&T, a VP for Information Services for Citibank and a Software Architect for PBS. He is a Microsoft MVP.
This entry was posted in z Silverlight Archives. Bookmark the permalink.