Usability - Productivity - Business - The web - Singapore & Twins

Where to install Lotus Notes - and what to do when upgrading?

When it comes to installing Lotus Notes there are a lot of conflicting ideas floating around. I'd like to shed a little light on them. Existing Notes shops typically have their Notes clients installed in C:\Notes and the data in C:\Notes\Data. This selection predates the Win95/NT/XP days. While that is working perfectly fine it makes Notes a little the odd child on the block, since all other software gets installed in C:\Program Files.
When you install Notes on a clean machine it will suggest C:\Program Files\IBM\Lotus\Notes for the program file and the data in C:\Program Files\IBM\Lotus\Notes/Data. While the first suggestion is perfectly fine I would not recommend the second. Data has no place in a program directory. Interestingly there are other options available. When you install Notes using the multi-user install Notes suggests C:\Documents and Settings\<username>\AppData\Local\Lotus\Notes\Data (on Vista C:\Documents and Settings would be C:\Users). Of course the directory names are not hard coded but pulled from the environment variables ProgramFiles and USERPROFILE. And I think that is the place where it should be in any case.
When you look at the installation on Linux, there the program goes into /opt/ibm/lotus/notes and the data in /home/<username>/lotus/notes, with shared data (the templates/help) sitting in /var/...
When you upgrade your Notes client, be it manually or using Smart-Upgrade you will realize, that the installer suggest the existing directory, thus perpetuating location decisions that might no longer be appropriate. I highly suggest to take an upgrade exercise as opportunity to rectify such decisions. How would you go about it? The best approach is to take a step back and see an upgrade exercise from a holistic point of view. You need to:
  • Gather evidence that installation will work (hardware requirement, available disk space)
  • Enlighten the users what's coming up/is new
  • Do the actually update
  • Verify the results
    One successful approach is to create a database with information around the upgrade: Users and machines, training schedules etc. Send users an invitation email that lets them know that the upgrade exercise is planned and will happen and that they are required to attend a briefing for the new features (could be a briefing using Sametime or Sametime Unyte). Make them enroll to one of the briefings by filling in a form in that database. Give enough day/time slots to get them all. The enrollment form contains code that does a preliminary workstation check: list of databases, install locations, free space etc. and records it in that database. This allows you to generate the needed scripts to clean up stuff. On the day of the briefing send another email to the user with "your session is on in xx minutes, click here to confirm your attendance". The email function would  obviously would be a button in your database. That confirmation button would then trigger the update proceedings. If you need to move the data or program files before the upgrade you need to run a little custom script that does that for you. It also would need to iron out the Registry. I personally made good experience with NSIS (given some time I'll post some samples).
    Then, while the user is attending the briefing the upgrade happens and you have the best benefit of learning: users can immediately after their training use the new functions. You need to brief long enough to give time for the installer to run. The last item the database would contain is a rating and satisfaction feedback form for the whole process.

    Some common problems when picking install locations for Lotus Notes:
  • Installing data into the user profile and have XP sync that profile on logon/logoff. This means that you shuffle your entire Notes data on every logon/logoff since all file dates will be updated when Notes runs. Exclude the directory from sync
  • Installing data into the home drive on a file server. This is a big performance hit. If you do that, at least point desktop.dsk and cache.dsk to a local drive. The rationale often is backup or the ability to work on multiple workstations. If that is a requirement you better have a look at multi-user install and the roaming user feature. This yields much better results. Storage requirements are not different, the data just moves from your file server to the Notes servers. Additional you then have access to all address books and bookmarks in the context of your Domino server and can easily run analysis and update code.
  • Low hard drive maintenance. Notes databases are big compared to your average file on your workstation (having archives or replicated shared databases in the multi-gigabyte range is quite common). NTFS does a poor job (as does ext3 for that matter) in dealing with big files. They get fragmented very fast. So having a regular defragmentation running, especially before you upgrade makes a lot of sense.

Posted by on 22 August 2008 | Comments (2) | categories: Show-N-Tell Thursday


  1. posted by Odd Åge Skogheim on Friday 22 August 2008 AD:
    One problem with putting data in the program files directory is when you are logged in as administrator while installing. The user will then not have write access to the data folder - and notes will not run.
  2. posted by Stephan H. Wissel on Sunday 24 August 2008 AD:
    @Odd: This is why I recommend to put data elsewhere, not into the program directory.