Welcome!

.NET Authors: Alin Irimie, Colin Walker, Maureen O'Gara, Reuven Cohen, Data Recovery Software & Tools

Related Topics: .NET, AJAX & REA

.NET: Article

Can You Ever Be Too Rich or Too Thin?

The days of the pure thin client web application are numbered

Someone once said, "You can never be too rich or too thin." I've been thinking a lot about this statement lately, but possibly not in the sense in which it was intended. Specifically, I - like many of you - have been watching the stream of announcements coming out of Microsoft's recent Professional Developers Conference (PDC) with great interest and excitement. As I have watched them, however, I have carefully noted the balance between rich functionality (Parallel Development, User Experience improvements, etc.) and thin client footprint (Web Development, AJAX, etc.) in Visual Studio 2010.

It is my belief that the first developer platform to make parallel computing an inherent, intuitive part of its coding model will win - yes, actually win - the platform wars. As someone who works in an industry with a sometimes overly zealous approach to application performance, I may be accused of having my own agenda here. However, it seems to me that the inability of CPUs to get any faster going forward - only to add cores - represents an enormous change in the expectations of computing technology that we have built up over the last 50 years. Is it a coincidence, I wonder, that the bottom started falling out of technology at approximately the same time that this sad truth about processor speeds was becoming apparent?

I suspect that our entire economy may have gotten used to the idea that every few years would see a whole new generation of software introduced - software that would have been impossible just a few years earlier because the processors available simply wouldn't have supported them. This new wave of software would drive a new round of hardware purchases and hiring of software engineers skilled in leveraging the new tools used to build this new software.

Unfortunately, this pattern stopped when processors stopped their dramatic increases in speed. Software has slowed down along with this. Can anyone honestly say that any version of Windows since XP has been an essential upgrade - or any version of Office since 2000?

A couple of approaches have been suggested to get software back to its exponential innovation rate that existed in the past decade. One of these approaches has been the Web 2.0 phenomenon - thin, web-based applications with zero client footprint that behave in ways so interactive that one might almost mistake them for a rich, desktop-based application. Has anyone noticed, though, how the bar is always silently lowered for these applications, only to be amazed when that bar is cleared? One of the key controls in the AJAX .NET toolkit, for example, is a window that can be dragged at will around the application area. Apparently this is impressive for modern web applications, just as it was impressive for desktop applications in the late 1980s.

For my money, we should be measuring applications by the bottom line of the functionality delivered, rather than the size of the obstacles overcome in order to deliver them. For this reason, I firmly believe that Rich Internet Applications (RIA) fueled by technologies such as Flash and Silverlight will ultimately prove to be the future of application development. Combining the ease-of-deployment of web applications with the power of desktop computing - including multiple threads of execution - the days of the pure thin client web application are truly numbered. I, for one, will not be sorry to see them go!

More Stories By Derek Ferguson

Derek Ferguson, founding editor and editor-in-chief of .Net Developer's Journal, is a noted technology expert and former Microsoft MVP.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.