Client/Server: The Next Big Thing

October 27th, 2006 Leave a comment Go to comments

If you wait long enough, those clothes you wore last year will eventually become fashionable again. The same seems to be true in technology.

Not so many years ago, mainframe computing was in style. Centralized computing resources, virtualized into independent computation units, were used to drive dumb terminals. Then, the need for richer client interfaces drove the move to client/server computing. Typically, the data was left on the centralized resource (along with some business logic in stored procedures) while much of the business logic moved out to the client. But, as networking technology improved, Internet/Web technology was born, and the burden of maintaining clients on a large number of PC’s grew, the heavy lifting was again pushed back to the server. Web servers and application servers provided the almost-centralized computing while the browsers were the dumb terminals of the Internet era.

This was a great model… for a while… Soon, the hardware required to serve the web-based applications created server-sprawl that became almost as difficult to deal with as the fat client distribution and maintenance problem we were solving. Hooray for server virtualization! Virtual machines built on top of newer hardware designed to be virtualized, allow us to consolidate our server side computing into virtual independent computational units which feed data to the lightweight web browsers. Hmmm. This sounds a lot like the ol’ mainframe with a bigger faster network. But wait, there’s more!

As it turns out, a “dumb browser” wasn’t as useful as we’d like it to be. Bring on Web 2.0! Flashy effects and more fine-grained communication with the server have added more client-like functionality to the browser. But, we’re pushing the limits. We’ve taken JavaScript quite far and I suspect developers will start to feel the need to go beyond the browser to provide that ultimate user experience.

…much like when we left the dumb terminal for the fat client…

There are examples of this today: iTunes, Google Earth, various IM clients, and all the eclipse-based applications emerging from big software vendors. These are all applications that benefit from a rich client interface – richer than what is available in a browser. But, this is not yet the standard. Web 2.0 is today’s standard. But, the new client/server is coming – C/S 2.0… It will be the next big thing.

What will C/S 2.0 look like? It’ll look a lot like iPhoto with a Flickr plugin, or, iTunes. What will drive it? A need to work with large media (photos, music, videos, etc.) and a need to communicate with many servers at once – an email server, Flickr, iTunes, Google Maps, and so on. You can’t edit a 2G video clip with a flash plug-in or JavaScript. And, the general purpose nature of a web browser can’t allow arbitrary server connections.

But, fat client development, distribution, and maintenance drove us to the web. How can it entice us away from our browsers? What will enable the migration? Cross platform client development tools and platforms such as eclipse make it easier than ever to make a rich client application. Java Web Start and other application distribution utilities make it easier than ever to push changes out to PC’s. The obstacles have been overcome. These solutions are in use today. The beginning of C/S 2.0 is here.

Categories: General Tags:
  1. No comments yet.
  1. No trackbacks yet.

Switch to our mobile site