When the phrase "Lotus Notes" is mentioned in the halls of your IT department, you probably hear a range of responses, from "That's still around?" to "Notes is a critical part of our application portfolio, and we couldn't deliver value without it." For a significant enterprise collaboration application that's been around for more than two decades, it's surprising that so many IT professionals still have a difficult time explaining just what Notes and Domino is, what it does and how it fits into the IT infrastructure.
Lotus Notes is the "Ginsu knife" of application development. It slices, it dices, it cuts both leather and tomatoes. This extreme flexibility means that Notes doesn't fit neatly into a single software category in either its definition and functionality. But it also means that your investment in Notes and Domino can deliver more than "just e-mail" to your organization. Are you taking advantage of what it can do?
1. Notes is more than "just e-mail."
With near-universal use of e-mail as a corporate communication tool, Notes users spend much of their time in their mail file. This tends to lead to the never-ending debate of which is better: Lotus Notes or Microsoft Exchange. In reality, that's an unreasonable comparison.
If you're using Lotus Notes as "just" an e-mail application, you could do much better (and save a lot of money). Download an open-source mail transfer agent (MTA) like Sendmail and an open-source mail client like Thunderbird, and you have e-mail. Historically, the Notes mail client has not been "best-in-class" (to put it nicely), and as such has suffered in comparisons to Microsoft's Outlook mail client. But it's what Lotus Notes offers beyond the mail client that makes it so valuable to the enterprise.
In addition to its e-mail capabilities, Lotus Notes is also a full-featured rapid application development platform. Notes uses a semi-structured data store that allows for the creation and processing of "documents" (which are similar to records in relational database systems). Documents are displayed to the user as "forms," which reveal the application's pertinent fields. This means that you can use Notes to build electronic workflow applications that can create requests, notify approvers via e-mail and process the requests once the approval is granted.
For instance, an expense reporting application built on the Notes platform could allow users to enter their expenses, route the document to their supervisors for approval (perhaps with an additional level of approval if the amount is over a certain limit), and then generate a notice to the Accounting department to reimburse the user.
Another example might be an information request form on your corporate website. Once the form is completed and the "submit" button is clicked, Notes could route the request to the correct department and track its fulfillment.
2. Notes and Domino is a powerful (and open) application development platform.
A goal of many organizations want to avoid getting too closely tied to any single vendor or technology. If not careful, the proprietary nature of the technology can limit the future choices of the company when it comes to upgrading or integration with other platforms.
To build Notes applications, developers use the Designer client to create and modify all the different parts of a Notes application, such as forms, views and agents. It can be viewed and tested in the Notes client or in a web browser for instant feedback. In terms of productivity, developers get a lot done with very little effort.
But useful Notes applications don't always require attention from the IT department. It's common in Notes for power users to develop applications that meet a tactical need, with little assistance from IT.
On the other hand, Designer's easy-to-use interface historically can be a frustration at times to high-end developers. The latest version of Notes/Domino (version 8) has an Eclipse-based IDE, making it easy for some of those developers—for whom Eclipse is their native environment—can easily grasp the environment and produce high-quality applications.
3. Notes is the client, Domino is the server.
Notes, Domino, Notes/Domino... What is this software really called, anyway?
The full name of IBM's software offering is IBM Lotus Notes and Domino. Lotus Notes refers to the Notes client, which is installed on the user's personal computer, and is used to access both mail files and Notes applications.
Domino is the server component of the Notes/Domino team, and it runs on a variety of operating systems. When a user connects to the server replica of their mail database using the Notes client, it's the Domino server that is serving up the content from the user's mail database. The Domino server is also responsible for controlling access and security to mail files and application databases.
The Domino server has a robust security model that can control access in Notes documents down to the field level. This includes both user access based on the user's Notes ID, as well as database and network traffic encryption.
Notes and Domino run on a number of operating systems: from an Intel Pentium 2 desktop machine to the "big iron" of IBM mainframes. The Domino server is available for Windows Server 2003, IBM AIX, Novell SUSE and RedHat Linux distributions, Sun Solaris, IBM System i, IBM System z and IBM z/OS. This attention to multi-platform support means that IT departments can use existing servers and data center architecture to consolidate hardware and keep a tight rein on costs. The Notes client is supported on Windows XP, Windows Vista, Mac OS, and SUSE and RedHat Linux desktop distributions.
4. Notes has a long history of backward compatibility.
One of the most impressive features of Notes is its level of backwards compatibility between versions. It's possible to take a Notes application built in version 1 back in 1989, and run it in the current Notes 8 release without any need to convert or rewrite the application. We're not talking about showcase "proof point" applications, but real-world legacy applications which are still giving good value to the organization and do not need any feature enhancements. Few software applications can boast about compatibility across versions like Notes can. This means your application development investment continues to return value long into the future.
Often, a Domino server migration consists of running the install utility for the latest version. In as little as 15 minutes, the server is upgraded. All the applications built in prior versions of Notes still continue to run with no conversions necessary.
5. Replication lets you work both online and offline.
Today's knowledge workers don't come to the office at 9:00 am and leave at 5:00 pm. They are "always on," and they need to access their data whether or not a network connection is available. The Notes client accommodates this requirement by replicating data between server and local versions of your mail files and applications. It's among Notes oldest and most cherished features—for good reason.
When a network connection exists, Notes synchronizes data between the server and client. The replication occurs at the field level, so two people can update different fields in the same document (such as an invoice or travel request); the server merges the updates so that the document shows both sets of changes. Frankly, this is slick. Nobody else has ever achieved this level of WayCool synchronization sophistication, particularly because it's so trouble free that the feature is usually invisible.
Notes e-mail users replicate their mail files to local versions on their laptops, so they can be productive offline. When they once again connect to the network, all the changes are replicated with the server and messages are sent to the appropriate people. That applies to Notes databases and applications, not just e-mail.
6. Notes applications can be built for both the Notes client and for Web browsers.
Part of the flexibility of Notes is that you can build both Notes client applications and applications that are accessed through a Web browser. Domino has a built-in HTTP server that renders content based on normal HTTP requests. Domino takes the application's design and data and renders it into HTML "on the fly" for the browser. That's one quick way to migrate an in-house legacy application to an intranet or extranet.
Because you can deliver both Notes client and browser content from the same source, your application development investment can pay off with greater flexibility for the end users.
7. Notes is "not dead."
Notes has been declared dead multiple times. When the Web came along, some opined Notes would be replaced by web browsers. When Java became the hot new development platform, many felt that Notes would be replaced by a full-fledged Java Enterprise architecture. And now that Microsoft has a popular collaboration offering in SharePoint, some are again predicting the demise of Notes.
Excuse me if I don't hold my breath waiting for that to happen....
Not only has Notes survived—it has adapted and thrived. IBM added Web capabilities to the Domino server long ago, when intranet applications became a business requirement. Java became another language supported in the Notes programming environment. Notes Domino version 8 added the ability to build composite applications. That is, these applications allow developers to blend data and functionality from both Notes and non-Notes applications so that the end of Notes and the start of a different application becomes seamless. For instance, an SAP application can interact with a Notes application, sharing and updating data between the two platforms.
With the rapid pace of innovation that's demanded these days, it's tempting to be on the hunt for that "silver bullet" that solves all your technology and business problems. Unfortunately, silver bullets don't exist in our field. But rather than being distracted by the latest shiny object, step back and ask yourself if you're getting the most out of what you already have. IBM Lotus Notes and Domino is far more than "just e-email," and you should be squeezing out every last dollar from your investment.
Thomas "Duffbert" Duff is a software developer with nearly 30 years of experience in IT, covering everything from punch cards and tape drives to cloud computing. When he is not developing Notes-based collaboration applications for a large health insurance company, he's usually reading and reviewing books on his blog, Duffbert's Random Musings. He also speaks at software conferences.