Archive

Posts Tagged ‘Silverlight’

RIA Wars: Silverlight vs. Flex

I just love it when new technologies make my working hours as a systems architect and developer more productive. Granted, sometimes it takes a while before I catch on. I’m not really an early adopter (got my first iPod last christmas), but when I see something that can help me deliver a better product to my clients, you have my complete attention.

So about once a year, I venture away from my world of C#, business logic and backend systems and into the wonderful world of frontend and user interface systems, thinking that by now, after all these years, someone will have invented something that actually works. It was time for that again this weekend, and I must say it’s been a more interesting journey than usual.

I normally start looking at XHTML, CSS and Javascript, and every time I feel immediately disappointed: These technologies pretty much still look and feel the same, no matter how much IDE candy, code-completion and drag-and-drop you throw at it, and still behaves wildly different from browser to browser.

Next on my list is to download the lastest version of Flash whilst hoping that this time the good folks at Adobe have stopped smoking whatever it is they were smoking when they invented Lingo and have produced a real development toolset. Something that looks and feels like it could actually be used for serious development work. But this time, I didn’t get that far. One of my colleagues had for weeks been talking about something called Silverlight from Microsoft, which everybody was describing as “a Flash killer in C#”.

Silverlight

Silverlight turns out to be a very interesting and promising technology. It certainly looks like it was meant to be a “Flash killer”: You download a plugin for your browser and then you are all set to view so-called Rich Internet Applications (RIAs) that contain movie clips, vector graphics and all sorts of cool effects.

The thing is, Silverlight uses a declarative XML-based language called XAML and you code the entire thing in .NET. Yes, that means C# code which gets compiled and runs in a special, stripped down CLR inside the browser. Very cool.

But it gets better: It not only works in Internet Explorer, it also works in Firefox and even Safari on Mac. And the Mono guys are hard at work on a Linux version called Moonlight, apparently with some support from Microsoft.

I promptly downloaded the bits for the alpha version of Silverlight and the toolkit for VS2008 and set out to create something worthy of the RIA buzzword. And after playing around with it for some hours, here’s my current take on Silverlight:

  • – It’s really fun and easy to learn, and it really is C# on the client with vector graphics. Woohoo!
  • – It looks and feels like a real development toolset, because it’s based on VS2008, XAML and C# (or VB if you are slow).
  • – The IE7 browser plugin fails some of the time, both the released version 1.0 and the alpha version 1.1.
  • – The codebase and documentation for the 1.1 alpha is far from complete, but that’s to be expected.
  • – There are tons of features that I would love to see included, and from what I can read in the forums, I’m not alone.

So – Silverlight is something of a work in progress. They expect to have a new beta out in Q1 2008 (renamed to “Silverlight 2.0″), which should contain a lot of new features and with a Go-Live licence. My guess is that Silverlight would then become a “real” product during the summer of 2008. But the question remains: Is this a “Flash killer” ? Time to download that new version of Flash and have a look.

What the heck is Flex?

As it turns out, I must have been living in the land of Microsoft for too long, because I had never heard of Flex. Flex is Adobe’s development toolset for building RIAs, and guess what? It doesn’t look anything like Shockwave or Director, it doesn’t run on Lingo and most importantly, it doesn’t suck at all.

With Flex (version 3 beta 2), you can compile applications using an open source SDK if you have too much free time on your hands, or you can be smart and use Flex Builder, an IDE based on Eclipse which works like a charm! The end result is an SWF-file, which runs in any browser-based Flash player, or in a desktop application using Adobe Integrated Runtime (AIR). Completely cross-platform.

Flex is based on MXML, which looks suspiciously like XAML – or is it the other way around? You write code in ActionScript 3 (AS3), which is a script-language that is based on ECMAScript. Now where have I heard about ECMAScript before? Oh yeah, that’s right. It’s Javascript. Damn.

But as it turns out, it’s not that bad. Sure, things are not strongly typed, there are no generics, there’s no way to count the number of elements in an associative array except for the stupid way, etc., etc., but on the plus side AS3 and Flex as a whole is extremely easy to work with and well geared towards quickly and painlessly writing complex RIAs. And let me tell you: The feature set is no joke, and neither is the community around the product. Practically anything you can think of, someone else have already wrestled with and solved in Flex a long time ago. Need to integrated with something other than a simple web service? Or use sockets to communicate directly with someone? Or how about streaming and processing video or audio? Go right ahead, it’s all there.

I could go on.

And the Winner is..?

Perhaps Silverlight really will become a Flash killer – but I don’t think it’s going to happen over night. Flash players are (according to Adobe’s figures) present on 97% of desktop computers and well on the way to be a leading platform for mobile devices as well. Silverlight won’t get there for at least 12-24 months, if at all.

So for now, even though I do miss the consistant and strongly-typed world of C# and .NET, Flex is the easy choice for RIA development.

Let me hear from you. Am I missing something? Do you agree or disagree with my short analysis? Comments, please!

Categories: Adobe, Flex, Programming, RIA Tags: , ,

Success story of initRIA

initria1.jpg

Well, formally conference title was initRIA so, please might be expecting more talk on RIA and around technology. But most of the people talk on flash platform except Rakshith who talk on ajax. Session started with Raghu’s presentation and ended with “Birds of a feather” under dim light.

Mrinal had organized my session earlier but I reach venue very late [my mistake -( ] so, he had rescheduled all sessions and put me on second half. People enjoy first half with Raghu, Rakshith and Yash’s session very well.

In lunch break we had dominos pizza with coke :-). Once again people grab there seat and show started with InstaColl’s presentation. All the session was amazing and well organizes but I really delighted with InstaColl’s presentation. They demonstrated their upcoming online office suite. take a look this, this, and this. It was so good that every one clapping in during presentation.

It was really nice time. I personally appreciate Mrinal and all other head involve in this success of initRIA.

Thanks adbul for caught initRIA on camera.