IBM releases components on OpenNTF.org

by Volker Weber

IBM has released a library of 22 components you can use to make composite applications in Lotus Notes 8 through OpenNTF.org. The site does not make it very obvious how you could get at the code, but you probably know that you need to register and logon so that you can download anything.

IBM also does not make it terribly obvious what is actually inside the file you can download, other than it is 22 components. There is no description, there are no screenshot, nada. After you download the ZIP file and try to open it, you get prompted for a password, which you don't have. The archive will then unpack one Microsoft Word document: README_License_Password.DOC. I hope you get the irony. :-) This file then explains what the password is:

ibmreadmepassworddoc

Now that you know what the password is, you can unzip the archive again. So what's inside? ComponentLibrary.nsf, approximately 28 MB in size, signed by one Lukas Geiger of ZetaBank, both of which do not really exist. So shall we trust him or not?

security alert

We are getting closer. Still no documentation, just another huge license display. Finally a description which says:

This feature contains a selection of demonstration components you can use to build composite applications in IBM Lotus Notes 8.

Let's look at a view:

lotuscomponent library

I took the liberty to copy out all the descriptions in order to provide you with a list of the content:

  1. Checker: This presents a check box to the user with configurable text. When checked, it broadcasts mashups of properties set on it.
  2. Clicker: This presents a button to the user with configurable text. When clicked, it broadcasts mashups of properties set on it.
  3. Constants: Broadcast constant values. Useful for wiring "points of variability" to Notes components
  4. Converter: This converts any of the standard types to a generic string type and vice versa
  5. Database Open: A button to let you select a Notes database.
  6. Document Viewer: Accepts a Notes URL and displays it.
  7. Eclipse Selection: This converts the current selected eclipse object into a string. Most useful for broadcasting the Notes url of a line selected in a view.
  8. File Open: A button to let you select a file.
  9. Mockup: A visual only component for mocking up and prototyping UI, or providing labels.
  10. Notes name: This does a Notes Name lookup and pulls out the name, distinguished name, internet address and up to four other fields.
  11. Notes URL Processor: Takes a Notes URL, from action or selection, and extracts values from referenced object.
  12. Sametime Business Card: Displays business card information from Sametime.
  13. Standard Types Tester: This aids in unit testing components with standard values.
  14. Table: This displays a table of values set by an action. Focus and selection state are broadcast through a property.
  15. Tag Cloud: This displays a range of keywords weighted by given values. Selection and focus state can be returned.
  16. Web Clipper: Displays a web page and extracts values.
  17. Web Launcher: Takes a URL, and launches a web browser either in the environment or external to it.
  18. Productivity Editor: This uses the productivity editor to display a document in read-only mode.
  19. Sametime Buddy List: This presents a list of Sametime enabled people optionally tagged with an extra column of information.
  20. Notes Join - Table: This displays a table of values computed from a variety of Notes sources.
  21. Notes Join - Tree: This displays a tree view of values computed from a variety of Notes sources.
  22. Notes to Tag Cloud: This is a component that calculates tag cloud information from a Notes view or Database.

I must admit that I am slightly underwhelmed. After all the "fantastic", "outstanding", and "awesome" comments I was expecting less of "a button to select a file" and "a button to let you select a Notes database" and more of "finds all related information on the Internet and presents the results as a nicely formed and CSS-friendly list". ;-)

More >

Comments

I've played a little with the component apps in Notes 8 and it does have the chance of being a really great area for development to make the Notes 8 client a truly great tool for business. But, it was so painful to get even the most basic app working that I have just stopped looking for the moment. The whole implementation felt like an alpha release to demo features rather than a real world set of tools that a developer can come and start using (let alone a business user).

I think this list of demo components really just backs up my view that we are looking at early adopter territory, not technology that is ready for prime time (yet).

Matt White, 2007-11-20

It's really a shame you just can't see anything as positive. What's cool isn't so much the toolkit -- but that it is a first effort for IBM to contribute in this way to OpenNTF. I put emphasis on first.

Ed Brill, 2007-11-20

I have to agree with Ed on this one. I can only imagine the hurdles that they went through with IBM legal to get this to happen, some may argue putting a man on the moon is easier than posting something publicly with IBM legals approval. Honestly most people would give up trying to get it done, but good to see someone in IBM had the patience to get it done.

After how many years IBM seems to understand the value of OpenNTF, hopefully this is the first of many such posts.

Better samples needed, easier to get at, all good observations, but on this one I think the positive should be stated.

Carl Tyler, 2007-11-20

I'm glad to see it on OpenNTF. And I think that's what most people are excited about, because as Carl said we hope it is the first of many OpenNTF contributions from IBM. But I have some issues with the components themselves.

Unless this is a different upload than was made on the IBM CompApps blog and the Lotus Sandbox, you will not find the actual java source code for most of the eclipse components (at least one of them - the core plugin - does include the code, according to IBM, but the others I've opened do not; I did not perform a systematic search through all 22, though).

So far 3 people, including me, have asked about this in those two locations, without getting an answer as to when we'll have the java code. The JAR files will give you the structure of the classes, but if you want to change them or debug them in any way, you're out of luck. And forget about try to *learn* anything from them. So color me somewhat less than impressed.

Still, I'm very glad IBM is using OpenNTF.

Rob McDonagh, 2007-11-20

Fair comment Carl.

As ever, delivery could be better, but you can't argue with the huge steps that are being taken as regards IBM and OpenSource - not least the work done with IBM sponsoring SNAPPS' OpenSource templates for Quickr and now these components on OpenNTF.

It's going in the right direction...

Stuart McIntyre, 2007-11-20

What's cool isn't so much the toolkit -- but that it is a first effort for IBM to contribute in this way to OpenNTF. I put emphasis on first.

Indeed. That is quite an achievement. Excuse me for not realizing how much effort that is, given IBM's commitment to open source.

Volker Weber, 2007-11-20

Rather than this post being a dig at IBM as a whole (thanks again to Mark Jourdain and everyone else who made this happen), I took this to be a poke at the lawyers that force all of us (including the great and the good at Big Blue) to go through ridiculous licenses and disclaimers.

And really, who gets upset when we have a dig at the lawyers? ;o)

Ben Poole, 2007-11-20

Like any component architecture it has to start somewhere. The component catalog that was posted is a creation from many different people. Apparently some of the contributions did not contain source code, however they were all suppose to contain source code! I believe Jo is getting that fixed. Many of my postings are always considered low level by many, however I get pinged from the developers all of the time thanking me for being that low level. So I think the attractiveness of these components will not be appreciated by someone looking for full solutions but developers who want bits and pieces to make full solutions. Interestingly enough, we will be posting samples and patterns for using these various components in the coming months. And Carl is correct, this was a difficult task to get started and completed and not just from a legal stand point. The ISV team that took this on worked pretty hard to get this collection of samples together.

One sample has already been posted - the BIRT sample you can get here.

Bob Balfe, 2007-11-20

Like any component architecture it has to start somewhere.

Indeed. Didn't this architecture start on WebSphere Portal? How heavily is used there? Can you name some typical scenarios, maybe even facing the Internet so that we can take a look?

Volker Weber, 2007-11-20

@Volker: I was at a meeting where it was related that one of the top requests from customers is that IBM shares its internal tools with them. That's, essentially, what this is. These weren't visioned by product development, designed by UI architects, or developed my core Notes developers. They are just a bunch of stuff that got created while we were building our own internal Composite Applications. I'm not going to say they are devastatingly awesome, just that each one of them was useful to us in some app, and we hope that they will be useful to you in some of yours.

If I were to point you at two, the NotesURL and WebClipper components probably have the widest scope for doing cool things.

@Carl: Yep, getting through legal required education on both sides. But, hopefully, we've set something up that we can do regular updates as we create more components internally without a huge amount of hassle.

@Rob: I did respond to your questions in the forum. The count came to 17 out of the 22 were missing source code. My bad. I will post a new version on Monday that includes the source code. I'll even try to zip up the Eclipse projects themselves and include them in the doc. We got legal approval to post source, and the tests I did showed the source was there. My tests just weren't comprehensive enough!

Jo

Jo Grant, 2007-11-20

Jo, as Carl and Rob have already said, the source code is indeed going to help a lot to get a grip on creating these kinds of components. R&D does not stand for Research and Development as you are probably aware of. ;-)

Volker Weber, 2007-11-20

Old vowe.net archive pages

I explain difficult concepts in simple ways. For free, and for money. Clue procurement and bullshit detection.

vowe

Paypal vowe