Thursday, July 9, 2009

UI in the Cloud

How do you differentiate as to what is a cloud application and what is a client server application (thin client or fat client). Does it really matter?

There are so many plug ins for the browsers now, along with so many browser incompatibilities I feel nothing much has really changed. You could argue, and I will, browsers are just fat clients. Enterprises have to do so much QA before rolling any web app into production, it really is just a client server app in all sense of the word(s). Sure, the user perceives the application runs in the browser and nothing is installed on the client but that's really a mirage. Under the covers, all sorts of technology is loaded on demand to run client side. And all the browser vendors want to win the browser war...and break the standards - and we know how long this war will go on !

Not only that, but we are YET AGAIN confusing the users with so many different types of web applications that pretty much all behave differently in terms of UI consistency. Even the same applications behave differently in different browsers and the UI for each is pretty much all over the place. My wife is confused as to when and when not to hit backspace (you can lose everything you typed in many web apps if you are not careful), she can drag and drop in GMAIL now but in no other web app she uses but that doesn't stop her trying and getting tied in knots. UI standards are out the window now! Only one sad consistent remains - copy and paste (and even that was left out of the Iphone - for a while - LOL).

So, my opening question, does it really matter? I think it does. This is exactly HOW we created so many legacy applications that we are forced to support today so we have learnt very little. This is great for OpenSpan because we offer capabilities for normalizing and automating cross-application workflows across most application platforms (Fat, Thin, Web, Java, windows, Host or whatever) but thats not the point of this post. Where are we going wrong? I know applications that were written and then rewritten within just 5 years of each other and are now completely legacy today. i.e. no new development but no replacement being built (no IT budgets). I know, because we are bridging them to work with newer technologies. BTW - I said 5 years ago, but we have some users with 30 year old apps and 1 year old apps as well, in exactly the same boat!

I think my point is further validated when you look at the huge difference between web (cloud) applications and their user interfaces. They all seem so different. Take GMAIL. You could fairly argue, it's a terrific UI and Google have done a marvelous job making a dumb browser run what looks to be a very clever RICH client application. BUT - look at the resources GOOGLE has, few companies have the development / QA budgets that Google has (and Enterprises cannot afford to have applications 2-3 years in Beta to iron out bugs!). And to be fair, email is not as mission critical as losing a mortgage payment, medical diagnosis, wire transfer or interest calculation. We are used to losing emails like things get "lost in the post" (or junk folders).

I will write more on this subject I am passionate about (can you tell :) ).. But let me end with this for now. We all talk about how the pendulum swings, about every 10 years, right ? Well, in my view, the next pendulum is someone coming up with the next SUPER 4GL (RAD) development environment that allows cloud applications to be built quickly, full transaction roll-back-roll-forward, deploy anywhere, on-demand, run locally (and with core business logic when connection down) and all, so much more... it might be Silverlight, it might be Chrome or it might be something from nowhere (it might already be here and I missed it :)).. but it'll be here soon!

For me, whatever it's built on, I can guarantee, in a few months or a few years, it'll be another legacy app that'll need my help!

No comments: