Skip to main content
    Country/region select      Terms of use
     Home      Products      Services & solutions      Support & downloads      My account     

developerWorks  >  Lotus  >  Forums & community  >  Best Practice Makes Perfect

Best Practice Makes Perfect

A collaboration with Domino developers about how to do it and how to get it right in Domino

The developers are restlessUlrich Krause asked about our decision-making process about which features get added to Notes/Domino. The details are considered confidential. I'm not sure whether this is because our managers are afraid others will steal our competitive advantage by copying our ingenious process, or they are just embarrassed.

However, I can state some generalities and obviosities.

IBM, like most successful companies, is in business to make money. You make money in software by providing features that will sell additional seats in the short term, while simultaneously trying to keep existing customers happy so that they will continue to buy upgrades. Smart companies also have long-term strategies to assist partners in providing value by giving them the tools they need to integrate and build on top of their software products.
IBM focuses on customers, and what problems customers consider important. The needs of organizations with more seats tend to have more weight on their own, though if a problem is reported by numerous smaller customers, that will also give it a lot of weight, perhaps because their opinions are considered to be representative of similar organizations we don't hear from. We can make single big sales to large companies, but there are a lot of potential seats in SMB.

It's easier to make the case for obvious improvements that sell seats immediately (such as the improved PIM UI of version 8), than it is to argue for strategic changes such as, oh, letting you write a formula to select which database an embedded view comes from (just to choose something at random that one or two people have asked for). That's because the sales person can march into the IT director's office and say, "Look at this cool new UI!" and the IT director will say, "Great! Sign me up for 10,000 seats!" Whereas if they go in and say, "Look, now you can write a formula to select which database your embedded view comes from!" the IT director, who's never created a Notes application, will say, "Um..."

I'm not saying that the UI investments are ill-advised. Far from it; I think they were a terrific idea. But for the relative effort required to implement, the long-term payback for improvements that enable partners is probably as great as that for the big features that make immediate sales. But partners need to be active in making the case for them. Going to Lotusphere and other conferences and asking for them is a good thing to do. Getting customers to ask for them is even more attention-getting for our decision makers. So if you're a consultant developing Notes applications, or a partner trying to create products labeled "Works with Lotus Notes," talk to your customers and potential customers and explain to them why they need the feature. How will it save them money? How will it let you give them features they've been asking for? And then let them call their IBM sales rep and ask for it. Have the Domino developers at the company mob the IT director's office and explain why certain features are important. Also, let Bob Balaban know what you need (and why).

Note: the most-requested features of developers always get approved, but they haven't been at the top of the list, and development of the higher priority stuff has always taken longer than expected, so they've been tending to drop off the end as the deadline approaches. If you can manage to add an extra month between November and December, without letting IBM know about it in advance, that would definitely help get some of these features in.

Andre Guirard | 20 March 2007 06:20:00 PM ET | Caribou Coffee, Minneapolis, MN, USA | Comments (16)


1) How We Decide Which Features Make It In
Kerr Rainey | 3/21/2007 10:23:20 AM

Andre, I think this is one of the dilemmas with Notes / Domino.

One the one hand, Lotus is selling Notes/Domino as an application. What you get out of the box, Mail, C&S, etc and all the stuff that makes that rock solid, replication, clustering, management etc. This is what the sales guys can show to the IT director and say, "Look at this, this is great." If this is your model, the priority will be adding (or fixing) features that you can show to the user in the "application" they bought.

On the other hand, Lotus likes to position Notes/Domino as a platform. "We don't provide the applications, we provide the platform." That has been given as a reason why there has not any investment from Lotus on "Nifty Fifty" applications that could be available out of the box. If this is the model then the priorities would be in providing features for those developing the applications running on the platform you provide.

Clearly from your description the first model far outweighs the second in the decision making process. As a developer, I can find that frustrating, but I accept that Lotus is free to choose the model they feel is best. What I find infuriating is when Lotus claim to be providing a platform and then fail to listen to the real customer for the platform which is the developer.

That said, wow, there's a lot of very cool stuff for us developers to get our heads round on the client side in ND8. Sweet!


P.S. did you get a chance to look again at my Java Newline problem in the ND8 Beta forum? ;)

2) How We Decide Which Features Make It In
Craig Lordan | 3/22/2007 11:52:18 AM

@13 The comment count is a different issue. The template has an agent that runs to update the comment count and sometimes the different replicas get a little out of synch. Looking into that now...

3) How We Decide Which Features Make It In
Ulrich Krause | 3/22/2007 12:24:33 PM

Andre, thanks for your reply. I can understand IBM's point of view; for me as a developer it is frustating.

4) How We Decide Which Features Make It In
Markus Koller | 3/22/2007 2:15:29 PM

Andre, I like your example: The thing with the embedded view, which is inherited from a template and then breaks after doing a design refresh at the custommer's site

a) IS really annoying

b) has been a problem for many years (you can't just send new templates to the customer)

c) has been reported for many years and

d) was asked to fix again at the "Meet the Developpers" session at Lotusphere 2007.

Nothing has changed. And I suppose it will never be fixed.

Some genious DXL gurus will have to write an agent that corrects the embedded views database replica id to point to the correct db at the customer's site.

Developers will curse about Notes because of such things and won't promote Lotus Notes as a really good application framework.

I think, the focus on large companies, selling them Notes just because of the cool new UI is a bit short sighted...

5) How We Decide Which Features Make It In
Charles Robinson | 3/22/2007 3:32:52 PM


In a nutshell you just told us that Lotus is listening, but what we want isn't important enough to put into the product. How could developers be anything but ticked off by this treatment?

I don't want to take you to task for trying to explain an internal process over which you have little to no authority, and I know you also feel some of the same frustrations since you do work with Domino Designer. I appreciate your efforts at being an advocate for us developers.

6) How We Decide Which Features Make It In
Mike Amberg | 3/22/2007 3:46:06 PM

Is there a central request list / website / blog somewhere that we could add our requests?

7) How We Decide Which Features Make It In
Ulrich Krause | 3/23/2007 2:11:02 AM

@Mike Amberg

>> Is there a central request list.

There is no public list, as far as I know. You can only see it in the fix list when a new feature is added.

I'm thinking of a website where we can post our suggestions in addition to the requests to IBM.

8) How We Decide Which Features Make It In
Thomas Schulte | 3/23/2007 3:23:06 AM

Yes a Designer feature request list. With the ability to vote and let us see which feature was realized in release x, y or z.

Must be a managed one because otherwise it would be filled up with garbage really soon.

9) re: How We Decide Which Features Make It In
Andre Guirard | 3/23/2007 9:10:57 AM

On the contrary, I think Bob's appointment is an important step that shows that the concerns of developers are NOT being neglected. That's what organizations do when they feel they need to be paying more attention in a particular area -- they assign someone to be its advocate. That's Bob's job now, he's articulate and influential, and he's not being distracted with other concerns. In point of fact, a bunch of bug reports that he had been working on have recently been reassigned to me, to "clear the decks."

10) How We Decide Which Features Make It In
Ulrich Krause | 3/23/2007 10:59:36 AM

Nevertheless I think that we ( the developers ) need a centralized forum or what have you to post our requests, so that other developers can see, what is already requested.

Today I cannot see if my feature request is already requested by others.

Perhaps we can discuss this with Bob :-)

11) re: How We Decide Which Features Make It In
Andre Guirard | 3/23/2007 1:47:52 PM

Either you allow anyone into such a forum, in which case you have the Notes/Domino forums on LDD, or you limit it to people who we have good reason to think have given the matter a lot of thought -- in which case you have the business partner forum, where people frequently post feature requests and bug reports.

Are you asking for something different from that? A request tracking system, perhaps?

12) How We Decide Which Features Make It In
Ulrich Krause | 3/23/2007 5:07:06 PM

>> A request tracking system, perhaps?

thats it !

13) How We Decide Which Features Make It In
Nathan T. Freeman | 3/24/2007 2:23:17 PM

Notes has had schizophrenia about being a messaging system vs. a dev platform since version 1. This is nothing new. And the only way to guarantee you didn't have it anymore would be to set a rule that the messaging system developers are not allowed to use API facilities of any kind that aren't available to the developer market at large. Eat your own dogfood, and you'll recognize the taste. :-)

But hopefully, Bob's new position will help. It should make some pretty strong headway, at least.

14) How We Decide Which Features Make It In
LongLiveLotus | 4/5/2007 7:14:02 PM

"letting you write a formula to select which database an embedded view comes from (just to choose something at random that one or two people have asked for). "

Please tell me you are having a laugh - thousands of people surely?? To not have this is crap and you know it, it causes users to get agitated on a daily basis...

Whilst I dont disagree about the uninformed CEO getting swayed by a fancy UI, many companies employ and listen to technical people (aka geeks) that they listen to and make informed decisons based on their input.

Listen to the geeks - you guys know they are what keep you in jobs, ie its not just the product its the way (ie releasing business value) its leveraged...

15) How We Decide Which Features Make It In
LongLiveLotus | 4/5/2007 7:25:45 PM

Re 11 -

Andre, I agree with your post but as a developer I see very little evidence of listening and even less of acting upon geek input. The focus now as you have articulated is primarily a (nice UI, trendy eclipse based, powerful MS bashing) marketing one...

In terms of a forum (great idea, I asked for it 2 Lotuspheres ago at Meet the Developers), many of us work for big corporations that have used Notes for many years and know it inside out. We really know what we want from the product. We will NEVER become Business partners and rarely see our IBM contacts as they are primarily sales driven. We therefore pay good money to attend (many in my case) Lotusphere(s) and have our say and rarely does the feedback loop turn full circle. Much as I love Notes and make a living from it I am getting Really Tired of this...

16) embedded view source control
Mike VandeVelde | 4/12/2007 1:28:21 PM

{ Link }

"@53 - News update - look for NotesUIView.CurrentViewEntry in 8.01 (that's not a promise, but I am told it's on the schedule)"

Listening does happen :-)

About the database source for embedded views - add me, make that 3 or 4 (are you sure you're not missing a few zeros there?). The proper picker is there for frame sources and outline entry sources. I can't believe it's "strategic" to use that same picker for embedded view sources - I'd call it tactical as a compliment. I imagine it would have been less work to just use famre/outline entry picker in the first place instead of inventing that triangular wheel of picking the database source on creation from amongst your current bookmarks, and then not being able to change it without burning it down and recreating it and setting all the properties all over again. It's areal thorn in my side to have to put the embedded view on a subform and prohibit it and customize it in every single database and hope it doesn't need to change that often. It would put a little more R in RAD to get that done up proper. Please consider bumping it up the list.

I don't mind seeing work done on things that would most impress people like your IT director example who don't have a clue about the product, like updating icons and whatnot. That stuff is important too. But there should be another pile of stuff ordered by how much benefit developers would get. And maybe another pile of stuff ordered by simplicity of implementation. Improving embedded view source control should be near the top of both of those piles, IMHO, so that when you get around to helping us developers again it gets done sooner than later.

Thank you for your consideration.

 Add a Comment
Comment:  (No HTML - Links will be converted if prefixed http://)
Remember Me?     Cancel

Search this blog 


    About IBM Privacy Contact