For those of us who have developed applications on the Notes/Domino platform over the years, the memory of the transformation of the Notes architecture into its current incarnation sometimes reveals confusion. Where did it come from? How did it get to be what it is today within our organizations? Where is it going?
If you go to the IBM Lotus Web site, you see nothing about Lotus Notes or Domino. Instead, you find a marketing bonanza about IBM Lotus Workplace, a suite of products that includes messaging, document management, collaborate applications, instant messaging, e-learning, and the promise of much more.
Yet if you dig deeper by going to the IBM Lotus Domino home page, you find that Domino and Notes is a thriving pair of products and, further, that IBM Lotus is in beta 2 testing of Release 7.0.
So what gives? Should we be concerned about our investments in Domino and Notes? How much of IBM's marketing focus upon Lotus Workplace is re-branding, and how much of it is new product? And what about our investments in Domino as a Web application server? With IBM stressing its WebSphere Application Server (WAS), where does Domino fit in today?
Perhaps understanding the history of Notes and Domino will help us appreciate how our investments in Notes/Domino application development will be leveraged into the future.
The Deep Past of Lotus Notes/Domino
A little history goes a long way. But the Notes/Domino history stretches all the way back to 1973 to the University of Illinois, where the Computer-based Education Research Laboratory (CERL) developed a primitive program called PLATO Notes. Three years later, CERL released PLATO Group Notes, and one of the people who worked on the project was a man named Ray Ozzie, who went on to found Iris Associates in 1984 and developed the first real version of the modern Notes product under contract to the Lotus Corporation.
Release 1 of Lotus Notes shipped in 1989 and was an unusual success. During its first year, Lotus sold more than 35,000 copies of the messaging software. In fact, so successful was the product as a communication platform for corporations that the focus of Release 2.0 quickly became scalability. Companies who used the messaging platform said that the Notes software needed to support up to 10,000 users. In addition, these customers said they also wanted to use the Notes platform to integrate it with internal in-house applications. This was a key development strategy for Iris, because it positioned Notes not only to be a messaging platform, but also to have the capabilities to become a software development platform.
Iris delivered Release 2.0 in 1991, with a C language API and a built-in formula language modeled after Lotus 123 spreadsheet @Functions. It was a monumental release that occurred just as the explosion of networked PCs was beginning.
The First Windows Notes Servers
Today, we think of Notes first as a product that came out of the PC revolution, but the first real Microsoft Windows Notes server for NT didn't arrive until 1993 with Release 3.0 of Notes. Prior to this, Notes servers existed primarily in the UNIX environment, where the larger corporations had major investments in hardware with plenty of horsepower, and on Novell NetWare servers. The integration of Notes messaging databases with custom UNIX-based applications was already a fact of life for much of the business world. Transforming that power into an affordable Windows-based server program opened a whole new world of affordability to Notes. By the time of R3, more than 2,000 companies had implemented the Lotus Notes messaging platform with more than a half-million client users. These figures were to grow substantially.
In 1994, Lotus bought out Iris Associates, incorporating its development team into the Lotus Corporation. Analysts now see this as a consolidation move by Lotus to make the company more alluring to potential investors. And, in fact, the following year, IBM bought Lotus specifically to obtain the Notes technology for its portfolio. Analysts then speculated that IBM wanted a new, smaller messaging platform that it could market to customers in lieu of its PROFS mainframe messaging system. Indeed, because the Notes server engine was written in the C programming language, the Notes architecture was ripe for porting to all of IBM's operating system platforms.
At first, IBM let Lotus run its own show, supplying technical resources to bring out Notes Release 4.0 in 1996. Included in R4.0 was a new programming language unique to Notes called LotusScript.
LotusScript was an object-oriented scripting language that created a new level of complexity for traditional Notes database developers, but it offered a whole new realm of opportunity for creating robust and scalable Notes messaging and workflow applications. At the same time, Notes moved from a proprietary messaging protocol to Internet Protocol standards for email and Web serving. For developers, this was a godsend, allowing them to fully utilize the Notes architecture as a development platform for third-party applications.
Domino: The First True Web Application Server
Then, in December of 1996, IBM Lotus released Notes/Domino 4.5. The client software retained the Notes moniker, but the Notes server was completely transformed into one of the first Web application servers. The Domino server engine was an astounding success. It could directly publish Notes documents to the Internet on the fly, transforming proprietary Notes databases into HTML for the Web with its own HTTP server. It couldn't have happened at a more auspicious time, as companies rushed to embrace the Internet.
Meanwhile, IBM positioned the Notes client software as a personal information manager (PIM), competing against the first incarnation of the Microsoft Exchange PIM. (Domino server software was seen as competing against the Microsoft Exchange server.)
However, this separation of client (Notes) and server (Domino) software created some confusion in the minds of some customers: Was this product called Notes? Or was it called Domino? Even today, some managers call the combined product suite Notes/Domino--even if they are not using the Notes clients in their shops.
The Apotheosis of Domino
In a parallel time frame, Lotus was also busy porting the Domino server to as many operating system platforms as IBM would allow. The marketing point was clear: Microsoft Exchange server could run only on Microsoft Windows NT. By comparison, IBM was enabling Domino to work on any platform, providing it with unusual scalability.
In 1998, the first native port of the Domino server hit the AS/400, extending the Domino server to one of the largest arrays of operating systems in the industry, including Windows NT, UNIX, NetWare, OS/2, and OS/400. At the same time, the Notes client was reaching Windows 95, Windows 98, Windows NT, Apple, and UNIX desktops.
During the heady days of the dot-com bubble, Lotus marketing was stressing the Notes/Domino combination as a groupware suite and selling it to executives as a collaborative Knowledge Management (KM) engine. Domino, IBM Lotus said, was the future of collaborative information processing, turning the workflow of the corporation into messages and documents that moved at the speed of light across the Internet.
Using the basic Notes document database structure, Lotus brought out bundled versions of specific applications for document management, e-learning, instant messaging (SameTime), and even e-commerce products--each using the Domino server as a hub.
The R5 release of Notes/Domino, which began shipping in 1999, further re-bundled various parts of the Lotus Notes/Domino brand into a variety of product groups. Now, Notes/Domino was not only both a workflow and email messaging platform with Internet Web serving; it was also an instant messaging platform, a learning tool, a document management system, and more. There was even an AS/400 server dedicated to the needs of delivering Notes/Domino messaging and applications to small-business environments. Called the AS/400 "Bumble Bee," the server helped to keep AS/400 sales alive in an extremely competitive server market.
But there was a problem deep within IBM marketing. Lotus Domino had begun to compete for the customers' mindshare against IBM's own new grand WAS, a server that was based on IBM's continuing investment in the Java 2 Enterprise Edition (J2EE).
For many medium-sized organizations that had invested heavily in Notes/Domino development, it seemed that IBM was sending one message about the WebSphere Application Server (WAS) while IBM Lotus was sending a different message about the Domino Web application server.
Meanwhile, back in Lotus Development, resources were getting stretched as new Internet technologies were materializing. How was Domino--a proprietary server technology--going to handle Web Services? What about XML? And--the big question--how was Domino going to keep up with IBM's long-term goals of open standards? After all, the Notes database architecture was completely closed and proprietary.
IBM Software seemed to be at a crossroads: On the one hand, the Notes/Domino product was a proven, rapid-deployment development platform, perfect for small-to-medium organizations that needed messaging and collaboration services. On the other hand, WebSphere was a highly successful brand, revolving around the WAS and built upon an open-standards J2EE platform.
Which direction would it choose?
As usual, IBM chose both!
Domino/Notes R6, released in 2002, finally straightened out this question. The profile of the R6 server was as a highly scalable messaging and workgroup server, with APIs to the Web application server that allowed Notes documents to be served either through the standalone Domino server or through the WebSphere portal. This hybrid construction of Domino allowed the Web administrators of large companies to use WebSphere to serve Notes documents. At the same time, it allowed smaller organizations to continue Web deployment of Notes/Domino messaging and collaboration services through the Domino Web application server.
What Lotus development left out of R6 Domino was the deployment of a Web Services interface in the native Domino server: Web Services development went instead to the larger WAS.
Domino as a Developer's Platform
For the Domino/Notes application developer, IBM's preeminent focus on WebSphere is a conundrum. Domino/Notes is still a great Web application server, still arguably the most scalable email messaging server in the industry, and still a truly robust workflow and collaboration server.
Yet Notes' long history--with a legacy that stretches back to 1973--makes it suspect in the minds of some developers. These developers ask: Where is the future of development on Domino within Lotus today? What will Domino R7--due out in 2005 and now in beta 2 trials--give them? What are the right modalities for programming Domino: @Functions, LotusScript, Java Script, J2EE? What about the Notes Designer client that is used for developing Notes databases? Should customers be considering the Eclipse IDE plug-ins?
And what about the Lotus Workplace messaging platform? Is this platform destined to make Notes/Domino obsolete?
For our managers, the questions are even more difficult. IBM Lotus has recast its pricing formulas so that it's almost impossible to figure out what IBM is going to charge for Domino. Are these pricing formulas aimed at driving a larger wedge between Domino development and WebSphere development?
These are questions for which we will attempt to find answers in our next installment of "The Once and Future Domino."
Thomas M. Stockwell is Editor in Chief of MC Press Online, LP.