14

Granted that Silverlight may make eye-popping websites of great beauty, is there any justification for using it to make practical web applications that have serious business purposes? I'd like to use it (to learn it) for a new assignment I have, which is to build a web-based application that keeps track of the data interfaces used in our organization, but I'm not sure how to justify it, even to myself.

Any thoughts on this? If I can't justify it then I will have to build the app using the same old tired straight ASP.NET approach I've used (it seems) a hundred times already.

9 Answers9

20

Silverlight has not been designed to build websites.

It has been designed to build web applications that run in a browser.

8

My current job is building a Silverlight business application (as was my previous one) so you could see that as an argument for saying "yes it is for business applications"!

The current application is at its early stages and there are issues with Silverlight (even SL 4) that may cause us problems, but we'll be able to work round them in the short term and address then when new versions are released.

One of the things that I (and my boss) think is that Silverlight offers you a way to build desktop type applications for the web. Ultimately it might not be the best technology for this, but at the moment it seems to be the one that offers the greatest chance of succeeding.

ChrisF
  • 38,948
  • 11
  • 127
  • 168
6

Well, Microsoft recently released a Web version of Office, and there's not a trace of Silverlight to be seen anywhere. Feel free to draw your own conclusions from this.

Mason Wheeler
  • 83,213
3

One good reason to learn Silverlight is that it will set you up for developing apps for the Windows Phone 7 platform. I can't offer you any hot tips on how to justify using Silverlight for a web project, but that's one more reason why it's a good idea for you to try to do so. :)

Carson63000
  • 10,490
3

Silverlight is a great platform for doing line-of-business applications. You can get the rich UI experience that users really like, while not having to go through the development pain of getting ASP.NET MVC, JavaScript, jQuery, Modernizr, etc. to all play nice together. My experience has been that you can get much richer UX with Silverlight with a lot less development cost. It is possible to create equivalent UX with HTML and friends, but it requires a LOT more libraries and a lot more headaches.

I recently have been involved in a couple large projects to create internal LOB apps with Silverlight and they were smashing successes. We created great UIs that the users loved, and the developers all love the platform.

The downside of Silverlight at the moment is that Microsoft has been ambiguous lately about its future compared to their HTML 5 endeavors. My guess (hope) is that Silverlight will continue to be invested in by MS and will stay ahead of the curve of HTML 5 in terms of features and ease of development. But Microsoft needs to come out and tell us what their plans are.

I have a blog post that relates to this topic if you care to get more detail.

RationalGeek
  • 10,077
1

I am expecting that in a few years, HTML5, CSS3, and modern JIT-enabled Javascript interpreter and other technologies like WebM and WebGL will outflunk both Flash and Silverlight. Rich web applications will be written directly in HTML/CSS and Javascript, instead of piggybacking on Flash/Silverlight plugins.

Lie Ryan
  • 12,496
1

A full-frame Silverlight line-of-business app is basically a rich .NET client that is run when a user browses to a web page. If you are familiar with rich client programming in XAML/WPF and you don't want to deal with web programming, Silverlight essentially provides a great deployment story - so great that it's making people wonder why they would ever develop WPF rich clients unless they needed really incredible performance, super-flashy 3D graphics or features unique to WPF and excluded from Silverlight, which most LOB apps don't.

nlawalker
  • 2,962
  • 22
  • 21
1

I've been working on Silverlight recently, and have to say that I consider Silverlight to be only for business. (excluding Silverlight for Windows Phone, which is another kettle of fish)

I am aware of a locally based, national retailing company who have their online presence - comprising their online store to which they hope to drive a large portion of their business - completely written in Silverlight. They think it's great! It does look fairly good, and is better than a Flash site in my opinion, but they are missing the elephant in the room: the Silverlight install base is dismal. As more people upgrade to Windows 7 / Windows 8, and IE8 and above, then the install base will increase - but for the guy at home still running XP or Vista and IE7, why would you install some program just so you can view one website?

I think using Silverlight on your external website is a significant fail. It won't run on mobile devices, and won't run on a huge proportion of desktops and laptops. It's like advertising in a foreign language.

The opposite is true in business. Users don't pick and choose which browser they use - it's typically determined by the business. Everyone uses the same software. You can roll out Silverlight to the entire business. At the same time, business loves intranet (go figure) and adore Sharepoint and various other 'online collaboration tools'.

So where does Silverlight fit in? It's a no brainer. Silverlight provides a much better user experience (in terms of looking nice) than ASP.NET WebForms, and isquicker to develop with than ASP.NET MVC. Admittedly you can do amazing things with web technologies these days, but .NET has always been about balancing the end product with speed of development. Silverlight is WPF that can run in your browser. That has a huge business use.

0

A framework such as CSLA.NET will provide you with the capabilities to write an enterprise-wide application with Silverlight. It allows you to communicate between client and server versions of your software, and run all necessary database operations.

Developing your app in Silverlight will allow make an interface far superior to what is available in ASP.NET, but more importantly, you will be able to take advantage of the latest in RIA technology. This may not make as much of a difference on smaller projects, but it is definitely worth learning.