Hush! Did you hear that sound? It was the sound of the pendulum of computing models swishing by, and we've just passed through another trend. It's now officially OK to like your rich-client software again. You can love Microsoft Outlook, Lotus Notes, or even your highly functional iSeries GUI interface! That's right! Rich clients are in; Web clients are passe!
After a decade of architecture, invention, and implementation with Web browsers, software designers at IBM, Lotus, Microsoft, and other organizations are all coming to the same conclusion: Rich clients--software clients specifically designed to meet the specific productivity demands of users--are better solutions than standardized Web browser interfaces.
In fact, IBM Lotus is now positioning Release 7 of the Lotus Notes Client as "the ultimate universal rich client." What does this reversal of trend mean to us in IT? Should we be continuing to develop Web Services modules to enhance our information systems? What does this direction portend for our investments in Web portals?
Well, don't remove your IE browser from the desktop just yet!
Time Bandits! Steal from Rich! Give to the Web!
Time machine! Sherman, set the Way-Back to December 15, 1994! Netscape has just introduced the first commercial Web browser, Netscape Navigator 1.0 (code name "Mozilla"), and--according to the analysts--the world of the rich software client is about to end! Who needs a rich client--or even a terminal--when HTML and a Web browser can do it all for free!
Now fast-forward, Sherman, to December 11, 1997! Microsoft has just gotten nailed by the Department of Justice for requiring PC computer equipment manufacturers to install its Internet Explorer on all Windows desktops. How many is that? Microsoft has 98% of all desktop operating systems. It is any surprise that IE has surpassed Netscape Navigator to have the most installed Web browser seats in the world?
Quick, Sherman! Stop the Way-Back! It's November 24, 1998, and Netscape has just been sold to America Online for $4.2 billion. Microsoft's Internet Explorer Web browser has won the war! Mozilla will live on, however! The Mozilla source code has become open source, for use by any application developers for free.
One last stop, Sherman! August 2001! Microsoft has just made its last major IE browser release. That's right! The last major release of IE was almost four years ago! Not only that, but Microsoft has let it be known that it will create no more standalone versions of Internet Explorer. According to sources within Microsoft, the strategy is to tie the functionality of the next Internet Explorer even more closely to the next version of the Windows operating system (code named "Longhorn").
Implications for Browser-Based Application Development
OK! Back to 2005! What does this brief trip through time tell us? It tells us that the era of stability provided by a single Web browser standard--a de facto standard based upon Microsoft's Internet Explorer Web browser--will soon come to an end. It will come to an end when Microsoft is ready to start selling its latest version of Windows.
We already know that Microsoft has opted out of the Sun Microsystems Java strategy for application development, preferring its own .NET architecture. Meanwhile, IBM is focusing on Java 2 Enterprise Edition (J2EE), pouring lots of money into open-source projects, and telling its own people to dump IE for some version of the Mozilla browser!
"So what?" you're still asking. "What's the big deal?"
Well, according to the Gartner Group, over 70% of all software applications that are written today are designed to have a single user interface: the IE Web browser.
Consequently, if the realm of Web browsers suddenly fragments--as it is predicted to do when Microsoft releases Longhorn--the era of the universal Web client based upon the Web browser will come to a close.
Web Client Productivity
One significant consequence of the historical events mentioned above may be a new race for developing a standard client interface for new applications. Users were already dissatisfied with the productivity of the Web browser as a universal standard. They remembered that they were in many ways much more productive with their Windows GUI-based software before every application started using the Web browser as an interface.
Consider, for example, user's productivity with the Microsoft Hot Mail email application compared to the productivity using Microsoft Outlook Express. Hot Mail will get the job done, but it will not do it as quickly or as efficiently as Outlook Express.
Indeed, as companies have standardized user access to applications through Web browser interfaces and then compared their user productivity to the user productivity exhibited when users had similar applications that were designed for desktop use, they've discovered that productivity has actually suffered.
So why did IT choose Web browser clients over desktop clients to begin with? The answer is simple: DLL Hell!
Every time IT rolled out a new version of a custom software application--or upgraded users to the latest version of the operating system--they were faced with thousands of minute installation problems associated with Dynamic Link Library modules called DLLs. In order for upgrades to work, all the associated DLLs of a desktop had to be of a matching upgrade level. However, some Windows DLLs are shared between applications--like reference books in a local library--and if two applications that use the same DLL are at a different level, chaos ensues. The applications don't work properly and sometimes fail to load at all. Moreover, because individual software applications tend to be updated on their own release schedules--not upon the operating system's release schedule--there is no predicting how long it will take an IT person to track down the errant DLL to get the user's desktop system running again. IT calls this process of hunting down DLL problems "DLL Hell."
Web Distribution Model
Web browser interfaces, by comparison, are much simpler to roll out to desktops. They're self-contained, and if they require modules that are not included in the original browser rollout, IT can obtain updates automatically across the Internet, in a variety of ways. As a result, as the architecture of the Internet has matured, and IT has embraced Web clients as a universal interface simply because of ease of maintenance and the simplicity of rolling out new applications. It didn't matter that the Web browser clients were less productive from the user's point of view. What did matter was that they could get their work done!
The Rise of Rich-Client Architectures
Today, the development of .NET and WebSphere--as well as many open-source projects like Eclipse and proprietary application platforms like Lotus Domino/Notes--have shifted the focus of how client software should work. Software architects have come to the conclusion that users need not all be working with their applications using only a Web browser client. However, by the same token, the task of providing users with highly functional tools should not relegate IT technicians to extended experiences in DLL Hell. The architectural compromise has come to be known as a "rich client" approach.
A rich client is a software framework that allows different kinds of software functions to be tied together in a standardized manner to deliver a complex and rich environment for the user. Application programmers develop pieces of the client to perform specific functions as plug-ins, but they do not develop the client software itself. When new functions are required, the client framework itself can be extended without disrupting the plug-ins that were previously installed.
Microsoft .NET as Rich-Client Architecture
Microsoft sees the development of .NET and Web Services as elements of a rich-client platform, and they foresee their next Windows operating system version (Longhorn) as a highly functional--though proprietary--universal rich client.
Microsoft module distribution will be developed through the use of the current Windows server technologies as well as across the Internet using Web Services. In this environment, building an application using .NET will extend the entire Windows desktop outward as the universal rich client. Applications will, themselves, become embedded extensions of the Windows rich-client environment.
IBM's Diverse Rich-Client Approach
IBM, for its part, is approaching the rich-client concept from a number of angles. First, it is using the Eclipse IDE as a basis for universal rich-client development. Eclipse is a good choice because it is an open-source piece of software that supports IBM's goal of adhering to standards. Each plug-in that IBM provides to Eclipse helps the Eclipse framework extend toward the goal of becoming a universal rich client. By relying upon Eclipse, IBM is cross-connecting many of its application development tools while simultaneously extending the universality of the rich-client IDE itself. For instance, IBM Lotus has created a Lotus Designer plug-in that allows WebSphere application developers to use of Notes tools within the Eclipse framework.
IBM's Workplace Rich Client
At the same time, IBM is aiming its IBM Workplace brand as the user's universal rich-client platform. IBM Workplace has a goal of providing connectivity to all IBM WebSphere applications through the WebSphere Application Server (WAS), WebSphere portals, and individual portlet applications created with Web Services and J2EE.
IBM Workplace is, in essence, a "marketing brand" for IBM's vision of the universal rich client in which everything is connected to the user's desktop. In this vision, it doesn't matter what operating system that desktop is: It could be Windows, or Linux, or something else.
The point is, in comparison to Microsoft's vision of a universal rich client (which is the Windows operating system itself), IBM sees the rich client as a cross-platform software layer riding above the underlying OS.
IBM Lotus Notes as a Universal Rich Client
IBM Lotus Notes/Domino is, at its core, an application platform that epitomizes the potential of a rich-client architecture in a constellation of IBM rich-client efforts. How? Let's look at it architecturally.
First of all, Notes/Domino is an application development platform that works on all of IBM's operating systems, plus the Microsoft Windows and the new Sun Solaris operating systems.
Secondly, the Lotus Notes client will--under Version 7 due out this summer--be the primary user interface to Notes email and Domino collaborative products as well as custom-built Domino applications.
Thirdly, the Notes client will have the capacity to receive plug-in modules as well as manage connectivity to all of IBM's WebSphere products.
The goal of IBM Lotus is to deliver a rich-client experience that is extendable and extensible, yet can be moved from one operating system environment to another. Distribution of new applications or modules occurs from a centralized location in an architecture that is highly extensible.
At the same, however, IBM Lotus is not abandoning the Web browser architecture. Instead of extending the Web environment down to the desktop of the Notes user, it is extending the Notes desktop outward as a universal rich client.
In this way, Lotus Notes/Domino is an architecture that demonstrates the advantages of a rich-client environment:
- Highly functional and extendable user interface
- Cross-platform mechanism that delivers centralized applications to any operating system
- Ability to be centrally managed by IT
- High security
- Full connectivity to other applications through standard APIs, Web Services, and other mechanisms
These architectural advantages represent why, at Lotusphere 2005, Lotus company executives were enthusiastic about the prospects of Lotus Notes: It represents one of many potential universal rich clients offered by IBM in its bid for dominance.
Will Web Browsers Go Away?
The current industry shift in focus toward rich-client architectures inspires this question: Will standalone, dedicated Web browsers, used as the primary interface to applications, go the way of the buggy whip?
Perhaps! But more likely is the recognition that the World Wide Web--the format for delivering Web pages--should take up less mindshare as the target for application development by IT. After all, the World Wide Web isn't the entire Internet: It is merely the first truly popular service that was the result of the invention of the Web browser. That initial popularity was quickly followed by the corporate embrace of POP3, SMTP, and Internet email. No doubt, there are other applications that are today gaining similar importance, but our users are still stuck trying to embrace those applications with simple Web browsers. Modernizing that interface is what the rich-client movement is about.
Today, the true potential of the Internet shouldn't be constrained by a Web browser interface. The return of the focus on rich clients will help organizations reach beyond the simple constructs of the Web browser client paradigm. We've just lived through yet another transitional phase in IT application development.
Whoosh! Sherman, now set a course for... Never mind! Let's get out of here!
Thomas M. Stockwell is Editor in Chief of MC Press Online, LP.