C3UG Webinar July 19

On Wednesday, July 19, the Cross Canada Collaboration User Group will be hosting a webinar starting at 12:00 PM Eastern time.  The webinar is scheduled for one hour.  We will have two speakers – abstracts below.

Registration is open, here.

Customer Case Study: CAP St-Barnabé – Alexandre Lanoue, SIA

The CAP St-Barnabé is a non-profit organization in Montreal offering an environment for people who have-not had luck in life to get back on their feet and find some assistance. It provides various services such as public housing, meals, refuge, social assistance and much more.

This presentations shows how IBM technology helped them to improve processes and offer better services using IBM Connections Cloud, IBM Verse and BOX.

Application Modernization with Darwino – Phil Riand, Trilog Group, IBM Champion

Darwino is a unique application platform endorsed by IBM to extend your Notes/Domino applications. It lets you incrementally enhance your existing applications while retaining your existing investment. It takes advantage of the latest technologies, from IBM and beyond. It delivers these capabilities to web browsers, mobile devices, report editors and desktop applications, including full offline access. Darwino rejuvenates your applications at your own pace, at the least cost. Come and see why it won the Hackathon at IBM Connect 2017!

Tagged with: , , , , , ,
Posted in c3ug

My Review of IBM Connect 2017

Some thoughts and observations on the recently completed IBM Connect 2017.  I think this is now 3 years in a row where I have left for home in a generally positive frame of mind, and in fact the last two have been quite positive.

Hackathon

To begin, I participated in the hackathon that took place on Monday, organized by Alan Hamilton and Christian Guedemann among others, and sponsored by OpenNTF.  I have to admit that I was both excited and scared going in.  I was excited because it was an opportunity to learn new things, and do it with a certain time restriction, as well as meet new people.  I was scared because I might show up and not be able to make a contribution.  Well, it turned out that I had nothing to be scared about.  There were 7 or 8 teams, including on comprised entirely of people from Japan (who took 2nd prize).

We worked from 9:00am to 4:00pm.  The event started with a short pump-up speech by Jason Roy Gary who is leading the Connections Pink team.  He put us in the right frame of mind for the day: Have Fun, and don’t be afraid to Learn something New.  Inhi Cho She dropped by during the day to talk to each of the teams and learn a bit about what they were working on.

While we didn’t complete our project, it was a great experience, and is one I plan to repeat next year.  I highly recommend everyone give it a try.  It was well organized and well supported.  The only suggestion I have is to do a better job of promoting it in advance, and let people know what the proposed project topics are to generate more interest.  I expect that our team will continue to work on the project to finish it.  All projects were contributed to OpenNTF at the end of the day so we can all share in the work and innovation produced during the day.

OGS Announcements

This year I am an IBM Champion for the first time.  Champions were featured on the big screen at the OGS before and after the presentations, and it was really exciting to see my face on the big screen.  The OGS was presented in 2 parts, and overall the flow worked well.  The 2nd part was more technical and demo-focused, and as a long-time Notes guy, I was very happy to hear the focus on Notes and what IBM plans for its future.  I can recall recent years where we didn’t hear any talk of Notes and Domino in the OGS, and I am happy that those days are in the past.  Having said that, the modernization strategy that was announced (to use partner tools to build modernized apps) didn’t hit the mark for me, but generally the news was good in terms of future support and enhancements in the product.

The cognitive capabilities of Watson were featured of course, and this is the future of the product line, make no mistake.  The key is how it integrates, and how we as technology people can make use of the features of Watson.  We actually did some work in this area in the hackathon, so I got to see it up close.  It will be an area of focus for me as I learn new things this year.

IBM Connections Pink

The other big news was around the future of Connections.  The details around Connections Pink were made public.  First of all, version 6.0 of Connections will be released by March 31 of this year.  Pink is the next version of Connections, which will be a complete rewrite of the product from the ground up, without WebSphere, Java or DB2!  Jason Roy Gary told us at the hackathon that he has to personally sign off on any of his engineers wanting to use Java, and he’s a long-time Java developer.  If anyone thought they might be able to continue their technology career without venturing into the world of Node.js I am here to tell you that will not be possible.  It is an exciting future, making the product much more open and extensible, and of course with a healthy dose of Watson.  I am very interested to see it when it is ready.  IBM expects to be able to share pieces of the product before the end of 2017.

Design Thinking

At last year’s conference I tried something new and sat in on a Design Thinking session.  I was very happy that I did.  It is a great addition to the conference for IBM to share the approaches that they use to design their products.  The concepts are very simple and it helps to have some coaching from people who have done it before to understand the approach.  I spent time in the design thinking lab again this year and came away equally satisfied.  I came back the next day to just say how I appreciated the time and happened to be there when another attendee was asking about best practices in design thinking and if there were any web resources.  Before any of the IBMers could answer I jumped in with my experience and suggested he take the time to go through one of the exercises as having the personal experience would be far better than reading about it and trying to put it into practice on his own.  While the concepts are simple, the subtleties in the approach come through when you go through the process for real.  I can’t suggest strongly enough that everyone who attends the conference take the time to visit the Design Thinking lab.

Other Observations

Tuesday ended with the Australia party hosted by Ephox.  The pictures are on social media.  It was the best of the few that I’ve been to by far.  Another one of those things to put on your list of things to do if you’ve never taken one in.  The Wednesday night event, formerly at one of the theme parks in Orlando, was at the Exploratorium in San Francisco.  While it didn’t have the roller coasters of years past, the venue was fun, actually much larger than I expected, and provided good food, live entertainment, an opportunity to geek out on some fun science experiments, and also offer some quiet space to catch up with friends.

The Moscone Centre as an event location served well, but it was clear to many Lotusphere veterans quite quickly that we lacked the Dolphin fountain and lobby bar as a common area to meet people.  There were tables on the second floor of the centre, where the sessions were presented, that people could meet at, but that didn’t provide the place to sit and unwind after the day.  Even the Hilton gave us that last year.  While we did our best to make our respective networks know where we were meeting up after the sessions of the day, after the day was done you had to go elsewhere.  Also, for me anyway, while SF is in my time zone, I am not sure it is the right city to hold the event.  There were too many people from Europe who would have normally attended the event who chose not to.  I applaud the reasoning behind trying a new location for the conference, but personally I don’t think holding it in the tech capital of the US added anything.  Also, I am not a fan of Las Vegas.  Just sayin’.

IBM is curious to know if the conference should go back to the 4-day format.  Without consideration of cost, I whole heartedly vote that it does.  Three days, with the loss of what we will call day 0 to the President’s Day holiday in the US on this particular weekend, just felt like there wasn’t any time to see and do the things I wanted to see and do.  It normally feels that way when it is 4 days, so removing a day the past couple of years has hurt in my opinion.  While there have always been conflicts, this time they were even greater than in years past and it really sucked to miss out on some important sessions.  Also, for the first time, Gurupalooza had hardly anyone in the audience.  Unfortunately it was up against the lunch hour.

Another good idea that was a frustration last year and continued to be a frustration this year was the Expo Engagement Theater, located in the Expo hall.  The idea of half hour presentations, with a casual atmosphere is a great idea, and I sat in on a few.  Unfortunately having the “theater” situated right next to the noisy Expo hall with mesh walls and big open doors let in too much crowd noise.  It’s a good idea that should continue; it just needs some improvement.

Many of the people I talked to didn’t like the food.  Personally I was fine with it.  While we ate with recyclable plates and utensils, and the lunches were more of the salad and sandwich/wrap variety, I liked how much fruit was available and was never hungry.  Admittedly, the food in the past few years has been excellent, and this was a step down from that.

Finally, IBM switched the mobile app for the event to an app called ‘IBM Events’.  I found that it worked well.  One of the fun features was a game where you could score points for building your network, using social media to share what sessions you were seeing, and providing feedback on the sessions you attended.  Anyone who accumulated more than 1000 points was entered into a draw for 3 Apple TVs.  I never heard who won, but it was fun to play.

There was no announcement about next year’s conference, but clearly based on the questions being asked at the end of the event IBM is considering what to do.  As many have guessed, it may turn out that we will be combined with other IBM conferences as we’ve seen in the past.  In fact that specific question was asked and the response was minimal.  As was the case after last year, we will likely find out the fate of the conference at Engage in Belgium in May.  Wherever it is, it’s now more about the people than the technology for me, although the technology is important, so I look forward to seeing everyone again in 2018.

Tagged with: , , , , , ,
Posted in Collaboration, Conferences

2016 Looking Back

Taking Russ’ lead, and following up on something I’ve wanted to do for several years now, here is a quick summary of 2016 for me, personally and professionally.

January 2016

  • launched the most comprehensive XPages project I’ve ever built, excellent learning, especially using the OpenNTF Domino API
  • started my 50th trip around the sun
  • awesome little riding vacation to Palm Springs with Sandi and friends
  • began a year of helping a less forunate member of my family as his mother (my cousin) passed

February 2016

  • daughter #1 turned 20
  • daughter #3 would have turned 14
  • said goodbye to a special little girl who only made one trip around the sun
  • met with friends and colleagues in Orlando for Connect 2016, spoke with my colleague Delores who was on stage for the first time after 20-something trips to Lotusphere herself

March 2016

  • completed my 25th year of coaching hockey, my last for a while
  • 1 year since my Mom passed

April 2016

  • celebrated my wife’s birthday
  • attended a memorial for my cousin – cancer strikes again

May 2016

  • daughter #2 turned 18
  • Dad turned 77
  • attended a memorial for a very special uncle – yes, cancer

June 2016

  • attended Social Connections in Toronto and reprised our presentation from Connect
  • daughter #2 graduated high school with several scholarships in tow – very proud Dad
  • saw the completion of a renovation to our basement with a beautiful live edge mantle on a newly rebuilt fireplace
  • the hockey world lost Gordie Howe

July 2016

  • annual vacation to Christina Lake with the family, some beautiful bike rides

August 2016

  • harvested about 180 heads of garlic from my garden – sadly I didn’t dry them properly so the crop isn’t as nice as years past
  • completed my 7th Ride to Conquer Cancer in honour of my cousin and my uncle

September 2016

  • sadly watched as our yellow sphere ate itself up over the future of Notes and the lack of direction from IBM, and in spite of that continued to build meaningful applications using Notes and Domino for my customers
  • both daughters began post-secondary education
  • marked the 8th year since Brynne passed
  • initiated efforts to restart the Canadian Notes user group

October 2016

  • poured a small foundation in the back yard that will become my smoke house
  • bucket list vacation to French Polynesia, madly worked out to shed some weight before the trip and got down to my lowest weight in 27 years
  • Brytek wrapped it’s 7th year in business with our busiest of the last 5 years, with a significant sale of ProjExec and growth in the IBM Collaboration space with our customers

November 2016

December 2016

  • hosted the Cross Canada Collaboration User Group with the help of a lot of people
  • attended a memorial for a family friend, another young man gone too soon
  • named an IBM Champion for the first time
  • celebrated our 23rd wedding anniversary
  • snow for Christmas! lots of snow – our first white Christmas in 6 years
  • received a very thoughful gift from my daughters for Christmas – my kids get me
Posted in Uncategorized

C3UG Agenda for Nov. 17 Meeting

c3ug_icon

Our meeting scheduled for Thursday November 17 is finalized. The agenda is here. Please register for the event, indicating if you will attend in person or online. This event is available to everyone in the collaboration community regardless of if you are in Canada or not.

We will be live in four cities: Montreal, Toronto, Calgary, and Vancouver. The meeting starts at 1:00 pm Atlantic / 12:00 pm Eastern / 11:00 am Central / 10:00 am Mountain / 9:00 am Pacific.

We will have 6 presentations, on topics including IBM Notes and Domino XPages, IBM Connections and IBM Watson. Please join us.

Posted in Uncategorized

Accepting Abstracts to Present at C3UG

Abstract submission is open for the next Cross Canada Collaboration User Group. The deadline is Friday, October 21. The event is on Thursday, November 17.

We have presentation time slots of 45, 30, and 15 minutes, and are inviting 5 minute lightning talks too. We are looking to cram as much good content into 4 hours as we can. Our preference is to have each speaker be at one of our live locations but we will also consider online presentations too.

We have tracks for Development and Infrastructure, Administration, Customer Case Studies and solutions, and IBM Technology. We expect to have a session that highlights announcements from World of Watson.

You can find more information and the abstract submission form at our web site, powered by Domino and OpenNTF.

Posted in Collaboration

Cross Canada Collaboration User Group

Announcing the revival of what was previously known as the Cross-Country Lotus User Group (CCLUG) with a new name: Cross Canada Collaboration User Group (C3UG).

Work is well underway to plan this event, with more information and announcements to come shortly.  We will be accepting abstracts to present in the coming days.

This event will happen in person and online, so people in remote locations as well as locations around the world will all be welcome to participate.

Save the date: Thursday, November 17, 2016.  We are currently planning for a four hour event, although that may change.  Tentative times are 1:00pm – 4:00pm Eastern, 10:00am – 2:00pm Pacific.

Posted in Uncategorized

Working with Multi-Value Date Fields Using the OpenNTF Domino API

I completed a task yesterday that caused me no small amount of grief and wanted to write down what I learned, primarily for myself so I don’t forget, but also to share with others who may be struggling with the transition to using Java in your XPages applications.  I also want to say thank you to the people who offered support, and probably have them and more correct my mistakes. 🙂

Let me set up the scenario.  This task was an enhancement to an existing application I had built at the end of last year.  It was my first successful foray into using Java for all business logic in an XPages application.  Of note, I used the OpenNTF Domino API.  I built it with Bootstrap too, to support both desktop and iPad users.

The application is a task management system.  A task is assigned.  It is followed up on by an individual, and in it they provide proof that they have completed the task.  The task is then assigned back to a supervisor for review.  The supervisor may verify that the task is complete, may indicate that it is tentatively approved for cases where an on-site inspection is required, or may indicate that the proof is insufficient, and assign the task back to the individual.  For cases where the proof is tentatively accepted, it may then either be verified or the task returned.

The enhancement was to track how long it takes for the supervisor to review the proof.  If it is longer than 2 business days the system will note that the supervisor action was within the target period.  It will also track if the action took longer than 2 business days.

I added a date field to track the date that the proof was supplied and another to track when the action was taken, and a third field to track if the action was taken within the target period.  Given that the supervisor could send the task back the requirement was to track each time there was an exchange.  So that meant two multi-value date fields and a multi-value text field.

Anyone who has worked with multi-value Notes date fields and java before will be likely be smiling by now.  Little old me was walking into a blizzard without adequate supplies.  For those of you who can make LotusScript do magical things you can already craft a solution in your head, as did I.  When proof is supplied, grab the first date field, append a value to the field, and save.  When an action is taken, grab the second date field, append a value, grab the text field, calculate and append a value, and save.  We will ignore the fact that in the case of a tentatively accepted proof we don’t have to take the second step when the proof is ultimately verified.

Rather than talk about my struggles I will talk about the solution, other than to say that a Date object in Java is not the same as a DateTime object in Notes, and a Date object in Java is deprecated meaning you should really use a Calendar object, except that it’s okay to use a Date in Java when working in Notes.

The call to use is document.getItemValueDateTimeArray.  Unfortunately, this call returns a Vector<Base<?>> object.  People who have been using Java for a while will be able to explain what this is and why it makes sense.  To a newbie it caused no shortage of pain.  In very simple terms, what is returned is a list of values, as objects.  Those object values happen to be Notes DateTime objects.  The trick is that the compiler doesn’t know that they are DateTime objects.  Naturally the next step is to turn them into DateTime objects, but as I said above we then need to turn them into Java Date objects.

There is some code missing before this step, but this explains what I’ve just said above (it’s the step that reads the values from the field when we first open the document):

    Vector<Base<?>> tempProofSupplied = new Vector<Base<?>>();
    Vector<Date> tempPs = new Vector<Date>();
    tempProofSupplied = docAction.getItemValueDateTimeArray("ProofSupplied");
    if (tempProofSupplied != null) {
        for (Object obj : tempProofSupplied) {
            if (obj != null) {
                DateTime dtPs = (DateTime) obj;
                tempPs.add(dtPs.toJavaDate());
            }
        }
        this.setProofSupplied(tempPs);
    }

After I figured out the part above, the rest of the code pretty much fell into place.  For example, to add a new date to the list:

    public void trackProofSupplied(Date dateProofSupplied) {
        try {
            if (null == this.proofSupplied) {
                this.proofSupplied = new Vector<Date>();
            }
            this.proofSupplied.add(dateProofSupplied);
        } catch (Exception e) {
            System.out.println(" ERROR ! action.trackProofSupplied: " + e.toString());
        }
    }

I also want to say a big Thank You to Frank Van Der Linden who posted a snippet of Java Date utilities to OpenNTF, including one very useful function: calculateBusinessDays.  Saved me having to figure that one out myself.  Fair warning: it includes Calendar objects that I hadn’t used in the code above.  Calendars are really useful by the way, and worth investing the time to understand if you haven’t yet.

Posted in Uncategorized