Thursday, June 28, 2007

Dancing by Silverlight

My company recently posted a brief about Silverlight as we see it. Check it out.

We're really keen on Silverlight for "enterprise applications" (aka "Line of Business" apps).

I've just a few additional opinions to share.

You who know me know I'm impatient with defenders of the browser as host for enterprise applications. Every attempt has been a turkey.

Seriously, I challenge you to show me the browser line-of-business app that is even as half as productive or as functional as a PC app. Google wordprocessing or spreadsheet? Please, spare me. Google's a great company but they can't buy or build a browser-based office application that really works in an office environment (it's ok for grocery lists and the kids homework I guess).

Line-of-business apps are inherently overwhelmingly stateful, interactive, multi-paged, high-touch, workflowed, interrupt driven, etc. Everything the browser is not.

The fundamental premise of the browser app is that the server does the work. AJAX changes the equation only slightly; the moment you move off the page its back to the old "yoo-hoo, is anyone home" request/response paradigm. Do I have to add that it takes skill in about 27 different technologies to write a browser app and the testing/debugging is absurd. The web development effort is 10x for a comparable Windows app.

But I digress ...

"SmartClient" is the way to go because it puts the business logic and data where it belongs: close to the end-user who needs it.

There are two serious obstacles to "smart client": (1) installation, however minimal, is not zero - which means you can't build smart clients for consumers and casual users; (2) corporate paranoids have locked down the PC, effectively blocking any application that puts its foot down outside the browser.

Silverlight 1.1 clears these hurdles by running a reasonable facsimile of the .NET CLR within the confines of the browser sandbox. No installation to trouble the consumer; no footprint to frighten the corporate guardians.

There are a few catches. First, the Silverlight we need (v.1.1) isn't going to be available for at least a year. Second, we don't fully know its limitations (it offers an unspecified subset of the .NET CLR). Third, we're pretty sure its going to be hard to get data in and out except via something web-service like.

Challenges? We love 'em. When the hype dust settles and v.1.1 is approaching release, we (IdeaBlade) are going to have a great offering. We will have a nifty (and easy) solution to the data permeability problem. We've got to work out the kinks (we're likely a year away) but we're confident that you'll be able to write a single application that runs on the PC or in a Silverlight-powered browser (albeit with restrictions). Mark my words.


Murray Gordon said...

Great post Ward. Well said.

- Murray Gordon

Anonymous said... snowaddress apiece awaits