Search
Lori MacVittie - Two Different Socks
You are here: DevCentral > Weblogs

posted on Monday, July 12, 2010 4:02 AM

Web applications that count on the advantage of not having a bloated desktop footprint need to keep one eye on the scale…

A recent article on CloudAve that brought back the “browser versus native app” debate caught my eye last week. After reading it, the author is really focusing on that piece of the debate which dismisses SaaS and browser-based applications in general based on the disparity in functionality between them and their “bloated desktop” cousins.

quote-leftWhy do I have to spend money on powerful devices when I can get an experience almost similar to what I get from native apps? More importantly, the rate of innovation on browser based apps is much higher than what we see in the traditional desktop software.

[…]

Yes, today's SaaS applications still can't do everything a desktop application can do for us. But there is a higher rate of innovation on the SaaS side and it is just a matter of time before they catch up with desktop applications on the user experience angle.

When You Can Innovate With browser, Why Do You Need Native Apps?, Krishnan Subramanian 

I don’t disagree with this assessment and Krishnan’s article is a good one – a reminder that when you move from one paradigm to another it takes time to “catch up”. This is true with cloud computing in general. We’re only at the early stages of maturity, after all, so comparing the “infrastructure services” available from today’s cloud computing implementations with well-established datacenters is a bit unfair.

imageBut while I don’t disagree with Krishnan, his discussion reminded me that there’s another piece of this debate that needs to be examined – especially in light of the impact on the entire application delivery infrastructure as browser (and browser-based applications) capabilities to reproduce a desktop experience mature. At what point do we stop looking at browser-based applications as “thin” clients and start viewing them for what they must certainly become to support the kind of user-experience we want from cloud and web applications: bloated desktop applications.

The core fallacy here is that SaaS (or any other “cloud” or web application) is not a desktop application. It is. Make no mistake. The technology that makes that interface interactive and integrated is almost all enabled on the desktop, via the use of a whole lot of client-side scripting. Just because it’s loaded and executing from within a browser doesn’t mean it isn’t executing on the desktop. It is. It’s using your desktop’s compute resources and your desktop’s network connection and it’s a whole lot more bloated than anything Tim Berners-Lee could have envisioned back in the early days of HTML and the “World Wide Web.” In fact, I’d argue that with the move to Web 2.0 and a heavy reliance on client-side scripting to implement what is presentation-layer logic that the term “web application” became a misnomer. Previously, when the interface and functionality relied solely on HTML and was assembled completely on the web-side of the equation, these were correctly called “web” applications. Today? Today they’re very nearly a perfected client-server, three-tiered architectural implementation. Presentation layer on the client, application and data on the server. That the network is the Internet instead of the LAN changes nothing; it simply introduces additional challenges into the delivery chain.


THE MANAGEMENT and MAINTENTANCE DISTINCTION is NO MORE

But Lori! Desktop applications require installation! They require maintenance, and support! They are more costly! They are evil! An ancient horror that we have worked hard to eradicate from the face of laptops and desktops everywhere!

Let’s get a grip on reality, shall we?

As more and more of that presentation layer logic moves into the client – the browser, the desktop – those same issues are going to arise. Perhaps not on the same scale, but they will arise. When you start relying on libraries – frameworks like Prototype and XAJAX and the like – to provide the underlying framework through which all that interactivity and cool functionality is achieved, you are basically installing software. It’s just as hidden from the end-user as much of the desktop software, at least in an enterprise setting. It still requires different-browsersmaintenance and support and oh how problematic is the support! When an AJAX call goes “bad” it’s not uncommon at all for a web application to fail to provide the means by which the end-user is notified or that updating can be “restarted”. At some point that’s going to generate a support call to someone, and troubleshooting a browser-based application has got to be the most miserable experience on the face of the earth. You don’t have – can’t have – an exact duplicate of the user’s environment because, well, you may not have the same plug-ins installed, or the same version of the plug-ins. You may not be accessing the application over the same network with the same underlying infrastructure that may or may not be causing issues. You may not even be running on the same operating system – or device. But you’re still going to have to troubleshoot it and figure out what’s causing the problem somehow.

Good luck with that.

I’m not saying the evolution of the browser into the modern-day desktop – and that is what is happening – is a bad thing. But I am pointing out that at some point the same issues that once made us look upon browser-based applications as a godsend will crop up and cause the same kind of headaches for IT and end-users and in some cases those headaches will be migraines that never existed when IT had control over the environment.

The days of SaaS and “web applications” claiming an almost moral superiority over “bloated desktop applications” are over. They went the way of “Web 1.0” – lost to memory and saved only in the “wayback machine” to be called forth and viewed with awe and disbelief by digital millennials that any one ever used applications so simple.

Today’s “web” applications are anything but simple, and the environment within which they execute is anything but thin. 


Related Posts

Follow me on Twitter    View Lori's profile on SlideShare  friendfeed icon_facebook

AddThis Feed Button Bookmark and Share



Feedback

7/12/2010 5:54 AM
Gravatar Re: Saas web apps installing specific files on your system, see all the hubbub around HTML 5... The first swipe at some of that functionality can be seen with Gmail offline email functionality. Right now it relies on Google Gears, which is native in Chrome, but requires an install on any other browser. My personal experience thus far with this has been horrible, and in a small non-profit org that I support all who have used Gmail Offline access have had one or more issues over time.

For other simpler issues, a few tools to help debug these kinds of scenarios are fiddlercap (for your windows clients) or the high dollar solutions like Tealeaf. Before web2.0 and AJAX got big I worked at a firm that used Tealeaf and is was spookie to see what it could tell you.

Now the pockets and filled with a lot more lint and Tealeaf is not an option, so often times I send our internal clients to the fiddlercap site and have them reproduce the event with FC running. Fortunately most of these people are internal customers, so it makes debugging a little easier than dealing with a customer who may or may not be cooperative.

Hope this helps.

Carl B
Carl B
7/12/2010 1:39 PM
Gravatar The guys over at DynaTrace Posted a similar entry today that can show how various IE addons slow things down. blog.dynatrace.com/.../how-to-identify-ie-add-o...
Carl B
7/13/2010 3:11 AM
Gravatar The fallacy even amongst experts in the field is astounding. You're spot on, thanks for this post.
Florian
7/13/2010 5:44 AM
Gravatar I think in this regard, we are already living in the future. Look to the large enterprise "web-based applications" like Oracle, Siebel and the like. They are all effectively old school client server and just happen to use a browser. Siebel in particular used to be (haven't looked recently) to be incredibly picky about what browser/patch/plugins you had to work properly. With the proliferation of RIA options including such as Flash/AIR, SilverLight, Google Gears and the like, that sort of environment is going to continue to bleed over into SaaS market.
David Mortman

Let Me Know What You Think


Please use the form below if you have any comments, questions, or suggestions.

Title:
 
Name:
 
Email: (so we can show your gravatar)
Website:
Comment: Allowed tags: blockquote, a, strong, em, p, u, strike, super, sub, code
 
Please add 1 and 8 and type the answer here:

Blog Stats

Posts:979
Comments:1685
Stories:0
Trackbacks:583
  

Image Galleries

  

Application Delivery

  

Cloud Computing

  

Random

  

Security

  

Chat Catcher

82,243 Members in 102 Countries and Growing!

Join DevCentral Today!

About DevCentral

DevCentral has been a successful, thriving community for many years. We have always strived to bring you the best technical documentation, discussion forums, blogs, media and much more that we can.

So dive in, get familiar with DevCentral. We hope you like it, we hope it makes your job easier, and lets you get that much more power out of the community. To learn more, make sure to check out the Getting Started section. And if you have any problems, or think something could be easier to use, drop us a line to let us know.

Got It !

We've received your comment and transmitted it directly to DevCentral HQ.

Thanks for taking time to let us know what's on your mind. At DevCentral | Community Matters!

Get In Touch With Us

Have questions, suggestions or just want to get something off your chest?

Use our handy form below to Direct Connect with DevCentral Mission Control.

Send Us Feedback       or