The whole FoCul team attended the Engage HCL Technology User Group Conference conference in Bruges this week. It was a fantastic event in lots of ways. Many thanks to Theo and Hilde Heselmans for organising such a professional event for over 300 attendees.
The highlight for me was seeing the whole FoCul team. We been working from home offices for 20 + years but because of COVID we had not been able to get together in person for over two years. Paul and David had never met before – weird. It was also great to meet other people from the HCL Collaboration community. They say it takes a village to raise a child. I think maybe it takes a Domino community to raise a Domino product too😊. It was also great to see Paul and Martin contributing to that community with their “Testing Matters – Don’t Let Users Test Your Code!” – De18 session on automated testing.
HCL was there in force with 1 in 5 attendees being HCL. The HCL team made themselves very accessible and it was great to meet Uffe Sorenson, Keith Brown and Paul Bell who had worked with us on our recent transition to the CCS licencing. I also got to meet with Barry Rosen ( Product Management ) , Scott Favreau ( Domino Server Engineering ) and Thomas Hampel ( Product Management ) to talk about our experiences with Domino. I was genuinely impressed with the calibre of these people and their interest in our experiences with the product.
There were some big announcements ( more below ) which raised more questions than they answered. The good news is that the new stuff is all additive to what is already there. Noticeably neither DQL nor XPages got much of a mention. It has been a while since I have been to a conference but this one did feel as though it had a different balance. It felt as if there were less of the “Show and Tell” dev community sessions and more HCL announcement sessions. I guess this is because the technology is still being announced and developed so the community has not been able to use it and share learning. Perhaps next year there will be lots of community examples on Keep, JNX, DQL and Volt MX.
The Sessions
OGS
The OGS was informative with the major announcement for me being “Volt MX Go”. This seems to be Domino and Volt MX bundled together with added emphasis on leveraging existing Domino skills such as scripting. The scripting includes a new hybrid scripting language called VoltScript which includes elements of Lotus Script, Lotus Formula and syntax similar to VBA. There was more time spent on the semantics of the word “Go” than on the technical detail. It was also announced that the next 3 releases of Domino would be known as Danube, Thames and Rio Grande.
Another significant announcement was that Project Keep has now “pivoted” to be part of Volt MX rather than Domino. There will be an entitlement for Keep to be used with Domino CC* licences. Keep will run on the Volt MX http stack i.e. separate from Domino. This Volt MX stack will have OAuth. There was an awareness amongst the HCL team of the importance of OAuth for the Domino stack but there was no firm roadmap for this. There did seem to be a positive vibe from HCL around this need.
The HTTP stack in Domino does feel due for a significant upgrade, perhaps Volt MX and Domino will end up on the same technology stack ? We will be installing the 12.0.2 Domino Beta soon and presumably we will have Domino on ports 80 and 443 with Keep on 8880 and 8080. We will probably end up with a sub domain dedicated to Keep APIs as customer firewalls may not work with non standard ports.
I am very keen to understand if we can re-use our XPages business logic with Keep APIs. My understanding is that we probably cannot leverage this code ( which uses extensive .xsp methods ). It may be that we use Keep for relatively simple “list” type APIs and we use the XPages REST control for APIs containing more business logic. It would be nice if the XPage REST APIs could tunnel through the Keep http stack in some way so that it was still a single http API end point. It would be even better if it was a single http end point ( not just APIs ).
The Volt MX Go product does not seem to be a threat to the Domino server and it does provide access to the Volt MX mobile technology. I imagine that HCL will be keen for new customers to go directly to Volt MX Go rather than Domino ( which will be a component of Volt MX Go ). The photo below is from a later presentation by HCL. You can see that some functionality is pencilled in for Q3 2022 and some for Q3 2023. Keep is in the 12.0.2 beta which can be downloaded now.
The OGS included a demo of a MVP iOS Volt MX app by Bernd Gewehr. This app allowed construction inspectors to record inspections of motorway construction projects on a mobile device and for the data to then find its way back into the Domino database. There was also an interactive Volt MX web app that was used to capture feedback from the audience during the OGS. This was a nice touch although there were a lot of “500 errors” as the entire audience tried to download it the first time. The venue Wi-Fi was impressive though at a measured 150 MBPs
Paul Withers – Project Keep – DE22
This was a change to the agenda as Daniele Vistalli was unable to attend due to Covid. Paul Withers did brilliant job of presenting the latest Keep beta at short notice. Keep has been “pivoted” to be a Volt MX offering with a Domino entitlement rather than being a Domino offering. The session was very informative although it was a lot of unexpected information to take in from a product strategy POV.
How to run a Helicopter Business on Domino – Arne Nielsen Kjetil Fossum – BU09
This was a really interesting talk. Kjetil’s team have developed a suite of non XPage Domino apps to support the operation of a number of helicopter fleets in Europe. The apps are very focused on this niche and appeared to work really well together. It was particularly interesting for me as we have similar apps in a parallel niche for the operation of petrochemical plants.
12.01 Native Domino Backups – AD05
Daniel Nashed talked about the new backup functionality in 12.0.1. The system is based on work that HCL adopted from Daniel so he is a real expert on the topic. This functionality will add real business value with its “point in time” recovery options and I am very much looking forward to using it.
NOMAD Deep Dive – Thomas Hampel and Bob Sielken – ST02
This presentation by Thomas and Bob was very timely for two reasons. One was that we may have a need to take some of our functionality to disconnected Android devices and the second reason was a very useful comparison to Volt MX which will be available via Volt MX Go.
The need for a SafeLinx server for the Nomad web browser client is being removed and there were various improvements around printing and hyperlinks for Nomad web apps. It does feel as though HCL is still committed to Nomad mobile even with Volt MX.
I actually created my first Nomad iOS “app” during the session and was pleasantly surprised at how well it worked. I need to go away and look at the work by Theo Heselmans – OpenNTF.org – The Open Source Community for Collaboration Solutions and others. I suspect that the crux issues will be around the usability for things like switching IDs ( shared tablets are the norm for shift teams ) and triggering replication as there is no scheduled replication feature.
DE 13 – Super Powers API – Thilo Volprich, Serdar Basegmez
Serdar and Thilo gave an excellent overview of coded ( as opposed to Keep ) Domino APIs. The presentation was strong on the security aspects of APIs and there were some useful tips about securing credentials. The idea of using profile documents for speed was interesting but it was also pointed out that there could be some merit in using the new V12 key pair style documents ( Named Documents ? ) . DOTs was mentioned and now that it is back in the Domino stack I need to understand it a bit better.
The presentation was particularly useful given the announcements about Keep and me trying to get my head around how we will deliver APIs in the future. No obvious answers but lots to think about.
Slides : Engage 2022: The Superpower of Integrating External APIs for Notes and Domino Apps – Speaker Deck
Pro Code App Development for Domino – Volt MX Go – Jason Roy Gary, Michael Alexander – DE21
This was the most important session at the conference for me. The OGS announced Volt MX Go but this was the first detailed session and was led by Jason who is the architect of it. The crux of the session was that there would be a new VoltScript language which was inspired by both LotusScript and other more modern languages. VoltScript is in Volt but Jason gave the impression that it would appear across the HCL products. When asked if this language would be back ported to Domino the answer given was that this was up to the Domino team.
There were several demos where LotusScript or formula code was cut and pasted into Volt Foundry and run. Volt Foundry is the middleware layer within Volt MX. Another example was how a function @sendSMS could be created and then used across different apps. Everything was very alpha code’ish with no debuggers etc. Jason did suggest a 6 month timescale for Volt MX Go.
The “Pro Code App Development” title has caused some debate since. Andrew Manby on Twitter: “@Klehmann79 It’s a simple answer, we were in stealth the mode for this session. Volt MX is low code for professional developers.” / Twitter The idea of “Low Code for Professional Developers” has some appeal for me but we will obviously need full code too. I honestly cannot recall if Java was mentioned but I assumed that it must be. Having looked at the slide above I am not so sure now. Surely Java must be supported ?
The session was a lot to take in. Getting my head around “classic” Domino code running in Volt MX was challenging. It does look as though we will be able to run non XPages code that is currently in Domino from within Volt. There must be a great deal of cleverness involved as the Volt MX execution layer is only connected to the Domino databases via REST services. There also appeared to be a separate Volt MX search engine residing within the Volt MX stack.
How we will access our XPage bean based business objects within Volt MX remains to be seen. It may be that we access these business objects via the same custom XPage REST APIs that we are currently using to work with Angular but that does feel like a lot of moving parts.
It will be interesting to see how HCL takes the Domino developer community along with them as the product evolves.
Microsoft Power BI – Theo Heselmans – DE15
Theo gave a good session on interfacing Domino with MS Power BI. As usual Theo was great at giving real world pragmatic tips. Theo did mention free version but my understanding was that once you start needing to share / distribute reports starts at @$10 per user per month so be careful. Power BI Premium Per User Licensing Explained (compassred.com)
It is a topic that I need to look at more as one of our customers uses it very successfully with our Domino SaaS apps.
Domino App Dev Round Table – Tim Clark, Andrew Manby and Thomas Hampel – Ro04
I didn’t get to the Designer Jam so I am not sure how this differed. I guess that the Jam was more forward looking while the round table was more about current frustrations. The best way forward with these is apparently the Aha! portal . Product Ideas Portal (hcltechsw.com)
Domino Licensing for Solution Partners – Uffe Sorensen – Ro08
Uffe set out the new CCS licencing for partners. This licencing allows SaaS providers to provide Domino Applications with flexible OEM / SaaS licencing. We moved to this model earlier this year and would recommend it. Contact Uffe or Keith Brown at HCL for more information.
So What’s Next for FoCul ?
It was great to see the enthusiasm from HCL and the HCL community. The new functionality was all additive to the existing offerings and the vibe was very positive.
Even though the conference raised more questions than it answered it does still feel as though our current modernisation strategy is still good given the timescales. We will continue to add APIs to our applications and move to an Angular front end. The tools used to deliver some of the APIs will now include Keep ( and DQL, JNX ) but the use of XPage REST services will still be very important so that we can exploit the existing XPages business logic.
We are on Domino 11 but based on what we saw at the conference will be aiming for Domino 12.0.2 next. We have joined the beta program and are looking forward to kicking the tyres.
We are also interested in what Volt MX Go can offer, particularly around the mobile apps. A key enabler for this will be a better understanding of how Volt MX will be integrated with Domino, particularly around code execution and re-using existing business logic from XPages.
Other Reviews
Engage 2022 Recap – Ales Lichtenberg (alichtenberg.cz)
HCL Updates from Engage // Oliver Busse (notesx.net)
Restyling With the Young at Engage – The Domino Elf (elfworld.org)
The FoCul Team – Paul, Sean, David, Andrew and Martin