About Duffbert...

Duffbert's Random Musings is a blog where I talk about whatever happens to be running through my head at any given moment... I'm Thomas Duff, and you can find out more about me here...

Email Me!

Search This Site!

Custom Search

I'm published!

Co-author of the book IBM Lotus Sametime 8 Essentials: A User's Guide

Purchase on Amazon

Co-author of the book IBM Sametime 8.5.2 Administration Guide

Purchase on Amazon


Visitor Count...

View My Stats


So if you're a "Notes person", what would you want to know about SharePoint?

Category IBM Notes Domino SharePoint
It seems like every Notes/Domino/Lotus/IBM person has an opinion about Microsoft SharePoint. Unfortunately, most of the opinions that I run across are based on the ingrained (and incorrect) notion that Microsoft is evil, IBM Notes/Domino is on the side of the angels, and SharePoint sucks.

The reality of the situation is that SharePoint is alive and well in businesses worldwide, you don't build a billion+ dollar business based on smoke and mirrors, and at some point you're probably going to come face-to-face with having to either interface with SharePoint at a customer (or your organization), or actually migrate off your beloved Notes/Domino platform to something else (usually (and again incorrectly) assumed to be SharePoint).

Welcome to my world since 2009. I work at a company who started using Notes in 1995 and built a substantial portfolio of critical and valuable business applications on that platform. Like many other organizations, the decision was made to move away from Notes/Domino for mail and applications, and move to "something else". In the case of mail, it was Exchange and Outlook. In terms of applications, there's a variety of options.

I used to deride migration companies when they said that 65% of Notes applications in an organization are not used. I "knew better" in my company, and we were nowhere near that... until we ran an analysis and found that 65% unused/abandoned Notes databases wasn't that far off the mark. In terms of migrating, the key phrase is "off of Notes". Most people assume (and migration companies reinforce) that migration means "to SharePoint."  In reality, it means just what it says... "off Notes". If it's an old application that hasn't been used, that may mean you obsolete or archive the application (I have recommendations on that process if you're interested).  If you run Remedy, that might be a valid option for some of your retiring Notes apps. Same with Salesforce.com or a myriad of other platforms. Bottom line, the business wants to just shut off Notes. If SharePoint takes over that role, great. Salesforce.com? Rock on... Remedy? Start coding... It doesn't matter... Business just wants to shut off servers, quit spending maintenance dollars, reduce risk, and lower the overall IT cost of ownership.

Having said all that, I want to start a thread here to find out what types of questions my Notes/Domino colleagues have about SharePoint that they hesitate to ask about in "mixed company". No, I'm far from a SharePoint guru, but I have no problems telling you my opinions, thoughts, or "I don't know" based on the last four years of straddling the fence. I've told myself over the last two years that I want to start a series of "SharePoint for the Notes/Domino Professional" blog posts, but I always have something else to do that keeps me from starting it. But I had another person ask on Twitter today what I would recommend for learning resources for picking up SharePoint skills.

Fine... I get the hint, universe... step into this niche that's being dangled before you. Do what you've always done... share what you know, and make yourself available.

So, the comments are open. What are your questions about learning/dealing with SharePoint in your Notes/Domino world? Feel free to fake names and addresses. I don't need to know who you are and where you are coming from. I just want to spend my time answering questions that are being asked, not ones that I imagine people might have.

THE MAIN GROUND RULE (and it's my blog, my rules, and I will be painfully ruthless and unapologetic about this...)

This will *not* (I repeat... *not*) become a thread for defending why Notes is better than SharePoint or SharePoint is better than Notes. They both have pros and cons. If you step outside whatever evangelical or cloistered world you're in, you're in for a rude shock... Neither side is evil or righteous. In the end, it's technology and business. You may like and prefer one over the other. That's fine. But in this thread, that argument will not be allowed. This is to deal with real-world questions about real-world issues that affect real-world paychecks of people you've known and worked with for years. I will delete without hesitation. warning, or apology anything that even hints of "x is better than y" in this thread. This is strictly "what would I like to know if I could ask any question of a SharePoint person who knows Notes, and who won't judge or out me to my colleagues who think I completely and totally bleed yellow". I may have to summarize a number of questions under "I don't know". But the best way to learn something (as in me) is to figure out how to teach it to someone else (that's you).

And in parting... if you think I'm being overly dramatic about people not wanting to let others know they're looking at SharePoint, think again. Because of who I am and the openness I've displayed during my 17+ years in this community, people are very open about reaching out to me in private to ask questions that they wouldn't dream of asking anyone else (and not just tech. :) ).  I've held confidences, given honest answers, and helped people decide directions both on a personal and professional level. I don't take that responsibility and privilege lightly, and I understand the personal angst that it can cause. Been there, done that. But once you remove the peer pressure and look at things from a non-"evangelical" perspective, there are some interesting conclusions you come to. Yes, the IBM/Lotus community is *very* special. If it wasn't, I wouldn't have been so shredded and ripped up inside over the last two weeks of IBM Connect-o-sphere 2013. Most of you will never know the personal hell I've felt over what I felt was a "goodbye" (in terms of real-life face-to-face contact) to many who  have been my family and shaped who I am (at the absolute core of my being) during that time... my last blog entry, while open, honest, and painfully and brutally blunt,  still doesn't communicate everything behind it. But with distance comes perspective, and once you see the "rock star"/insider group of people in other communities (like SharePoint), you realize that the same sense of community and passion is not completely unique to IBM/Lotus. Yes, you have to work to get back to that same level of comfort that you enjoy now (but that took you xx years to get to and you've forgotten the pain and awkwardness that it took to get here). Welcome to what newcomers in the Notes community feel when they look at you/us. Don't minimize what the IBM community is... it's incredibly special. But don't be blinded to the fact that you can have that same sense of community regardless of the vendor name attached to what you're doing. Bottom line... it's the people. You know that, and you've said that. Now you have to realize what that really means when you carry it to its logical conclusions and implications. It's not comfortable, is it?

And with that late-night and somewhat Glenfiddich-inspired (and I'd like to think uniquely Duffbert-esque) opening, the comments are open.


Starting a new blog/Twitter account for sharing SharePoint jobs...

Category SharePoint
In my life as part of the IBM Notes/Domino community, I run a blog called Lotus Jobs.  This was a "pay it forward" project of mine to share potential job opportunities I'd run across on Google News Alerts, in hopes that people who were out of work could find a new home somewhere.  I worked at Enron at the time of the implosion, so I know what that unemployed feeling is like.  It's NOT pleasant...  I post whatever I find in a single daily post, and then tweet it on an account called @LotusWatch.  That account follows no one, as it's more of a broadcast mechanism to reach people who are interested.

I'm taking this concept and starting the same thing on the SharePoint side.  I realize the effort of finding a SharePoint job is far easier right now than finding a Notes job, but still... if it helps someone, it's worth doing.

The new blog is SharePoint Jobs.  The new Twitter account is @SPJobWatch.  When I make my daily job post on the blog, I'll tweet it on my personal Twitter account along with the @SPJobWatch account.  I'll probably also put a link on Google+ just to make things more visible.

If you're interested, feel free to follow the Twitter account, subscribe to the blog, put the blog on your RSS reader, etc.  I've done the Lotus Jobs blog concept for over a year, so it's an ingrained habit.  Unless I get some major negative feedback over this new effort, I think this should become part of my daily routine.


There's a new blog in (my) town... SharePointDuffbert.com

Category SharePoint
I have a new blog in my small collection of content I offer up to the world at large... SharePointDuffbert.com.

SharePointDuffbert will not be replacing this blog, nor will I cease to talk about SharePoint on this one.  It's more of case of recognizing that I write to remember stuff, and a lot of the stuff I need to remember revolves around my ever-increasing focus on SharePoint in my day job.  Duffbert's Random Musings was started out of a focus on Notes and Domino technology, and picked up a number of other facets over the years.... book reviews, outlooks on life, etc.  I don't plan on stopping any of that, but I recognize that many of my readers are here NOT for SharePoint information.  As such, I'm going to try and separate out that material into a home of its own.

Where Notes/SharePoint/Duffbert overlap, Duffbert's Random Musings will still muse.  But for those "today I learned how to remove a web part from a page where..." things, SharePointDuffbert will be the point of reference.

And with that, carry on... Enjoy your Friday...


User group meetings... the technology may be different, but the feeling is the same...

Category Lotus Notes SharePoint
Today I attended my first SharePoint Saturday event here in Portland.  For those who don't know, SharePoint Saturday is a concept started a few years back where a group of committed people in the SharePoint community decided to hold a one-day user group meeting on a Saturday, complete with multiple sessions and various vendors, all at no cost to the attendees.  This idea has spread world-wide, all community-led and vendor-sponsored, targeted to share information among professionals and/or end-users focusing on various angles and aspects of SharePoint.

As someone who has been involved at various levels with Lotus user group meetings in various locations, I couldn't help but compare the two types of meetings and compare/contrast what I observed.  What I found is that if you filter out the technology, they were pretty similar.  The people organizing the events are doing so for the good of the community, and they do an incredibly hard job to make everything look effortless to the attendees.  Vendors sponsor the meetings so that the attendees don't have to spend anything.  The speakers all have various backgrounds and expertise areas, and they're spending their own time and money to share what they know with others.  They're passionate about their technology, much like the Lotus professionals are passionate about theirs.  There were even vendor giveaways at the end that made hanging around worth it.

 It's tempting to say that the Lotus community is special and different, and that other technologies don't have the same sense of "family" that we see and experience.  Yes, we *do* have a strong sense of community, and I have a hard time imagining what my life would be like without the people I interact with on a daily basis.  But moving into the SharePoint world doesn't mean that you have to give up being part of a community of like-minded technology professionals.  Yes, you *do* need to start building your network again, and it will feel different for a while.  But if you put forth the effort, I'll contend that you can and will have that same experience with the SharePoint community (or whatever technology you've moved to) as you had with the Lotus community.

I'll admit that I struggle to "leave behind" a reputation and expertise level earned over 15 years.  The new learning curve is steep, and I wonder if I'll ever be as good at SharePoint (or at least have the same level of involvement and success) as I've been with Notes and Domino.  But sitting in sessions today, I found myself starting to drift into thoughts of "I wonder if I could put together a session of..."  I know I can speak to groups... I know I can do what I've done with my Lotus speaking and writing... "just share what you've learned and figured out".  I don't have to know more than all the experts.  I just need to be willing to share what I do know, and someone else will always be at the same point I'm at... getting started, trying to figure out what's going on, and looking for someone to explain things in an understandable format.

And once that happens, it's like nothing ever changed...

If nothing else today, I came away with a renewed appreciation for all of you who take on the challenge of organizing a user group meeting on the scale that we see them occur today.  I'll forever be appreciative to Paul Mooney, Warren Elsmore, and the dedicated group of ILUG and UKLUG organizers that changed the definition of what a user group meeting could be, and for letting me be a part of it all.


Adding form validation in a SharePoint List using the PreSaveAction function...

Category SharePoint
So one of my users wanted to have an edit validation in a simple List where one field would be required if a second field had a value in it.  Unfortunately, simple Lists don’t allow that cross field validation, and the users tend to mess around with this List a lot.  I didn’t want to spend a lot of effort customizing it and getting saddled with the maintenance from here on out.
After a lot of searching and head-banging, I finally found where I could put code in the NewForm.aspx and EditForm.aspx pages to allow for JavaScript validation without changing the overall structure and design. 

The green code is what I added to each of the pages.  The PreSaveAction function in the SharePoint JavaScript libraries is one of those functions that doesn’t execute when the page is saved unless you add your own code.  Therefore, it makes for a great hook to add your own JavaScript validation code.  It’s added right after the PlaceHolderMain line, and consists of whatever you need the form to do.  In this case, I used the getTagFromIdentifierAndTitle function that is pretty common when you search for this type of solution.  That allowed me to get the value of the two fields I needed to examine.  Once the values were obtained, I did a simple compare and returned false if the validation failed.

This URL explains the getTagFromIdentifierAndTitle function: http://blogs.msdn.com/b/sharepointdesigner/archive/2007/06/13/using-javascript-to-manipulate-a-list-form-field.aspx

This URL explains the PreSaveAction function: http://www.sharepointdevwiki.com/display/public/SharePoint+JavaScript+Functions+Overview

<%@ Page language="C#" MasterPageFile="~masterurl/default.master"    Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage,Microsoft.SharePoint,Version=,Culture=neutral,PublicKeyToken=71e9bce111e9429c" meta:progid="SharePoint.WebPartPage.Document" meta:webpartpageexpansion="full" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<asp:Content ContentPlaceHolderId="PlaceHolderPageTitle" runat="server">
       <SharePoint:ListFormPageTitle runat="server"/>
<asp:Content ContentPlaceHolderId="PlaceHolderPageTitleInTitleArea" runat="server">
       <SharePoint:ListProperty Property="LinkTitle" runat="server" id="ID_LinkTitle"/>:
       <SharePoint:ListItemProperty id="ID_ItemProperty" MaxLength=40 runat="server"/>
<asp:Content ContentPlaceHolderId="PlaceHolderPageImage" runat="server">
       <IMG SRC="/_layouts/images/blank.gif" width=1 height=1 alt="">
<asp:Content ContentPlaceHolderId="PlaceHolderLeftNavBar" runat="server"/>
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
<script language="javascript" type="text/javascript"> 
function PreSaveAction() { 
    var date1 = getTagFromIdentifierAndTitle("INPUT","DateTimeFieldDate","Date Product Completed"); 
    var dropdown1 = getTagFromIdentifierAndTitle("select","DropDownChoice","Is Product Completed");
    if (dropdown1.value == "Yes" && date1.value == "") 
        alert("If the Is Product Completed option is set to Yes, then the Date Product Completed field must have a value."); 
        return false; // Cancel the item save process 
    return true; // OK to proceed with the save item 

// getTagFromIdentifierAndTitle: Find a form field object using its tagName, identifier, and title to find it in the page 
// Arguments: 
//        tagName:            The type of input field (input, select, etc.) 
//        identifier:         The identifier for the instance of the fieldName (ff1, ff2, etc.) 
//        title:              The title of the list column 
function getTagFromIdentifierAndTitle(tagName, identifier, title) { 
    var len = identifier.length; 
    var tags = document.getElementsByTagName(tagName); 
    for (var i=0; i < tags.length; i++) { 
        var tempString = tags[i].id; 
        if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len)) { 
            return tags[i]; 
    return null; 

<table cellpadding=0 cellspacing=0 id="onetIDListForm">


I'm encouraged about the encouragement on my SharePoint posts...

Category SharePoint
Having been a fervent YellowBleeder over the years, I wasn't too sure how this new aspect of my professional existence might be received on the blog.  Trust me, had you said I'd be in this position a year or so ago, I would have laughed hysterically.  Never say never, however...

One of the reasons I want to share this with the Lotus Community is that as much as we hate to admit it, SharePoint's a reality out there.  For some of us, it's even more of a reality than that.  There are a small number of bloggers who gladly expound on the virtues of Notes/SharePoint coexistence, and that's one resource for information.  But in the two cases I'm thinking of, both of them have some sort of vested interest, a little "skin in the game", so to speak.  That's not to say that I distrust either source, as they have the technical information that I don't (yet) have.  But still, money and sales can be on the line, and you can never quite totally rid yourself of the "who benefits from this viewpoint" question.

On the other hand, I'm not selling for IBM or Microsoft.  Yes, I've been a long-time Notes supporter, and I'll always love the platform.  But I'm not attempting to meet a sales quota or sell you a tool I built.  As I mentioned yesterday, I simply want to make it easier for those traveling the same path, either now or down the road.  Relating new knowledge to what you already know is a great way to understand things.  And the sooner you can place things in context, the sooner you can start getting down into the weeds and delivering on your new responsibilities.

So, I don't plan on this becoming an "all SharePoint, all the time" blog.  And I *do* hope to not become more biased than I already am.  If I stray, call me on it.  With any luck, we'll all learn a few things along the way, remaining merrily employable over the long run.  :)


First formal SharePoint end user training today...

Category SharePoint
So today I had my first exposure to SharePoint end user training.  This was a day-long class to familiarize end users with basic "out of the box" functionality that's provided with SharePoint.  As I travel down the SharePoint/.Net path, I plan on sharing observations and commentary based on what I know from the Notes world.  I'll try (time will tell how successfully) to provide an honest perspective of what works well and what doesn't for those in the Notes community that may be facing this same scenario.  I'm not "the expert", but just someone who may have traveled the path before you did, and can point out the muddy parts of the trail before you slip and fall...

In terms of a consistent user interface on a single platform, SharePoint is nice.  In that sense, it's more accurate to compare SharePoint to WebSphere Portal.  The ability to provide a common look and feel for portlets ("web parts" in SharePoint terminology), as well as giving the user a fair level of control over their environment, definitely beats having to recreate something like that on the Notes platform.  In fact, in terms of "pure" Notes/Domino (if that's the apples to oranges comparison you're making), SharePoint is more user-friendly in my opinion.  The more accurate comparison on that criteria would be with Quickr or Portal.

Where I'm having more of a concern is with the technical capabilities behind the interface.  I'm still reading and studying, so it's too early to make any definitive statements comparing SharePoint with Notes/Domino (or Quickr or Portal).  And let's be honest...  Quickr has had its share of "new version breaks old version" or "new version of Quickr not supported on newest version of Domino" issues.  But when I see tweets and blogs with statements like "folders are evil" and "lists are limited to 2000 documents", I get a little edgy.  I don't have the technical context to know if that means what I think it does, but I see potential limitations.  

I also now understand that white paper written about a month or so ago that stated that a significant number of companies have security issues with SharePoint.  At first I thought this was due to buggy software, but their point is that sensitive information is not properly restricted to the targeted audience.  The same issue exists for uncontrolled Notes environments, too.  Seeing how people can create a MySite page and add a document web part so easily is impressive.  Knowing that most won't understand the security ramifications is scary.  Think of it...  spreadsheet with payroll information put to a team site without tight security.  The search indexer grabs it.  Everyone can find it.  

Repeat after me...  GOVERNANCE IS CRITICAL!

Again, as a Notes person, I can't get cocky here.  You can create the same issues in Notes just as easily.  Someone creates a teamroom, sets default access to reader, and proceeds to post sensitive information without understanding the security model.  When you look at creating a whole new SharePoint environment from scratch, you realize that you can quickly reach the same level of information mismanagement that it took you 10+ years of Notes experience to create in your current environment...  :)

As I get more into the technical end, I expect to find cool features and nasty limitations.  For instance, I'm reading a book called Essential SharePoint 2007 right now.  Great book to give you the 50000 to 5000 foot view of the product.  I finished a chapter where they talk about server configuration, and how you can do anything from a single server running everything (STRONGLY discouraged for anything but basic development or very small workgroups) to multiple servers in a farm handling different aspects.  When the author says "there is no migration path from a single server to multi-server configuration, so choose carefully", I start to appreciate even more how much Domino does for you in a single package.  I suspect that the "number of moving parts" observations will be the most enlightening as I move forward.

I promise that future posts will be more concise and less rambling.  But I woke up at 1 am this morning, and I'm really brain-fried right now.  :)

Want to support this blog or just say thanks?

When you shop Amazon, start your shopping experience here.

When you do that, all your purchases during that session earn me an affiliate commission via the Amazon Affiliate program. You don't have to buy the book I linked you to (although I wouldn't complain!). Simply use that as your starting point.


Thomas "Duffbert" Duff

Ads of Relevance...

Monthly Archives