Meanwhile…

July 9th, 2005

Meanwhile

Pat Collins today sent me an email talking about an open source Lotus SameTime project called Meanwhile.

The heart of the Meanwhile Project is the Meanwhile library, providing the basic Lotus Sametime session functionality along with the core services; Presence Awareness, Instant Messaging, Multi-user Conferencing, Preferences Storage, Identity Resolution, and File Transfer. This extensible client interface allows additional services to be added to a session at runtime, allowing for simple integration of future service handlers such as the user directory and whiteboard and screen-sharing.

Notes Tips - Tip #2

July 4th, 2005

Notes Tips

Ever had to create a sequential numbering system and the requirements defined a prefix of 0’s? (00003433).

Below is a function I wrote to automate the number generation:

Function AddLeadingZeros(OriginalNum As String, TotalLength As Integer)
AddLeadingZeros = String(TotalLength - Len(OriginalNum),"0") & OriginalNum
End Function

The first parameter is the number you wish to use as the base before the prefix of 0’s. The second parameter is the total length you wish the number structure to be.

Eg.
MyNumber = AddLeadingZeros("55",10)

Will return 0000000055

Notes Tips - Tip #1

June 28th, 2005

Notes Tips

When I first started doing Lotus Notes/Domino I created a database to capture all of my “Notes On Notes”… Basically Hints, Tips and things I learned or crafted that would help me out in future projects. So with that said, here is Tip #1.

Call an Agent Using Javascript Passing Parameters

1) Create a COMPUTED TEXT field called DBServerPath and add the following code to the value:

"/" + @ReplaceSubstring(@Subset(@DbName;-1);"\\";"/")

2) In the onClick event of your button add the following Javascript Code (substitute “AgentName” for the name of the agent you wish to run):

var dBPath = document.forms[0].DBServerPath.value
location.href = dBPath + “/AgentName?OpenAgent&Parameter=WhateverHere”

NOTE: that in the agent the context is not the document that called the javascript but the agent itself so you cannot access the DocumentContext.

Notes/Domino Developer Bell Curve

June 27th, 2005

Rocky Oliver over at LotusGeek did a killer job quantifying Notes/Domino developers into a bell curve of such. So good infact, I have mirrored the data here:

Image

A friend of mine asked me about my thoughts on the “breakdown” of skills and abilities of Domino developers - what is the spectrum of the skills and abilities of the Domino developer community? I have been giving this some thought, and I have come up with a table that describes the “Notes/Domino Developer Bell Curve”,
as shown in the graphic above. Before I send this back to my friend, I thought I would post it here for comments, suggestions, etc.

Curve Position Description Skills %

Power Users Power Users are typically what users were before they became “Notes Developers” in the R3.x days. Power users come from a nontraditional programming background, and usually not even a technical background. Power users may have built one or two simple apps using Simple Actions, Forms, Views, and Formulas; typically they only do private views and simple actions, They don’t understand the Domino Object Model nor any other deeper technical aspect of the platform. They simply do the minimum to get their jobs done.
  • Basic Form creation
  • Basic View creation
  • Simple Actions
  • Some Formula language
5%

Notes Developers “Notes” Developers build simple applications using Forms and Views, and they create Agents and Action buttons using Formulas. They only build applications for the Notes client. They typically fear scripting languages such as LotusScript, Web development, etc. Many developers in this category became Notes developers during the R3.x days, but did not progress as Notes/Domino progressed. Many of these people were employed as Notes Developers during the early 1990s, but were washed out when the IT Boom busted.
  • Form creation
  • View creation
  • Formula-based Actions
  • Formula-based Agents
  • Use hide-when formulas
  • Understand the basic concepts of ACL, security, etc.
10-15%

Domino Developers Domino Developers have moved forward as Notes/Domino has moved forward. Domino Developers understand the concepts of design VS data, they have a basic grasp on the container model, and they “get” Domino security including Groups, Roles, ACL levels and priviledges, etc. Domino Developers are very comfortable with LotusScript, but are not doing much Object-Oriented programming in LotusScript, if at all. Many (those who have been doing it awhile) are also “experts” in the Formula language. This group has not developed any Java development skills. Many in this group are developing applications that have Notes interfaces, Web interfaces, or both so they have good skills in Web languages such as HTML, CSS, and Javascript. Domino Developers rarely venture outside of core Domino development. Domino Developers understand more complex application archtecture models such as multi-database applications, centralized configurationn and management, and so on.
  • Advanced Form creation
  • Advanced View creation
  • Use of subforms, shared actions, script libraries, and other Domino design elements
  • LotusScript
  • HTML
  • CSS (some)
  • Javascript
  • Security skills including roles, groups, encryption, reader/author access, etc.
60%

Domino Plus Developers Domino Plus Developers flex their “mad Domino skillz” by venturing into other adjacent technologies such as COM/OLE integration with other products, advanced LotusScript skills such as C API calls, Object-Oriented programming (creating classes, etc.), and more. Domino Plus Developers are also building complex Web-based applications in Domino. They understand the larger concepts of Web development, and they are able to apply them to Domino development. Domino Plus Developers are integrating Domino into with other platform technologies such as Websphere, or they are integrating it by accessing enterprise systems such as Oracle, SAP, etc. They also are coming up with creative workarounds and kludges in Notes/Domino. Domino Plus Developers also understand the Domino Object Model at an intricate level. Some Domino Plus Developers have moved into Java development as well. These folks are usually the best Notes/Domino developers in their organizations.
  • All of the aforementioned skills, at a higher level
  • COM/OLE
  • Some Java
  • Object Oriented programming.
  • Data access skills using SQL, ODBC, and/or third party tools
10-15%

Domino Geeks Domino Geeks are a rare breed. They understand Domino intricately, but have also developed skills outside of Domino. Some are excellent Java developers, some have moved into relational backends, some have turned into exceptional Web developers, but all of them are the cream-of-the-crop in Domino development. They understand the value proposition of Notes/Domino, but are working with other products and platforms as well, and are using Domino in the context of really large projects. Domino Geeks tend to be architects as well. Most Domino Geeks are well-known in the community at large, and are usually involved in Design Review teams with Lotus/IBM. Domino Geeks are the “thought leaders” of the Domino development community.
  • All of the aforementioned skills, but are experts
  • Some other technology or platform expertise
  • Usually enterprise architects as well
5%

How do you see the Domino development
community breaking down? Did I miss a key skill? How is my percentage of
distribution? Keep in mind that there is a much larger development community
than we see interacting in blogs, etc. - I see this when I speak at conferences,
as there are still 40-50 people in the “Jumpstart: LotusScript”
sessions, which means we still have newbies coming into our community.

Help me tweak this table, and then I’ll
send it into my friend.

Thanks!


Rock

IBM Touting Notes/Domino 8

June 14th, 2005

Hannover

Though Lotus isn’t scheduled to introduce ND7 until the third quarter of 2005 Lotus is already showing off some of the capabilities that it’s working to add to a later iteration code named “Hannover”. This and all planned to arrive 12 to 18 months after the release of Notes 7.

According to Lotus officials, at least part of the reason behind divulging its future plans for Notes is to quiet rumors that the company remains uncommitted to the Notes product line.

Hannover will be designed to let people organize and manage their information based on a specific project or topic across various Notes tools. Using a demonstration version of the software, Loria showed that if a person were to click on an e-mail related to a specific issue, he or she could quickly access all of the correspondence that might have been received about the topic from others, regardless of the manner in which those messages were sent. Data could also be organized to reflect communications with a particular person, or group of people, using the software.

Hannover

Skinning Lotus Notes Workspace

June 10th, 2005

This morning I stumbled onto a really cool tool that allows you to skin your Lotus Notes workspace.

It’s called INTEGRATE!People LIGHT EDITION by a company called CODEX

* FREE Desktop skinning (with 12+ example skins - see some here)
* FREE Set Bookmark as Homepage (with 4 examples)
* FREE remove double (=exact same) bookmarks from within the same folder(s) during client startup

Here are the steps I followed to install it:

1.) Download executable HERE
2.) Click on the file to install, choosing the location of your notes\data directory.
3.) After the file is installed, open the “I!P Light” database. You will see a navigator on the left, and at the bottom a section containing documentation. Click on the document titled “Installation and Rollout”.
4.) Click the button that says “Install DLL on this client now”. You should see a message popup saying “DLL extracted to data directory, added ip4free.dll” to notes.ini entry EXTMGR_ADDINS”.
5.) On the navigator on the left, click “Desktop Skinning”, you should now see documents on the right hand side. To install the theme you want, select the desired document, and click the “Activate selected Skin” Action button.

Below is an example of a very very bad skin:

A very bad Lotus Notes Skin!

Emulate ND7s Inbox Recipient Ranking

June 8th, 2005

In the next release of Notes/Domino (version 7) there is a new column added within your inbox that visually indicates the ranking or importance of the email based on the presence of your name in either the To or CC field.

Today I altered my Notes 6.5.4 mail template to include this same functionality:

—Emulate ND7’s Inbox Recipient Message Marking.

If someone sends you an email and your name is in the TO: field there will be a red icon present. If your name is in the CC: field it will be yellow. If your name is in the TO: field but more then 5 people are listed in the TO: field it will be maroon. No support for groups yet.

Edit the ($inbox) folder and add a new column with the following:


a1 := @If(@Contains(@Name([CN];SendTo);@Name([CN];@UserName));115;”");
a2 := @If(@Contains(@Name([CN];CopyTo);@Name([CN];@UserName));120;a1);
a3 := @If(@Elements(SendTo) > 5;116;a2);
a3

Finally Booked DevCon

June 6th, 2005


After hours and hours of redoing PDP’s and administrative crap like upping single credit card purchases we finally booked DevCon. Las Vegas will welcome us July 16th where we will be staying at the JW Marriot off the strip for a few days for the IBM technologies Advisor DevCon conference. July 21st, when the conference is officially over we’ll be heading to the strip for a few days before we arrive back to CMH Saturday July 23rd.