Showing posts with label Lotus Notes. Show all posts
Showing posts with label Lotus Notes. Show all posts

Wednesday, November 04, 2009

Another resource for the Notes community

There are several online communities for the Notes community: developerWorks forums, BleedYellow Sametime, PlanetLotus, and IdeaJam just to name a few. There is another one that not as many people visit, the #notes channel on IRC. Consider this your invitation to join the discussion there. In case you don't have an IRC client or even know what IRC is, here is a widget that will get you going quickly

Chat here

This is all AJAX, no Java or ActiveX required. Just open the link, enter a nickname, and join the conversation. If it looks like nobody is active just say hi or ask a question. Someone will probably respond. :-)

Tuesday, November 03, 2009

What do you do when Notes 8.5.1 just won't install?

My friend Adam has a problem. He can't install Notes 8.5.1. Every time he tries he gets the following error:
0x1B1 - Version mismatch between executable and preexisting shared memory versions! EXITING. You may need to stop RTVSCAN or reboot.

It is documented as SPR# DDES7L9SEV, and IBM thought they had it fixed in 8.0.2 FP2 and 8.5 FP1. SPR #TONN7WTQQE was opened based on reports this is happening in 8.5.1, which I can confirm it really is.

Adam called Lotus support and they had him uninstall Notes, manually remove all the directories and Registry entries, and try again. It still failed with the same error. He sent in NSD's and other logs and there was no resolution. The final response he received was that it is under investigation. At this point he is stuck not being able to install 8.5.1 at all on his computer, which means he can't test his applications for compatibility.

This morning the same thing happened to me. I upgraded a test VM from 8.5 FP1 to 8.5.1 and got the same 0x1B1 error as Adam. I tried the same cleanup he did but it didn't help me, either. I'm writing this while I'm waiting for Windows to install in a new VM so I can see if it was just a fluke. Whether it is or not, this hardly inspires confidence.

Sunday, September 06, 2009

My impressions of Lotus Notes and Domino 8.5.1 beta

For those of you looking for my food-oriented writing, keep moving. This isn't going to make much sense. :-)

Why Am I Here?

You might be thinking "Hey... I know you... aren't you that formerly relevant guy who hates Notes and Domino and now just pokes fun at Ed Brill and taunts Nathan?"

It is no secret that in my day job I work with Visual Studio, Access and SQL Server and we use Outlook and Exchange for e-mail. But we don't have a collaboration platform. We tried Sharepoint and it became apparent it wasn't for us when I couldn't even get a demo environment set up in a reasonable amount of time. I tried out Notes and Domino 8, but I have been very disappointed with the performance and overall build quality of every release so far.

The worst bugs were in Domino Designer, and I happen to be a developer. Since the other user populations -- end users and administrators -- were getting lots of new features that actually mostly worked, I finally decided that IBM simply didn't care. Here's how the cycle would go: we would yell at them at Lotusphere and they'd make a promise to do better and we'd cheer. Several months later they'd give us something half-baked, we'd yell, they'd make a promise to do better at Lotusphere and we'd cheer. Lather, rinse, repeat.

As if to prove this point, the first Domino Designer in Eclipse is an atrocity. It just doesn't work. Period. There are scores of regression bugs and much of the new functionality is not complete. Things that were promised and demoed at Lotusphere 2008 were not shipped in this release, which came out in January 2009. I had participated in usability sessions during which I was told the functionality I was working with would be in 8.5, but it wasn't. I took it very personally. I felt like Lotus looked me in the eye and lied.

So when I heard that supposedly one of the primary goals in 8.5.1 was to fix was was left undone in 8.5 and to finally make Domino Designer a usable development environment, my first reaction was look back at the long history of broken promises and broken software and be dismissive. I finally decided that after harping about this for the better part of a decade I had to see if they were really doing it or just giving more lip service. I requested to participate in the 8.5.1 managed beta. I had to know.

Notes Client

The first thing I noticed is performance is much improved. From the time I double-click the Lotus Notes icon until I get the password prompt is consistently 3 - 5 seconds. After I enter my password the time to load my "My Work" home page is another 15 - 20 seconds. I used to have startup times of over 45 seconds so this is a huge improvement.

Working with mail, calendar, to-do's, and follow-up items is smooth and efficient. In previous releases I had pauses of up to 20 seconds while the calendar or e-mail loaded, but that's completely gone. Now it's a second or two and it's loaded. I really like the new UI for mail and the improvements made to the icons and visual clutter since 8.0. I have not had any weird errors or application hangs and so far the toolbars haven't been moving around randomly like they used to. I haven't had a single crash yet, either. The performance and stability of the Notes client by itself has improved tremendously across the board.

Domino Designer

How about Domino Designer, the application I hated so much I changed jobs to get away from it? DDE 8.5.1 is much more responsive and much more stable than 8.5. It's still not as speedy as the old Domino Designer, but it also doesn't make me want to claw my eyes out (yet). I haven't had code go missing, and I have only had one crash. The Eclipse LotusScript editor is a little quirky and isn't what was promised, but still an improvement over what was available in previous releases. Code assist works for custom classes and will autocomplete method and property names. You can type out a function or object name, hover your mouse over it, and help pops up in a little window. I'm definitely impressed. This is close to what I expected when release 8.0 came out in August 2007.

What? No Sturm and Drang?

Some of you may be shocked to see me saying mostly positive things about Notes and Domino. I've always liked the idea of the products, I just haven't liked the implementation. 8.5.1 is a game changer. It's showing the promise of the platform and is a great jumping off point. Sure it's two years late, but at least it's finally here.

I do have a list of issues with 8.5.1, some of which are quite serious. Originally I started writing a vitriolic exposé of these as well as what's been left on the cutting room floor.
The license on the latest beta build dropped the secrecy requirement, so I could do that. After taking a step back and looking at the whole picture, I came to the conclusion that ultimately there is more good than bad in 8.5.1. Sure there are problems, but after screwing around for two years IBM/Lotus finally came up with something that doesn't make baby Jesus cry.

And let's not forget this is beta software and there are several weeks of development between the last beta release and the final gold build.
Some of the problems I have reported may be resolved. There are a few things I already know are being deferred or simply aren't going to be available, so you can be sure a more critical writeup is coming.

Final Thoughts

Coming full circle, the reason I'm writing this is because I am shocked by what I have seen in 8.5.1. I have been one of the harshest critics of R8 and I'm not a raving fan yet, but there is finally hope. I wrote off R8 as a lost release, one that was basically an entire beta cycle between 7 and 9. I never expected any R8 release to be usable. If you did the same you owe it to yourself to give 8.5.1 a try. It has issues and there is a lot left to be done, but is head and shoulders above any previous R8 release.

Disclaimer: IBM Lotus Notes/Domino and Lotus Notes Traveler 8.5.1 is prerelease code and there are no guarantees from IBM that the functionality presented or discussed will be in the final shipping product.

Wednesday, February 20, 2008

8.0.1 is on Passport Advantage

It just seems to be missing 17 files...



I tried signing out and coming back in, but it's till only showing the DOLS pre-installer.

Wednesday, November 28, 2007

Buffer overflow vulnerability in Lotus Notes file viewer for Lotus 1-2-3 attachments

Technote 1285600:
Question
Sebastián Muñiz from the CORE IMPACT Exploit Writers Team (EWT) at Core
Security Technologies contacted IBM® Lotus® to report a potential keyview buffer overflow vulnerability in Lotus Notes® when viewing a Lotus 1-2-3 (.123 extension) file attachment. In specific situations it was found that the possibility exists to execute arbitrary code.

To successfully exploit this vulnerability, an attacker would need to send a specially crafted Lotus 1-2-3 file attachment to users, and the users would then have to double-click and View the attachment.


The advisory will be available at the following URL:
http://www.coresecurity.com/index.php5?module=ContentMod&action=item&id=2008

Answer
This issue was reported to Quality Engineering as SPR# PRAD777KP, and we have received a software update from the technology vendor involved. You must contact IBM Support to obtain the patch, which is available for Notes 7.x and 8.x client versions.
Note: The issue impacts only Windows-based Notes clients; it does not impact the Domino server.

Workarounds for Notes 7.x and 8.x client versions:

Option 1: Contact IBM Support to obtain the patch for the Notes client.

Option 2: Alternately, you can disable the affected file viewer by following one of the options in the "How to disable viewers within Lotus Notes" section of this technote.


Workaround for Notes 6.x client versions:

We are currently working with the technology vendor involved to investigate options for the Notes 6.x client versions. This section will be updated with more information by November 30th. Until a final solution is determined, you can disable the affected file viewers by following one of the options in the "How to disable viewers within Lotus Notes" section of this technote.


Workaround for Notes 5.x client versions:

If you are interested in protecting yourself from this vulnerability, we recommend disabling the viewers as described in the "How to disable viewers within Lotus Notes" section of this technote. There is no software fix available for the Notes 5.x client version.


How to disable viewers within Notes:

Option 1 : Delete the keyview.ini file in the Notes program directory. This disables ALL viewers. When a user clicks View (for any file), a dialog box will display with the message "Unable to locate the viewer configuration file."

Option 2 : Delete or rename the problem DLL file, which in this case is l123sr.dll. Be aware that the DLL file name starts with lowercase "L". When a user tries to view a 123 spreadsheet file type, a dialog box will display with the message "The viewer display window could not be initialized." All other file types work without returning the error message.

Option 3 : Comment out specific lines in keyview.ini for any references to the problem file (dll). To comment a line, you precede it with a semi-colon (;). When a user tries to view the specific file type, a dialog box will display with the message "The viewer display window could not be initialized."

For example:

[KVWKBVE]
;81.2.0.5.0=l123sr.dll
;81.2.0.9.0=l123sr.dll


Additional Background
In general, users are strongly urged to use caution when opening or viewing unsolicited file attachments.

The attachments will not auto-execute upon opening or previewing the email message; the file attachment must be opened by the user using one of the mentioned file viewers. In some cases, further user action is also required to trigger the exploit.



via Computerworld

Tuesday, October 30, 2007

Outlook vs Notes

I've been working with Outlook 2003 for a few months, so here are my observations on Outlook 2003 and how it stacks up to Notes.

Tabbed UI's ROCK

Lotus introduced the tabs in R5, and it was good. No longer did you have to try to keep track of all those open e-mails and Notes databases applications in the Windows task list, now everything was neatly confined to a single UI. Microsoft went a different direction and added the ability to group similar taskbar items. This doesn't serve the same purpose at all.

For starters, instead of quickly scanning a list you can easily see...








you have to click outside the current UI window, look at a list, and select from it.














It's a lot more mental context switching to go through. Also note that in Access I have the Provide Feedback form open, but you can't tell that here. You have to know that the second thing in the list is the currently open element. Since Notes makes the switching mechanism part of the same UI as the work being done there is no question. It gets even better when you have multiple copies of the same Access database open, such as when you're comparing versions of an application.

Where Am I?

Here is an exercise to try from Notes (I'm using Notes 8 Basic):
  • Open your mail
  • Right-click the calendar icon and select "Open in new window"
  • From the new calendar window, click the mail bookmark
  • Notice how it jumps back to the first window. The new window is fixed so it can't load something that is already open.
Outlook isn't as smart. If you do this you'll have two windows with your Inbox.




Becomes...




Grouped taskbar buttons makes this even more fun.
















Since Outlook doesn't have tabs, this is the best you can do. One thing I do wish both Notes and Outlook had was a better way to flag which window is the original or first. For Outlook it's the one with the Outlook icon, and it's always either the leftmost in the taskbar or the bottom of the stack. As I close the windows, though, they eventually split apart into separate taskbar buttons when there is enough room. That's a little jarring and disorienting.

I like the tabs in Notes much better, but even then you can get tabs from the same application intermingled with others. It's hard to separate the e-mail with a link from the documents, views or databases the link opens. Notes 8 Standard offers the option to group tabs by application, but I've already expressed my opinion about Notes 8 Standard. :-)

Flexibility Is Good

When I used Notes on a daily basis I was bugged by all the reply and forward options. Eight ways to reply to an e-mail seemed like massive overkill to me. Three different ways to forward a message? Are you kidding me?! After working with Outlook for a while, I see the logic.

In Outlook you have two options for replying: Reply or Reply to All. You have one option for Forward. You set the default for whether they include history in the Options dialog(s). At first that seemed like enough, but then I realized it's probably 50/50 what I reply with history versus what I just reply to. In Outlook this means either deleting the history half the time, copying and pasting it in half the time, or it's a trip through the options: Tools > Options > (Preferences tab) E-mail Options button. Set up the reply style, reply to the message, then go back and undo all that since I don't want that to be the default.

You have exactly ZERO control over whether attachments are included. They are never included on a reply. They are always included on a forward. Want to reply with attachments? Use Forward. Don't want the attachments on a forwarded e-mail? Manually delete them.

I can understand that most users typically only use one style of reply or forward and Outlook works for the majority. But I can't imagine I'm the only person in the world who doesn't want to reply with history to every single e-mail I get. In Outlook I feel forced into that.

What Outlook Gets Right

Setting up a mailbox is just a tab on the user account while you're setting them up in Active Directory. Not having to deal with ID files is nice. The lack of options in Outlook means people can't get confused as easily. Outlook's offline mode is also nice in that it's just a checkbox. I check "use Exchange cached mode" and it automatically sets up the synchronization for me. I never even know it's happening. It would be nice if there was something in the Notes setup routine that would let you configure that during install (and script it for large rollouts).

Conclusion


Maybe 8 years of working with Notes has me so accustomed to it that I can't see the good in Outlook. I find the features anemic and administration is rudimentary. As for the much-vaunted usability, I wonder why Outlook 2007 introduced a Notes-style bookmark bar and doesn't fully implement the Ribbon UI?

Wednesday, September 05, 2007

Notes 8 thoughts

I've been using Notes 8 Standard for doing development for a couple of weeks. Overall it's not been a very positive experience.

Performance

I tested on three computers:
  1. My home PC, which is an Athlon64 X2 5600+, 4GB DDR2-800 RAM, 160GB SATA-II 10,000 RPM hard drive, a nVidia 7600GS video card with 512MB RAM, and Windows XP 64-bit.
  2. My work PC, which is an Athlon64 X2 5000+, 2GB DDR2-533 RAM, 180GB SATA-II 7200 RPM drive, ATI Radeon X1650 512MB video card, and Windows XP 32-bit.
  3. My other work PC, a dual Xeon 2.8Ghz with 3GB DDR2-400 RAM, 64MB nVidia Quadro video, and 72GB SATA-II 7200 RPM hard drive with Windows XP 32-bit.
I turned off the "scan on access" setting in my antivirus client, then did some tests. The startup time after logging into Windows and waiting for everything to load averaged about 45 seconds across all these systems. Once loaded the time to open mail averaged 20 seconds, and often there was no hourglass icon to indicate anything was happening. Opening the Calendar averaged 15 seconds, again usually with no hourglass. Once loaded, switching from Mail to Calendar took approximately 1.5 seconds.

To me that's not acceptable. I shouldn't have to wait for anything on any of those machines, but I can actually watch Notes 8 Standard paint the screen on all three. The client machines I support are mostly in the late P3 and early P4 range, many have 256MB RAM, and nearly all have shared video memory. I didn't even bother testing on any of those.

Missing functionality

A few things got lost in the shuffle of moving Notes from a traditional C or C++ binary to a framework that is based on Eclipse. Here is a short list of the things I know are missing from Notes 8 Standard.
  • Roaming users - not available with Notes 8 Standard, and there are "issues" with roaming users in Notes 8 Basic that prevent you from creating new ones. The solution: don't register roaming users.
  • Citrix / Windows Terminal Services - not supported with Notes 8 Standard. You'll have to wait for 8.01.
  • The Productivity Editors are not integrated at all. You can access them from Notes 8, but I could just as easily add a shortcut to Word. That doesn't make it integrated. Actually, Word is better integrated since I can do Send To > Mail Recipient from Word, but I can't from the Productivity Editors.
I probably missed a few, but those are the biggies that people keep bringing up.

Stuff that changed

There are a number of things that don't work the same but the official response is that this is the new way it works (darkness is the new standard for light?), or it is being considered for a future release.
  • Double-click the Sametime icon in the notification area (system tray) and nothing happens. Right-click and all you get are some status options. Originally they wanted to do away with the icon altogether so I guess this is progress
  • The immediate Inbox refresh no longer works. You have to wait for your refresh interval to kick in and refresh your Inbox.
  • Using a custom image for folders is broken in Notes 8 Standard. Your old image gets skewed and looks warped, and you can't change it from the Standard client. You have to do that from Notes 6, 7, or 8 Basic. A fix is being considered for 8.x.

Upgrade issues

Some settings from Notes 7.x are not preserved.
  • The Universal Toolbar gets hidden during an upgrade from Notes 7 unless it has been modified. The other toolbars don't adjust accordingly so there's just a gaping hole in the toolbar area. So far the response is "this is working as designed".
  • When you show the Universal toolbar it sometimes has repeating icons.
  • The Chat toolbar gets hidden, too.
  • "Automatically add Option Explicit" gets turned off in Domino Designer.
And then the bugs...
  • Toolbars move around on their own.
  • "Open in Client" from Domino Designer doesn't work consistently.
  • Graphics artifacts when dragging dialog boxes around the screen.
  • The Replicator page sometimes pops to the foreground when there is no replication interval set. Once it starts happening it happens on 15 minute intervals, and going to the Replication settings, making a change, clearing it and clicking OK makes it stop. This only happened on one of my test machines.

Usability issues

I find many of the UI elements much too small. The Sidebar selector is so small I miss it more than I hit it, so I just go through the menus if I need it. The icons in the bookmark bar (docked Open bar) are also way too small for me. I find the new preferences dialog extremely confusing, even bewildering. The layout of the preferences is just as foreign (as compared to other Windows applications) as the old one was, but now it's both foreign and different from previous Notes releases.

Conclusion

As far as I'm concerned the Notes 8 Standard Gold release is actually Beta 4. It behaves so randomly that every time you open Notes it's like Christmas morning... or maybe it's more like Bertie Bott's Every Flavor Beans, and sometimes you end up with the vomit flavored one.

Wednesday, June 27, 2007

Message recall: a comparison of Notes 8 to Outlook 2003

The most recent feature tempest in a teacup is around message recall in the upcoming Notes and Domino 8 release. Ed and Mary Beth, brave souls that they are, solicited feedback from the community. Through the ensuing discussion many people suggested that Notes 8 mimic Outlook 2003 as its default, just for the sake of user consistency.

That's honestly not possible because of inherent differences in how Notes and Outlook function. First, Outlook message recall is processed on the client rather than the server. Second, the amount of useful control administrators have over Outlook is a number approaching 0. Let's examine why these are relevant to message recall.

Message recall notices in Outlook are processed on the client, which means they are received into the message delivery folder. This poses two problems: first, if someone is on vacation or out for some other reason, the request won't be processed until they log into Outlook again. Second, and more importantly, Outlook users can configure their mail to be delivered to a personal folder. If the user has his mail delivered to a personal folder the message recall will never work. The person sending the recall request will get a failure notice and the original recipient won't even know the recall request happened. Finally, and to the second key difference listed above, as an administrator you can't force the mail delivery folder to be something you can control.

The lack of administrator control over Outlook is a huge problem. You have to use the Office Administration Kit to deploy custom installations, then use Group Policy Objects to further refine settings. Many options aren't even available to be set, and there is no ability to prevent a user from changing something that is set via policy.

As it relates to message recall, an Outlook user can select to not process recall requests automatically. If a user does this (and most do), there is no way for a recalled message to be automatically deleted -- even if the recipient has not read it yet. The recipient will get a request in his inbox and can choose to allow it or not, at his discretion. Administrators cannot prevent the user from making this change, either.

By contrast, Domino will process the mail recall on the server. There is no requirement that users log into their mail to make anything happen. Furthermore you can configure Domino so that it will always delete the message even if is has been read. Domino offers robust and granular server-driven control over what a user can do with the Notes client, so you can not only set the property for the user through a policy, you can prevent the user from changing it.

Nathan's writeup about how message recall "should" work is very good, and it sounds like something that would be worth implementing in the OpenNTF Mail Experience template. E.g. click recall and it presents a list of only the people in your current Notes domain. I'm not sure how much further it can be taken without adding in some server-side pieces to store metadata (does user allow recall, etc.). If there is enough interest and someone is willing to help me spec out all the possible pitfalls, I'm willing to code it. Any takers?

Friday, March 09, 2007

blog move going slower than anticipated

Life has been happening and I haven't managed to get my blog moved over to the Blogsphere template. I'm still planning to do that, though. I struggled with the IBM Blog Template for about three days before downloading Blogsphere, and I much prefer the latter. It has a setup wizard to create the base configuration, it has multiple easily selectable themes built in, and *gasp* there's even help!

Thursday, December 21, 2006

Domino's place at the table

The discussion over on Ed's blog is about why people believe rumors that Notes is dead. I posted a lengthy comment there, but I had some more thoughts on the subject that were more contentious and I didn't want to take over Ed's blog with my ramblings.

It isn't Notes that is threatened. It's Domino. Look at the recent announcements:

  • Sametime RTC Gateway
  • Lotus Component Designer
  • Activity Explorer
  • Workplace Forms
  • Domino Toolkit for Websphere Studio
  • Domino and Extended Product Portlets
  • Lotus Expeditor
It's all about Websphere. Where are the Domino innovations? IBM's lack of focus on Domino, while claiming it is a focus on Domino, is creating FUD. There is a roadmap for Domino and there has been a commitment to new releases for the next decade or so. The question is what lies along that road?

I'm not suggesting that Websphere is replacing Domino. When I look at everything laid out in front of me and I start connecting the dots, Domino's role and even it's usefulness isn't clear. End users don't care about the difference between Notes and Domino, and you need to look no further than the above examples to understand why people are willing to believe the rumor that Notes is dead. Strictly speaking, though, it's Domino that is more likely on a path toward extinction.

Wednesday, December 13, 2006

Is it okay to share modified versions of Lotus templates?

I know OpenNTF has their Mail Experience, but I just wanted to make sure it was acceptable to share copies of modified templates. I have an application template I created based on the Notes 6 mail template and I also "Blue rinsed" many of the other templates to look like Notes 6. A lot of the templates are stuck in Notes 5, and some (like the Sametime Configuration database) are from some earlier version (4.5?). I was just wondering if it was okay to share my updated versions.

Tuesday, November 28, 2006

Notes MU Migrator download - CORRECTED LINKS

Here's the minimal version with just the EXE and the INI files:

Notes Migrator - 05 - minimal.zip

If you want the documentation, which is pretty sparse at the moment, you can get it here:

Notes Migrator 05.doc

Sorry about messing that up earlier, the link with the source code is disabled now. I'm working on a UI to configure the application INI, as well as adding more additional debugging and logging. That should be up by the end of the week.

Monday, November 27, 2006

Notes MU Migrator 0.5 available

[UPDATE 27-3-2012] - IBM now has an officially supported tool: http://www-01.ibm.com/support/docview.wss?uid=swg21459627.

This is a utility that will take multiple single user installs and migrate them to a multi-user install. The general premise is that each user's Notes data directory is stored on his/her home drive (such as h:) and this will move the files to the appropriate %UserProfile% folders to make it work with the multi-user installation. I did this specifically for our own Windows Terminal Services servers, but there is no reason this shouldn't work for shared workstations, too. Just as long as Notes was originally set up a single user installation and each user had their data directory stored elsewhere, this should make it easier to migrate them to a multi-user install.

Here is the [EDIT - link removed 11/28/06]
Here are the VB5 runtimes if you need them.

I have tested this in my own environment and it worked well, but your mileage may vary. If you get any errors or need any help either post a comment or e-mail me and I'll do my best to help. Also if there are any features you would like to see added let me know. If there is enough interest I would also be willing to release the source code.

Wednesday, November 22, 2006

Joel on Software: Choices = Headaches

Nathan Freeman pointed out this article to Mary Beth Raven on her blog and I was simply astounded by what it contained. Here is someone whom I believe is relatively well-regarded in the software development world who is 1) willing to challenge Microsoft's doublethink and 2) agrees with my own approach. It's not common for my views to be popular so I'm always surprised when anyone agrees with me.

Joel discusses the confusing mess surrounding simply turning off Windows Vista. He tallied over fifteen different ways, then describes how to pare it down to only two. This can very easily be correlated to software development in general.

How many preferences are there in Lotus Notes? Well, that depends. There are up to six different sets of preferences, plus the ones built into the mail file itself. Each one is broken up into multiple tabs and subtabs, and some such as Toolbar Preferences have a completely unique UI paradigm for making changes. In all there are over 130 decisions to be made just in File > Preferences > User Preferences in Notes 7.01, and that's not counting all the combinations of port settings and International dictionary settings.

Nathan has long supported the idea of radical simplification in the Notes client, and I'm with him all the way on that charge. For my users their single biggest complaint is not that the Notes client is ugly or slow, it's that it is simply overwhelming. That criticism is mostly based on their use of Notes as a mail client. In my own applications I keep it as minimal as possible, such as the following

barracuda spam stats
[Side note: That's based on my own "blue rinsed" standard application template.]

It could be argued that some applications need more functionality and can't be as barebones as this. I challenge that assertion. The issue isn't that the functionality isn't needed, it's that the functionality should only be presented when and where it is needed.

As a real world example, create a Reply to an e-mail message. Using the standard Notes 7.01 DWA template, the action bar in the response has Reply to All and Follow Up actions. What on Earth do those mean in this context? If I wanted to Reply to All I would have done that from the view. Is the Follow Up flag getting put on the original message or my response? Why would I want to do that from here, anyway?

Also, the vectors for accessing functionality should be presented in the fewest places possible. How many different widgets are there related to Instant Messaging in the Notes client using the integrated instant messaging?

  • Right-click context menu
  • Chat view action (with multiple subactions)
  • Instant Messaging toolbar
  • Instant Messaging statusbar
Am I the only one who finds this ridiculous? By the way, the one vector I couldn't find was a direct keyboard shortcut. You can use Shift+F10 to open the context menu, which comes up in an odd place, or use Alt+A to open the Actions menu then H to open the Chat submenu.

I applaud Joel for tackling the issue of overloaded software that tries to please everyone but ends up bewildering the majority. And I also appreciate Nathan for keeping the pressure on the Notes 8 design team to simplify while innovating. I sincerely hope that goal is met.

Monday, November 13, 2006

Rod Boothby - Updated Simple Recipe to Get Off Lotus Notes

Here are Rod's latest thoughts on a subject I was sure he would have grown tired of by now:

Updated Simple Recipe to Get Off Lotus Notes
  1. Screen scrape all static content. You could use some Notes APIs, but why bother finding someone who learnt Notes back when it came out in 1984?
  2. Have end users rebuild all your Notes based applications using QED Wiki, or something similar, such as Teqlo.
Step one might be even easier if your Notes team has set up standard compliant feeds, such as RSS or ATOM for your static content. With a system such as iUpload, Blogtronix, Suite Two or Atlassian's Confluence, it is a small coding exercise to bring your existing content into a new system.

Nope, he still doesn't get it. I would write him off if he weren't in a position where he influences so many decision makers.

Tuesday, November 07, 2006

SNTT - Updating a UI document from an agent called with RunOnServer

Here's a technique to run an agent on the server, close the UI document, and have it reopen showing the updates done in the agent. In this case my agent is issuing LC LSX calls to update data from DB2. The following code is in a Hotspot button on the document. The tricky part here is knowing to use Delete on the NotesDocument. You have to delete the document from the object cache after the agent runs to force it refresh when you reopen it.
Sub Click(Source As Button)
Dim uiws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim agent As NotesAgent
Dim doc As NotesDocument
Dim noteid As String

Set uidoc = uiws.CurrentDocument
Call uidoc.Save

Set db = uiws.CurrentDatabase.Database
Set agent = db.GetAgent("Get Account Info")
Set doc = uidoc.Document
noteid = doc.NoteID

If agent.RunOnServer(doc.NoteID) <> 0 Then
Msgbox "There was an error looking up the account information.", 48 _
, "New Account Setup"
End If

Call uidoc.Close(True)
Delete doc
Set doc = db.GetDocumentByID(noteid)
Set uidoc = uiws.EditDocument(True, doc)
End Sub

This LotusScript was converted to HTML using the ls2html routine,
provided by Julian Robichaux at nsftools.com.


,

Monday, October 30, 2006

Omitting holidays from @BusinessDays

Domino Administrator allows you to create holidays that users can download to their own calendars. The next logical step is to include this in calculations where you need business days, but you don't want to include holidays. Here's how to do it in Formula:
dateHolidays := @DbColumn("":"Cache";"mail":"names.nsf";"Holidays";2);
intBusDays := @BusinessDays(StartDate;EndDate;1 : 7; dateHolidays)
This omits Saturdays, Sundays, and the list of dates in the Holidays view. You may consider adding some logic to filter out only holidays for the current year, depending on your requirements. Also be aware that the view only lists the first date entered in the repeating date field. If you have the holiday set to repeat you will have to account for this.

This LotusScript was converted to HTML using the ls2html routine,
provided by Julian Robichaux at nsftools.com.

Tuesday, October 10, 2006

In response to Rod Boothby's simplistic assertions

Rod Boothby recently posted a blog entry about how simple it is to migrate a Notes application to a "Web 2.0" paradigm. He was thoroughly trounced, so he tried again. And had various body parts handed back.

First he suggested screen scraping Domino data out of HTML. Crude, but effective... but then what? Ripping data out of Domino is easy. The hard part is getting the business logic, the workflow, and the other eleventy billion bits to translate to another platform. Furthermore, Rod is proposing doing everything on the WEB! Rod, I suggest you talk to real users, not management types. I know people who have quit jobs because tools they used were moved to web-based apps. Users hate them, with a passion.

In my experience Rod's so-called "innovation creators" and "knowledge workers" accept that what they use at home or for personal use is not appropriate for them getting their work done. Rod goes on to suggest that end users should be responsible for making changes to applications on the fly. If users are tweaking apps who is doing their real job? I agree that users need to be involved in the design process, but the answer isn't to give them a completely open tool with little structure and tell them to design what they need. It is possible, even with Notes, to deliver a structured system based on user input and feedback, that is extensible and flexible.

Just who is Rod Boothby, you might ask? He's a management consultant for Ernst & Young. His only exposure to Notes has been as an end user. Somehow in his mind that makes him an expert on the Domino platform and what it takes to implement new solutions as well as migrate away from it. I must not be as smart as him because I've not been able to do it. Read my blog, you'll see that I've tried and failed. I guess all the people Microsoft put on their Red Bull initiative must be likewise untalented. It sounds like Mr. Boothby has struck a goldmine since he's the only one capable of doing this.

Actually I think he's a crackpot. If his proposition weren't so absurd he might even be dangerous. As it stands, I think the following from Despair.com is fitting:

Thursday, September 21, 2006

SNTT - Doing a multi-user install of Lotus Notes 7.01 on Windows Terminal Services 2003 - Part 1

Throughout Notes' long history there has been pretty much one way to do multi-user installs: create separate Location documents for each user that points to their own bookmarks.nsf and ID files and the users change locations to log in as the different users.

That worked fine when it was essentially a shared terminal, with people working different shifts. Then along came Windows Terminal Services (WTS). Since you have numerous people all logged in at once this approach doesn't work. To address this scenario, IBM published a RedBook describing a new process. In a nutshell, you install Notes to the server and put the data directory on the user's home directory, which is typically mapped as H:. Next you create a shortcut to nlnotes.exe and set it to start in the user's home directory, such as H:\Lotus\Notes\Data. This works, but every time you upgrade you have to be careful to copy over all the new files, replacing the old ones, and bookmark.nsf in particular could be a pain to handle.

In my organization we used the old method on our WTS servers when we were on R5, and then migrated our 80 users to R6 and did another upgrade to 6.5. Each time we did the upgrade manually and three people spent most of a weekend at work copying files and validating the install for every user. It was pretty painful and not something we wanted to repeat. There are ways to create scripts to make it easier, but it's still a time-consuming and error-prone process.

Enter multi-user setup. With a multi-user installation the program and template files are stored in a location accessible to all users. But each user's personal files, such as names.nsf, bookmarks.nsf and their ID, are stored in C:\Documents and Settings\[username]\Application Data\Local Settings\Lotus\Notes\Data. Each user runs the Notes setup and it creates the files they need. When you do an upgrade, you just run setup the same as you would for a single-user install and you're done.

Getting a multi-user install to work on WTS the first time does take some effort. It also requires some manual tweaking, which I discovered after I ran the install, double-clicked the icon and nothing happened. Well the splash screen popped up, then went away, so I guess something happened. I went digging on Notes.Net and found this post by Christopher E. Stevens, which describes how to make it work. The instructions provided were for Notes 6.0 and Windows 2000, but I'm working with Windows Server 2003 and the steps are slightly different so I'll document them here.

The following instructions assume you used all the default paths for installing Windows and Notes. If you changed any of those, adjust them accordingly below.

Install Notes.
  1. Insert the Notes client CD and select the option to Install Notes 7.01. It must be the regular Notes client CD, the CD that has Designer and Administrator on it will not work. I don't know if the download from Passport Advantage will work or not, I ordered the CD to get the InstallShield Tuner so I just used it.
  2. The regular WTS software installation dialog will pop up in the background, ignore it for now.
  3. Treat this as a regular install until you get to the prompt asking whether this is for the current user or all users. Select all users, then continue through a regular install.
  4. When finished close the WTS software installation dialogs.
  5. Do not launch Notes yet!
Create the base notes.ini
  1. Open C:\Windows\notes.ini in Notepad.
  2. Select everything in the file and delete it.
  3. Paste in the following:
    [Notes]
    KitType=1
    SharedDataDirectory=C:\Documents and Settings\All Users\Application Data\Lotus\Notes\Data\Shared
    InstallType=6
  4. Save and close the file.
  5. Move (not copy) the file you just edited to C:\Documents and Settings\All Users\Application Data\Lotus\Notes\Data. It is critical that there not be a copy of notes.ini in your C:\Windows directory so be sure to double-check that it's gone before proceeding.
Edit the Registry
  1. Open the Registry editor and navigate to HKLM\Software\Lotus\Notes.
  2. Double-click the DataPath key and delete its value.
  3. Double-click the Multiuser key and change its value from 0 to 1
  4. Navigate down to HKLM\Software\Lotus\Notes\7.0
  5. Repeat steps 2 and 3. Take care not to delete the actual DataPath keys, just their values. Also note these are under the HKEY_LOCAL_MACHINE hive. You will find similar keys in HKCU, so be sure you are changing the appropriate ones.
That's the end of the first part of this tutorial, which gets you to the point you can start adding users. The next step is to figure out how to automate the process of moving users from a regular single user install to a multi-user install. I'm working on that one myself and will post a follow-up when I have it documented.

I would like to thank Christopher E. Stevens for the Notes.Net posting I reference above. Without that I would still be scratching my head.

,