Simplify the HCL Notes and Domino Upgrade Process with Upgrade Filters

By Nigel Cheshire

Generally speaking, software upgrades are a lot easier than they used to be. My first encounter with Lotus Notes was in 1994. It was version 3.0 and it came in a box filled with 3.5” floppy disks. I can’t remember how many disks there were, but I think it was somewhere north of a dozen or so. That sounds like a lot of floppies, but given the fact that each double sided, high density micro-floppy could only hold a maximum of 1.44 MB, that means the whole installation can’t have been much bigger than about 15 MB or so. The just-released Notes 11 Windows client, which excludes Domino Designer, weighs in at a little over 600 MB.

Anyhow, the point is that, back in those days, upgrading to the latest version of the Notes client was a project in itself. Aside from the amount of time it took to load the software from disk (data transfer rates from those floppies were pretty slow) it was a labor intensive task. You had to keep an eye on the installation process and be ready to feed it the next disk. Of course, the floppies could all be loaded onto a network drive and installed from there, but it was still typically an admin’s job to walk around to each different client machine and step through the upgrade process. So it may not be surprising if, back then, some upgrades were skipped.

These days, of course, things are a lot different. Many applications are web based and delivered via a browser. Upgrades typically happen automatically, in many cases without users even being aware that they have been upgraded. Anyone who’s used Facebook understands this concept well. But even “free standing” applications are much easier to upgrade than they used to be. Open your copy of Quicken on any given day, and there’s a pretty good chance you’ll see a message inviting you to upgrade to the latest version. Click on “Install Update,” wait a few seconds for the 40+MB download to happen, click on “Install and Relaunch,” wait a few more seconds for your database to be upgraded and, hey presto, you’re all set.

So why isn’t it that easy with the Notes client? The main reason, of course, is that Notes is an application platform, and so there are many, many custom built applications that run on top of it. Also, Notes is an app platform that has been enhanced, pushed, prodded, tweaked, and built-upon by a large number of different people over a period of 30 years. It has to support applications written using a combination of formula language, LotusScript, Java, JavaScript, HTML and probably a bunch of other things. It also has to be able to run an application that was written in 1990 as easily as one that was written in 2020. That’s a lot to expect. To roll out a new version of Notes and expect the literally millions of different applications that run on it to all work perfectly is a pretty daunting task.

This idea of backwards compatibility is something that has been a real strength of the Notes/Domino platform, and one that’s been significantly underestimated, in our opinion. Mostly, you can just take any Notes/Domino application that was written for an older version of the platform and run it on the latest version of Notes. With every new version though, there has inevitably been a handful of small issues that can cause problems with apps. For example, Domino 10 introduced a new LotusScript method, “Size”. If, by some chance, you already had an application that contained a user-written class, method or property of the same name, it would conflict with the new method.

To help with this problem, we introduced Teamstudio Upgrade Filters. This is a set of filters for Teamstudio Analyzer (we wrote about how to create your own set of filters last week), that identify any issues in your Notes apps that might cause problems when you upgrade. So, in the example above, there is a filter that will search for any occurrences of the string “Size” in your existing code. This lets you quickly audit your key applications for potential problems before you go ahead with the upgrade. Domino 11 has just landed, and we’ll soon be releasing a new set of filters for this new version.

To find out more about Upgrade Filters, or just to start a conversation about any aspect of your HCL Notes/Domino environment, click below. We love to chat!