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

By Date: April 2008

So you want to be a Domino developer?

The good news: most of the skills that will help you to excel in Domino are generic and can be applied to any development environment.
The bad news: there is a lot of stuff to learn. I'm compiling a roadmap for (Domino) Developers wannabees taking a little broader approach. This is my first draft:
Development skills required for development in general and Domino in particular
In the coming days and weeks I will discuss/fill each of this circles with details and recommended readings/training material. Feedback is highly appreciated.

Posted by on 29 April 2008 | Comments (8) | categories: Show-N-Tell Thursday

Shenzhen Impressions

This week I had my second trip to China. Last time I went to Beijing in 2005 for an eGovernment conference. This time I was visiting customers in Shenzhen just across the border of Hong Kong. I spend a few days in Hong Kong with the Hong Kong Lotus team. Getting to Shenzhen from Hong Kong is easy. You get an MTR ticket (that's the local train/subway system) and it drops you directly at the border. Around noon there wasn't too much traffic and it took less then 30 minutes to clear the border.
First impression: A modern city on par with any western city. Spacious, clean and quite some flair. Entering a cab I was reminded: That isn't Hong Kong anymore. My driver didn't speak English. Luckily I picked up a wireless signal and showed him the Chinese web site of the Kempinski so he got where I wanted to go to. A call to my Chinese colleagues to confirm reassured him, that he was on the right track. Shenzhen is pretty big (my colleague claimed it is the second biggest city in China after Shanghai) but traffic was bearable.
We went for dinner in a local place, not one of the countless new fancy restaurant, but one where locals would go if they are hungry. My host and the dining place owner had good fun with me insisting to try stuff as local as possible. We had a nice sweet & sour fish, tofu and some spicy green vegetables. The leaves looked kind like tree leaves or stuff that grows on bushes. The combination of the fresh, slightly bitter green with a hot chilly vinegar dressing was very special, I liked it a lot.
The command of English was relatively limited and my colleague Damien from Lotus South China (who is a Hakka like my wife) had to translate quite a bit. After a while we found a good operation mode, where I would draw sketches on the white board, decorate them with technical keywords and sequence numbers. All IT people we met where eager to speak English and I guess they will improve very fast.
The industrial area our customers were in were huge and I practically saw the "birthplaces" of any gadget I could think of. The urban layout, while covering a huge area wasn't a suburban sprawl, but a clustered development with a lot of high rise buildings. This layout allows the implementation of efficient public transport. It looks like the city planners had a careful look at a lot of concepts to pick from.
There is much discussion on The rise of China. I think these are utterly missing the point. It is not the rise but merely the recovery of China. Why recovery and not rise? Well understanding China, from my point of view, includes looking at a longer time frame than the last 50 or so years. You need to look at the Chinese history as a whole, that would be 5000 years. In that period the great empire was formed, fell apart, shined and vanished multiple times. Until the 17th century China was *the* economic and military super power, a huge number of inventions and innovations like the compass, gun powder or rockets (in the form of fire works) originated from China. Looking inwards being busy with dynastic feuds China fell behind in the 19th and 20th century. Just a century later (and what are a few hundred years when your scale is 5000) China is on its way to claim that top spot back. When you look at not only the PRC, but at the Chinese at large including Taiwan, the Chinese in South East Asia (Singapore anyone) and European and Americans from Chinese decent, the Chinese are already there. And my sons can confirm one of the main reasons: "The Chinese mother is very demanding [about study results]".

Posted by on 26 April 2008 | Comments (2) | categories: Travel

Notes and Domino's most wanted

It is all out there. Sometimes it is hard to find. Support has compiled various lists with " most wanted documents": Enjoy!

Bonus Track: The official history of Lotus Notes and the wiki version

Posted by on 18 April 2008 | Comments (0) | categories: Show-N-Tell Thursday

Creating SQL Statements from form definitions

I had an iteresting discussion with a customer this week. They use Domino and dotNet for their web applications. Their decission criteria when to use what: if the data of the application needs to be fed into their data warehouse at a later point of time, they use dotNet since storage there typically ends up in an RDBMS. The biggest problem they face, in their own voice: " Our users are pretty spoiled from Domino. They expect days as turnaround time for applications. Using dotNet it takes at least three times longer."
So I asked why they don't use DECS to connect to the RDBMS. They could develop the application in Notes/Domino and once the app does what the user wants just add the tables in the RDBMS and link them up using DECS. They asked back if there is a way to generate the table or at least the create table statement from Domino directly. The short answer: Yes, you can, however you need to make decissions on datatypes and field length. The long answer: you need Domino Designer (for the Tools - DXL Utilities - Transformer ... menu) and a little XSLT stylesheet.

Read more

Posted by on 10 April 2008 | Comments (7) | categories: Blog Show-N-Tell Thursday

How I got started with Lotus Notes

OK it is going round. So here is my story. After National Service I went to law school in W├╝rzburg and Frankfurt. To make some money I worked as intern in IBM 1985-86 in my specialty, the IBM /36. IBM introduced me to the all new PC / PC XT and PC AT. Very soon I worked as freelance consultant and trainer for  applications like IBM Displaywrite, Harvard Graphics and Lotus 1-2-3. In a gig with Sears I learned the @formula language on the fly (the manual, me and the midnight oil) as well as the secrets of monthly financial reporting (I had some experience since I did COBOL at the university).
So I got pretty good at teaching and programming 1-2-3. I also used the later Lotus Products like Symphony, Magellan and got really fond of Lotus Agenda.
When Lotus Notes 1.0 came out, I was curious and got exited, so I called Lotus and wanted to buy Notes licences. I've been told they would only talk with me 500 licences onwards. So I looked around in my office and asked back, what I should do with the other 497 licences, so the deal was off.
After Notes 2.0 came out, in 1992, I tried again, getting the same answer but with the remark, that a Lotus Business Partner could sell me less licences. So I looked around and at the end bought my first Notes licence from Haus Weilgut. They are still around and are the makers of the Lotus Notes MindMapping application Mindplan.
After working a few month with Weilgut's CRM solution curiosity got the better of me and I fired up designer (which was part of the Notes client then) and started to mess around with the forms and views of the applications. Pretty much everything I know about development I learned in self study and by picking any brain that came close enough. 1996 I started to work as freelance trainer for the Digicomp AG in Switzerland and got my CLI certification. Being a CLI in Germany Lotus Education started to take care of me and I got quite busy. 1997 I met Bob Balaban at the Lotus Advisor Magazine Conference in Phoenix, AZ. I got a hand signed copy of "Programming Domino 4.6 with Java" and consider Bob a friend since then. 1998 Credit Suisse did send me to Singapore and Hong Kong for a training project and I decided to stay. After a few steps I signed up with IBM in 2006 as Lotus Technology and Productivity Advisor ( LTPA for short).
What's your story?

Posted by on 07 April 2008 | Comments (1) | categories: IBM Notes Lotus Notes

View Selection Formulas

Application performance in Notes and Domino can greatly vary depending on the number of views and the view selection formulas you use. When inheriting databases applications for maintainance there is no real easy way to get an overview what view selection formulas have been used. So I did write myself a function that creates a document with such an overview table.See the function below. To test it I simply copy it into an agent and call it for the current database.
Of course you could think of running it against multiple databases or altering the html with some Ajax stuff to make it sortable. Here is my test agent:
Option Public Option Declare Sub Initialize Dim s As New NotesSession Dim db As NotesDatabase Dim doc As NotesDocument Set db = s .CurrentDatabase Set doc = db .CreateDocument Call ReportViewSelectionFormulas (db , doc ) Call doc .send ( False ,s .UserName ) End Sub
This LotusScript was converted to HTML using the ls2html routine,
provided by Julian Robichaux at nsftools.com.
Update: Sorry folks, got the wrong code in the core functionsm fixed now. Enjoy!

Read more

Posted by on 04 April 2008 | Comments (5) | categories: Show-N-Tell Thursday


There is quite some turmoil around the OOXML voting as an ISO standard. To me it looks like the law of unintended consequences in full swing. I think the irregularities need to be sorted out and processes need cleanup (Do they?). The whole mess seems like a warped failure of communication between an Anglo-Saxon and Continental European view of the world (this probably will warrant a longer post somewhen else). In short: In an Anglo-Saxon view anything that is not specifically outlawed is OK to do. For the children of the Code Civile adhering to the intend of law and morals have equal weight. While paying marketing $$$ is not formally bribery, using it as an incentive to get partners doing things they never intended to becomes borderline.
Anyway my position on OOXML: I'm in favor of OOXML becoming an ISO standard, but not as fasttrack. It must go through the due process (which might take a while). Eventually it would end as an extension to ODF where ODF is lacking, which would be a good thing. But also as an independent alternate standard it would be OK. Key anyway is: due process not cut corners fast tracking.

Posted by on 02 April 2008 | Comments (0) | categories: Software

Domino next++

Domino's next version is under active development and as much as I would like to share details I'm bound by an NDA. However glimpsing into the future beyond the current version is something I can do (to some extend). To understand where Domino is heading, you need to be clear, that software is about people. Always has been, always will be. A little story to illustrate: In the 70th and 80th IBM trained a lot of IT experts in internal training programs only to "loose" them to the open market soon after their training completed. Everybody thought IBM should bond their trainees, until it became clear, that the "lost" trainees turned out to be the most loyal customers.
So again " The emperor sends out his knights" to ensure the future success (OK, one came back already). With our experts in strategic positions big things are in store for Domino next++ (Could be Domino 9.0 or Domino 10.0).
The interest the DB/2 integration led to some radical ideas around the storage engine and I'm exited to share that Domino will support CouchDB as storage engine. Since Damien did wonders to the @Formula engine, he will do that again for the database. He will work with the soldiers in the field to also provide seamless connectors to access local stores of other messaging systems natively (so no more migration of your Outlook or Thunderbird archives, just use them).  The Domino web container will be powered by the Zero engine. Zero (together with Jazz) is my favorite IBM project. Zero provides language environments running on a JVM: JavaScript, Java, PHP. So the Domino implementation will add LotusScript.0. Just imagine the possibilities: Writing Domino agents in PHP, Execute an @Formula in Java without invoking the ORB. We have some exiting possibilities coming up.

Posted by on 01 April 2008 | Comments (5) | categories: IBM Notes Lotus Notes