Stumbled upon interesting URLs from the Notes 8 client

So I was trying some stuff in Notes 8.5.1 yesterday and stumbled upon the following two URLs which I found quite interesting:

  • notes:///clientbookmark?openworkspace
  • notes:///clientbookmark?openreplication

These are of course probably 100.000% unsupported but in my Notes 8.5.1 client they do exactly what they say. The first open the workspace and the latter the replicator. That’s cool! They probably also work all the way back to Notes 8.

Happy Friday!

LotusScript.doc v2 beta 5

Beta 56 (and hopefully the last beta) of LotusScript.doc v2 is out – get it here (lsdoc_200beta6.zip). This beta fixes minor issues with comment parsing and makes logging easier to configure by gracefully failing if not configured in java.policy (for more info see LotusScript.doc v2 – java.policy changes required).

This beta also makes the database run on Notes 7 by not using StringBuilder but StringBuffer instead.

Please note: Please remember to adjust the Java heap size. For more information see this post.

Comments as always welcome here on the blog or by e-mail to lekkim [at] lsdoc [dot] org.

Update: I found a small bug so you’ll get beta 6 instead of 5…

Why you should get Notes/Domino 8.5.1 if you take Notes as a PLATFORM seriously

Yesterday Ed asked “Notes/Domino 8.5.1 available: So what do you think?” so I thought I would take a little time and reflect over the new release. I have to admit that I have been running 8.5.1 as my production client for so long that it’s difficult to remember what’s new but I’ll give it a try.

For me as developer and a “Java guy” the main things about 8.5.1 is of course the new DDE extensibility API and the official release of the Java UI API not to mention that we FINALLY have a decent LotusScript/Java editor in DDE. That’s great but that’s is not it.

On of my biggest pet peeves with IBM has been how they for a long time referred to Lotus Notes as a mail client. It IS a mail client but albeit much more than that. By far. Notes 8 (Standard) showed the way by giving us a PLATFORM to develop for. Part of the platform is Java extensions no matter whether they are for the sidebar, toolbar or context menus. Java extensions are of course also an integral part of the Composite Application framework. The biggest problem with the Java extensions when Notes 8 came out was that they were hard to provision to users. That was later remedied by the introduction of widget descriptors (drag’n’drop install of Java extensions to the MyWidgets sidebar or using the widget catalog) so that’s great. The approach had however one major flaw in that the Notes client prompted users when installed unsigned Java extensions. There were ways around it but it wasn’t pretty.

So….

The reason to get 8.5.1 if you take Notes as a PLATFORM seriously is a little, tiny, addition to the security policy in Domino Directory. “But you’re a developer” you might say and you’re (mostly) right. This addition is however of great importance to all developers – it may just be the one thing that gives you success with your Notes Standard client deployment.

Once you have upgraded to 8.5.1 open your Domino Directory and check out the Security Settings document for policies. Switch to the “Keys and Certificates” tab and scroll to the bottom. Look closely – you might not see it at first. Way down of the bottom there is a new section called “Administrative Trust Defaults”. In this section you can specify the internet certificates and/or internet cross certificates to deploy to your end users using policies. With this crucial piece in place you can deploy signed Java extensions to end-users and have them install them without being prompted. At all!! The wont get confused, they wont have the option of aborting the install. This is great news and it works great.

Now that we’re able to push internet cross certificates to end-users these issues goes away. So go!! Deploy away!! Break out Eclipse and get going writing these Java extensions and deploy them seamlessly and transparently…

Of course there are caveats and stuff you need to know but that’s for another day! Oh – and that’s what Lotusphere is for! ๐Ÿ™‚

NL LUG2009 session time posted

Checked up on the agenda for NL LUG2009 in Amsterdam from 29-30 October 2009 and saw that I’m presenting Friday just before lunch in the “pink room” (11.15-12). My session is DEV08 and is titled “The low down on Notes plugin distribution and provisioning” and will teach you all you need to know about plugin deployment and provisioning for the Notes 8 client using policies, widget catalogs and certificate management. If you want to transparently and seamlessly deploy Java plugins to Notes clients attend this session where the missing policy pieces added in Notes/Domino 8.5.1 will be covered.

Experiences from doing Notes 8.5 application development workshops

Tuesday, Wednesday and Thursday of this week I conducted the third installment of my Notes 8.5 application development workshop to 10 new attendees. This workshop is quickly becoming a big success and as of now 3 more workshops are planned in the near future. I see the big interest in the workshop as an indication that companies and developers are interested and excited about the new Notes releases – especially Notes 8.5. There are of course good reasons for this as Notes 8 is the first Notes release in a long time to actually contain major new features and improvements to the application development platform.

Another interesting thing is that the interest in the application development workshops seems to carry over to Domino administration. Quite a few attendees has gotten back to me asking for an equivalent administration workshop which I find interesting. These are exciting times for the Lotus Notes and Lotus Domino platform.

The agenda of the workshop looks like this:

  • Day 1
    • Introduction to Domino Designer on Eclipse (DDE)
    • MyWidgets / LiveText (introduction and exercises)
    • XPages (introduction, “simple exercise”)
  • Day 2
    • Recap day 1
    • XPages (continued), more details
    • Extended XPages exercises
    • Introduction to Composite Applications
  • Day 3
    • Recap day 2
    • Composite Applications exercises
    • Introduction to Eclipse and Lotus Expeditor infrastructure
    • Introduction to Notes 8 Java sidebar plug-in development
    • Sidebar plugin exercises
    • Recap day 1, 2 and 3

Among the topics covered XPages and MyWidgets/LiveText are the ones that garner the most interest by far. Once attendees discover how quickly and easily they can construct applications using XPages they are very excited. It’s funny to simply sit and observe them as they complete the “simple” introductory exercises where they create XPages, play with data binding, auto-suggestions for text fields, themes, styling etc. They tend to smile a lot! They are amazed of how easy it is to develop applications and how quickly they can produce a professional looking application. The fact that all the @Functions have been converted to JavaScript is of course a big win as even Notes 6.5 / 7.0.x developers are productive right out of the gate.

Couple this with the fact that XPages will run natively in the Notes client come Notes 8.5.1 and they’re definitely sold! They’ll never go back to WebQueryOpen agents again that’s for sure! ๐Ÿ™‚

After XPages comes MyWidgets and LiveText in popularity. Many, if not all, start out with the same approach to widgets as I had when I first heard of them namely “why would I ever want widgets in my Notes client?” and “how can a Google gadget make me more productive?” Once they are introduced to the technology, see how easy widgets are to develop and how widgets can be coupled to the Notes client using LiveText they are sold. They see why MyWidgets and LiveText might be the easiest and most powerful way to add functionality to the Notes client and why it may be one of the greatest additional to the Notes client in a long time.

Now comes Composite Applications. Understanding the concepts and the technologies behind Composite Applications and seeing the benefits and how Composite Applications can be applied in the real world is difficult to some of the attendees. All are able to follow the exercises and all see what IBM Lotus is trying to achieve with Composite Applications but few will start developing Composite Applications back home. I think this is due to the concept being a bit too abstract and because it’s too difficult to develop the applications. There’s too many things you “just need to know” such as obscure component/page preferences and the UI is not up to par. I tell attendees that much has changed for Notes 8.5.1 but I fear that many still find it too difficult to bother messing with. I hope I’m wrong but that’s how I see it.

The final topic covered is Java plugin development for the Notes 8 client. Attendees get an introduction to Eclipse/Lotus Expeditor and the plugin architecture of the client – basically I do a presentation like my Lotusphere 2009 session before they do exercises. I also show to series of demos of stuff that can be done using plugins that cannot be done any other way.

I find that many attendees like the flexibility and power they get from Java plugins but that the feedback is also that the learning curve is too steep. Many attendees lack the application development and Java skills required to develop these kinds of plugins. For many it also becomes a question of where they get the most “application development bang for the buck!” Spending their time learning XPages and MyWidgets and hoping that MyWidgets grow more powerful in time, or start learning Java to embrace Java plugin development. Many opt for the former which I guess is understandable.

To sum up the feedback from these workshops have been great and they are a big win to our customers. Attendees see the power of the Notes platform and I feel that attendees leave with renewed excitement about the platform and I trust that they carry this excitement back to their respective jobs and companies. They leave with a renewed interest in Notes and seeing it as a platform – not as an e-mail client