Tales about Aviation, Coaching, Farming, Software Development

Client-Server Computing: The Future Web?

For some time I've been waiting for a headline like this one on InfoQ. If you are old enough, then you've probably worked with classic client-server applications and don't believe that the web browser with tons of JavaScript is the ultimate solution to all computing problems.

Those modern browser are nice and can do a lot of things. But there is nothing that comes close to a real desktop application, which is not restricted to the browser's sandbox, by default has a rich user interface and can take advance of all the capabilities the hardware it runs on has to offer. A browser is just another form of an all-purpose terminal application. It's like a VT100 terminal app - just with graphics ;-) And VT100 was introduced in 1978. Of course you can pick you favorite terminal type for comparision. There have been plenty of them - just as browser rendering engines.

It would be blind to ignore the benefits of a JavaScript enhanced browser though. You can create an application with a rich user interface that is accessible from an extremely large selection of devices running many different operating systems. DHTML/JavaScript is what brings them all together, which is good.

But DHTML/JavaScript is not the solution for each and everything and trying to push the limits of a platform aimed at solving another problem is usually a bad idea. Instead a server application, which simply exposes a RESTful API and serves platform specific applications running on client devices seems to make sense to me. Now that the iPhone SDK is out one can create a client that provides a native UI and has access to all features the hardware offer. So there is a mobile solution. For desktop systems a native looking and feeling Java Swing application seems like a good choice. There are many different ways. What counts is that one does not limit the user experience to a web browser on steroids ignoring all the existing and stable platform choices. Ignoring that seems to me like intentionally going back in time and throwing away the progress that has been made.

Update: Here is another post with the same notion.

This article has been posted to social media sites. There might be comments. Just follow the links: