358 Lotus blogs updated hourly. Who will post next? Home | Downloads | Events | Pods | Blogs | Search | myPL | About 
Latest 7 Posts
Creating nginx configurations for Domino SSL
Sat, Sep 20th 2014 331
Tracking down slow internet on SingTel Fibre to the home
Tue, Sep 16th 2014 87
Foundation of Software Development
Fri, Sep 12th 2014 153
Flow, Rules, Complexity and Simplicity in Workflow
Wed, Sep 3rd 2014 164
Rethinking the MimeDocument data source
Mon, Sep 1st 2014 195
Bikepad SmartPhone mount review
Mon, Sep 1st 2014 115
Long Term Storage and Retention
Thu, Aug 14th 2014 168
Top 10
Domino Development - Back to Basics - Part 5: Finding data - Collections and Search
Thu, Jan 2nd 2014 896
Documents vs eMails
Fri, Jul 4th 2014 417
Creating nginx configurations for Domino SSL
Sat, Sep 20th 2014 331
From XML to JSON and back
Fri, Jul 11th 2014 328
Workflow for beginners, Standards, Concepts and Confusion
Thu, Jul 24th 2014 282
Designing a REST API for eMail
Sat, Aug 9th 2014 278
Warriors of Light
Sun, Jul 20th 2014 266
The folly of root cause analysis
Wed, Jul 9th 2014 255
Cycle where?
Sun, Jul 13th 2014 252
Running vert.x with the OpenNTF Domino API
Wed, Aug 6th 2014 244

So you want to be a Domino developer - revisited
Stephan H. Wissel    

It has been a long time since part 1 and a lot of things have changed since the original graphic. XPages came along, Dojo got some decent documentation and everything became social. However the the graphic hasn't changed that much:
Domino Development Skills
There's ServerSide JavaScript and XPages, which isn't hard to snap up if you had sufficient exposure to JavaScript and XML (as suggested before). For die-hard-LotusScript-Forms-Only developers the new HTML/JavaScript driven way of doing things is a big learning curve. There is a Domino Designer that looks more and more like an Eclipse plug-in (which IMHO is a good thing) and made you put SSD and RAM on the Christmas wish list. What is new (and don't tell me next year you haven't seen it coming) is the convergence in all IBM APIs towards a set of common standards. Moving forward you must make yourself familiar with them. In a future version of Notes they will become the API of choice for exceptional work experiences (I shamelessly borrow a term from IBM marketing here). Since you are already familiar with XML, HTTP and JSON, these APIs are actually easy to comprehend:
  • ATOM Publishing Protocol (AtomPub): XML based format for reading and writing information with structured meta data. Properly implemented is makes heavy use of Dublin Core meta data descriptions. ATOM is behind a lot of data exchange and API including OData (the format Microsoft and SAP have committed to). There is Apache Abdera for Java, support for Atom in Dojo and even jQuery
  • OpenSocial: Framework to build applications for integrated experiences. The title might be a bit misleading, since it is much more than "add a share this" button to your page. It is a complete widget definition and interaction standard. Extends iWidgets. Both IBM Portal as well as the IBM XPages server will be both OpenSocial containers and widget contributors. Already today a Domino server cann serve a component in RCP Widget and iWidget format, so we can expect that the component model will support OpenSocial too
  • ActivityStreams: While OpenSocial defines interaction up to the UI level, ActivityStreams are the pipes feeding new information into your experience. The ver brief definition: ActivityStreams are ATOM data feeds that have at minimum the agreed set of attributes ad defined by the ActivityStreams working group. I expect ready ActivityStreams controls to first appear in the XPages Extension Library before they move to the product core control set
  • Last not least the IBM Social Business Toolkit: It brings all the above components together. The real remarkable aspect: As of today there is no shipping IBM product supporting the full API, nevertheless IBM provides a working test environment, so you can test and be prepared
From my training experience I can tell: If you grew up with web standards, developing on the XPages platform is fast and fun.

May 02, 2011
15 hits

Recent Blog Posts

Creating nginx configurations for Domino SSL
Sat, Sep 20th 2014 1:12p   Stephan H Wissel
Websites need to be secure, so the SHA-1 cipher is coming to an end. Despite best efforts, Domino is stuck with this outdated Cipher. While you can, on Windows, hide Domino behind IHS, I find nginx easier to tame. Jesse explains how to configure nginx as the Domino proxy. So all is good, expecially since he also covered High availability. But when you have a lot of sites, that's a lot of typing (and copy & paste from the Internet site documents). Mustache to the rescue! I've written abou [read] Keywords: domino ibm java server

Tracking down slow internet on SingTel Fibre to the home
Tue, Sep 16th 2014 8:12p   Stephan H Wissel
SingTel makes big claims about the beauty of their fibre offering. I do not experience the claimed benefits. So I'm starting to track down what is happening. Interestingly when you visit SpeedTest, it shows fantastic results. I smell rat. So I ran a test with Pocketinet in Walla Walla, WA. SpeedTest claims a 5ms ping response, but when I, immediate before or after such a test, issue a ping -c5 www.pocketinet.com I get results rather in the range of 200-230ms. Ein Schelm wer böses dab [read] Keywords: ibm google server wiki

Foundation of Software Development
Fri, Sep 12th 2014 6:13a   Stephan H Wissel
When you learn cooking, there are a few basic skills that need to be in place before you can get started: cutting, measuring, stiring and understanding of temperature's impact on food items. These skills are independent from what you want to cook: western, Chinese, Indian, Korean or Space Food. The same applies to software development. Interestingly we try to delegate these skills to ui designers, architects, project managers analyst or infrastructure owners. To be a good developer, you don't [read] Keywords: ibm development wiki

Flow, Rules, Complexity and Simplicity in Workflow
Wed, Sep 3rd 2014 6:13a   Stephan H Wissel
When I make the claim "Most workflows are simple", in return I'm hit with bewildered looks and the assertion: "No, ours are quite complex". My little provocation is quite deliberate, since it serves as an opening gambit to discuss the relation between flow, rules and lookups. All workflows begin rather simple. I'll take a travel approval workflow as a sample (resemblance of workflows of existing companies would be pure coincidence). The explanation is simple: "You request approval from [read] Keywords: google

Rethinking the MimeDocument data source
Mon, Sep 1st 2014 12:13p   Stephan H Wissel
Tim (we miss you) and Jesse had the idea to store beans in Mime documents, which became an OpenNTF project. I love that idea and was musing how to make it more "domino like". In its binary format, a serialized bean can't be used for showing view data, nor can one be sure that it can be transported or deserialized other than through the same class version as the creator (this is why Serialized wants to have a serialid). With a little extra work, that becomes actually quite easy: Enter JAXB. [read] Keywords: domino lotus notes xpages email java linkedin openntf oracle profile xml

Bikepad SmartPhone mount review
Mon, Sep 1st 2014 10:12a   Stephan H Wissel
This is my field impression of the Bikepad SmartPhone mount having used it for a few weeks on my Montague Paratrooper pro TL:TRThe Bikepad is a highly functional accessory to keep your phone on your bike fully functional. Is has quality craftsmanship and a sleek design. If I had an editor-refuses-to-give-it-back award to give (I actually paid for it), I would award it. I do cycle for longer durations and some rough spots, so I like to keep a phone in reach. Not at last to keep SWMBO updated. [read] Keywords: iphone wiki

Long Term Storage and Retention
Thu, Aug 14th 2014 6:14a   Stephan H Wissel
Not just since Einstein time is relative. For a human brain anything above 3 seconds is long term. In IT this is a little more complex. Once a work artefact is completed, it runs through a legal vetting and it either goes to medium or long term storage. I'll explain the difference in a second. This logical flow manifests itself in multiple ways in concrete implementations: Journaling (both eMail and databases), archival, backups, write-once copies. Quite often all artifacts go to medium term [read] Keywords: domino ibm notes application archive database email office wiki xml


Time stamped encrypted archives
Wed, Aug 13th 2014 9:12a   Stephan H Wissel
Developers use Version Control, business users Document management and consultants ZIP files. From time to time I feel the need to safeguard a snapshot in time outside the machine I'm working with. Since "storage out of my control" isn't trustworthy, I encrypt data. This is the script I use: #!/bin/bash ############################################################################ # Saves the given directory (%1) in an SSL encrypted zip file (%2) within # the personalFiles folder. The name [read] Keywords: connections ibm linux network wiki

Designing a REST API for eMail
Sat, Aug 9th 2014 11:12a   Stephan H Wissel
Unencumbered by standards designed by committees I'm musing how a REST API would look like. A REST API consists of 3 parts: the URI (~ URL for browser access), the verb and the payload. Since I'm looking at browser only access, the structured data payload format clearly will be JSON with the prose payload delivered in MIME format. I will worry about calendar and social data later on. The verbs in REST are defined by the HTTP standard: , PUT, and DELETE. My base url would be http://localhost [read] Keywords: ibm email wiki

Running vert.x with the OpenNTF Domino API
Wed, Aug 6th 2014 1:11p   Stephan H Wissel
In the first part I got vert.x 3.0 running with my local Notes client. The mastered challenges there were 32 Bit Java for the Notes client and the usual adjustment for the path variables. The adoption of the OpenNTF Domino API required a few steps more: Set 2 evironment variables: DYLD_LIBRARY_PATH=/opt/ibm/notes LD_LIBRARY_PATH=/opt/ibm/notes Add the following parameter to your Java command line: -Dnotes.binary=/opt/ibm/notes -Duser.dir=/home/stw/lotus/notes/data -Djava.library.path=/opt/ib [read] Keywords: agent domino ibm lotus notes notes client applications eclipse java openntf

Created and Maintained by Yancy Lent - About - Blog Submission - Suggestions - Change Log - Blog Widget - Advertising - Mobile Edition