I can write my application in classic ASP but do I really want to?

I can write my application in classic ASP and satisfy all my requirements but do I really want to. There has been a lot of hype around Silverlight vs. HTML5. I started into the conversations with “The Future of Silverlight”  from the Silverlight Team Blog and continued on to “Is Silverlight becoming a niche technology?”.  There are some great arguments that for each technology but the piece of the argument that is missing is choosing the correct technology for the situation.  It all boils down to the business requirements, technical infrastructure restrictions, the audience, and the comfort level of the development team.

The Business Requirements

If my requirements call for an application that needs a web component, a desktop component, a mobile component and offline capabilities. I am going to want to minimize the code that I write. In this situation I would probably go with Silverlight. If all I need is a web component then I can HTML (HTML, JS, CSS) and be done with it. You should approach each situation with the mindset that I am going to choose the best tool for the job.

Technical Infrastructure Restrictions

First and foremost if an organization won’t allow the Silverlight plug in to be installed the obviously you can’t use Silverlight.  The niche article points out that there are great JavaScript frameworks that make developing HTML (HTMl5) applications easier.  The problem with that is most of them are open source.  I worked for an organization that did not allow the use of any open source (business reasons not technical) in their product.  Who wants to re-implement JQuery, with all of the different browser nuances,  in their spare time. 

The article from the Silverlight Team brings up a good point around HTML5. When is the standard going to be finalized and published? How long will it take browser manufacturers to implement the standard and how standard will it actually be across the different browsers (here is a hint how standard is it now)?  Finally how long will it take to get users to download the new browser (my Mom would still be on IE6 if it wasn’t for my last visit a year ago)?

Developer Comfort Level

My final point centers on the comfort level of the development team.  If your team is not use to writing JavaScript and you can use those nice frameworks that abstract out the complexity (see above for reason) why would you want to extend your project timeline learning JavaScript or even worse using the cut and paste Google snippit editor.  On the flip side if you are a PHP developer you are not going to drop everything to run to Silverlight.  There was a commenter on in the niche article that stated:

“Silverlight share the same problem as any of .net technology…it is not reusable…if you put your time and energy, to learn some .net technology, for example asp.net, you can hardly reuse when learning some other web technology, for example php”

Really?  When I use .NET technologies I separate my concerns, try not to repeat myself and all the other buzz words used to describe a great developer.  My point is that if you follow good coding practices switching to another language/framework mean learning the syntax and capabilities of those frameworks.  One of the main jobs of a developer learning the capabilities of frameworks and applying those capabilities to the problem at hand.  Anyone can write code, it takes practice and skill to write an application!

Conclusion

It is great that these debates are ongoing.  They help bring facts to the surface that we might not have otherwise known but we can’t loose site of the fact that the situation should dictate the technology.

This entry was posted in .NET, C#, Computer Science, HTML5, Silverlight, Software Architecture. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s