Smart Clients = Smart Business

This guest article from PJ Johnston explains what smart clients are and the benefits of this technology. It’s followed by a Q&A with Ramon Ray.
Paul (PJ) Johnston, CEO and President of Entellium
Are you a deer in the headlights when it comes to the Internet Browser? It’s understandable when Google is portrayed as the savior of the world. No one questions the merit of the browser, but software advances at a wicked pace. Today you can have the best of both worlds: business software that’s as easy to deploy and use as a browser with offline access and a superior user experience.
Back in the day, as my kids would say (think 1960-1980), there were no personal computers – only mainframes (servers) and dumb terminals (workstations). Everything was dependent on the server – including the interface and the database. This was great for developers and network administrators who could instantly update programs without installing new software on each terminal. But businesses suffered because the possibility of change was limited and business people didn’t have control.

The advent of the personal computer (PC) in the early 1980’s changed this. The PC put the interface on the workstation, the database on the server, and business rules anywhere in between. This was great for users because it created a much richer user experience, but developers and network guys had more to manage and support.
The World Wide Web was born in the 1990s with the incredible benefit of instant access to information for anyone with a browser. This innovation also brought us back to the original mainframe/dumb terminal model and the same limitations. Although stuff like HTML, CSS, JavaScript and AJAX are constantly improving, the interface capability is still very limited, much slower, and doesn’t recognize simple features like undo or redo.
Today, with Smart Client technology, users and developers get the best of both worlds. Smart Client applications – similar to Apple iTunes or Microsoft’s Outlook – can be run from the Internet, an Intranet, a network share drive, or on the workstation itself. Smart clients do not have the interface limitations of a webpage, and require no installation or worrying about having the current version because components are downloaded automatically as needed.
Smart clients make sense because they enhance productivity as a result of their clear speed advantage, a richer, easier-to-use and manipulate interface, and the ability to work seamlessly offline, such as on an airplane. There is also good news economically as smart clients are no more expensive to deploy and manage than pure browser applications.
An important new consideration in business is sustainability and smart clients win here too. They are greener than pure web applications because they don’t need server farms to make them work. In 2005 (the latest figures I could find) the total electricity bill to operate data center servers and related infrastructure equipment in the United States was $2.7 billion, compared with $1.3 billion in 2000. Worldwide, the total bill was $7.2 billion in 2005, compared with $3.2 billion in 2000.
Looked at differently, U.S. data center power consumption in 2005 was equivalent to about five 1,000- megawatt power plants, or five typical nuclear or coal power plants. Smart clients reduce the need for such data centers and server farms.
Smart clients have too many advantages to ignore. Maybe it’s time to turn the headlights off and think beyond the browser for your business software applications.
What applications are best suited to be a smart client?
Where there are high frequencies of:

  • Disconnected working…offline access is built-in to the smart client, whereas browser clients have a clunky “My Briefcase”-like experience
  • Poor user adoption….smart clients give you much more flexibility for an immersive UI that draws the user in
  • Speed is of the essence…smart clients run on the desktop, so the processor and RAM of the PC can be used to accelerate page loads and views of data

What about widgets?

Widgets (specifically on Mac’s Leopard) and Gadgets (specifically on Vista) are smart clients in the sense that they run on the desktop, but pull information from the Web. They are the simplest example of a smart client. Some applications, such as iGoogle, may conjure up a similar idea of widgets and gadgets, but since they run in a browser are not by definition smart clients.
Is Google gears a part of this shift to smart clients?
Not really. Google gears is an added layer of technology for browsers that enables easier offline viewing of data inside of a browser. It is an their attempt to “fake” smart client-like capabilities inside of a web browser. Google’s strategy is very browser-centric, since that enables them to operate independently of the OS…cutting Microsoft and Windows out of the value chain, something long-speculated as a goal of Google’s.

Can any developer make a smart client or is this a specialty?

Any developer proficient in the Microsoft .NET framework and Visual Studio can build a smart client. Rave CRM uses Windows Presentation Foundation (WPF), the most engaging and cutting-edge UI technology for smart clients…WPF is very specialized, but smart clients in general are not. Developers can also build smart clients for Windows using Linux. RightNow, another CRM company specializing in call centers, has used this strategy. The tricky part for developers is understanding all the nuances of the hardware environment (OS version, firewalls/proxy servers, items running in the task tray) and how it impacts the performance of the smart client. Compared to the browser-only world, this is the more complex path. But it is the best thing for some markets, as mentioned in item #1.