Sean Cull

Encrypting documents in XPiNC

Sean Cull  15 May 2012 17:23:39

Image:Encrypting documents in XPiNC

One of the nice things that sets XPiNC ( XPages in the Notes Client ) apart from XPages in the browser is the ability to encrypt documents using the native Notes encryption mechanisms.

I've just been working on a Proof of Concept for a proposal and had a few issues getting it to work so here are some notes :

> The encryption settings on the underlying form for the data source seem to have no impact at any time.

> You need to uses SSJS to programmatically set the encryption key for the document, the isEncrypted() property on the document and the isEncrypted() property on the field ( NotesItem ).

> When accessed via the browser the download control appears as empty

> When you access it via XPiNC without the certificate the download control appears empty

> There is some guidance from IBM at the links below but it is not great. Note that the method of setting the NotesItem.IsEncrypted property is setEncrypted(true) and not .IsEncrypted = true

NotesItem.IsEncrypted
NotesDocument.EncryptionKeys
NotesDocument.IsEncrypted
NotesDocument.encrypt

> You need to keep resetting the properties when you save the document otherwise it becomes un-encrypted.

> I added this code to my save button where the field test is used for attachments and the encryption certificate is called "commercial info"

<xp:button value="this works" id="button6"><xp:eventHandler event="onclick" submit="true" refreshMode="complete">
   <xp:this.action>

           <xp:actionGroup>
                   <xp:saveDocument var="document1"></xp:saveDocument>

                   <xp:executeScript>
                           <xp:this.script><![CDATA[#{javascript:var doc:NotesDocument = currentDocument.getDocument();
var keys:java.util.Vector = doc.getEncryptionKeys();
keys.addElement("commercial info");
doc.setEncryptionKeys(keys);
doc.isEncrypted = true
var attachfield:NotesItem = doc.getFirstItem("test");
if (attachfield == null) {
print ("no item")
} else {
attachfield.setEncrypted(true);
}

doc.encrypt();
doc.save()}]]></xp:this.script>
                   </xp:executeScript>
           </xp:actionGroup>
   </xp:this.action></xp:eventHandler></xp:button>

 Lotus  XPiNC  XPages 


In Defence of XPiNC

Sean Cull  29 April 2012 23:00:24

This week someone expressed their admiration at how I have persevered with XPiNC - it actually made me wonder about the messages I have been sending out.

Anyone who follows my Blog knows that I am passionate about XPages and XPiNC ( XPages in the Notes Client ).
My enthusiasm and my wish to see other developers avoid the pitfalls that I have encountered probably could give the impression that I am not happy with XPiNC.

The reality could not be further from the truth**. I am still blown away by XPiNC - the ability to have modern looking applications as disconnected replicas within Lotus Notes still astounds me. There have been issues and quirks but in our recent dual web / XPiNC project ( > 1,000 hours ) only  2 -3 % of those hours have been related to making the application truly web and Notes capable.

I find that figure amazing - yes the project took much longer than a traditional Notes App would have done but it is a much more capable App than we were able to do in classic Notes. The extra work to allow people to use it disconnected ( the main use case ) was tiny.

I know tablet apps are all the rage but it would be interesting to get the road warriors to spend a week with an iPAD typing up visit reports V's a week with a nice MacBook Air using XPiNC. The development costs for XPiNC would also be less than for a truly disconnected tablet app.


**well almost, I would still like a spell checker and some other stuff please :-)


 Lotus  XPiNC  XPages 


Quick Reminder - IBM Collaboration Solutions Community Meeting - Take Your Social Business to the Cloud with IBM Sametime and IBM Connections

Sean Cull  27 March 2012 06:32:34

Register Here

IBM Collaboration Solutions Community Meeting - Take Your Social Business to the Cloud with IBM Sametime and IBM Connections
Date: Mar 27, 2012
Time: 10:00 AM - 11:00 AM (Eastern Time)
Hosted by: Joyce Davis (IBM)
Presented by: Joyce Davis (IBM), Marc Pagnier (IBM), Fernando Salazar (IBM)


Our March community webcast will be focused on taking social business to the cloud! Join us for a semi-technical encore presentation by IBMers Marc Pagnier and Fernando Salazar who will discuss the convergence of Social Business, Unified Communications and IBM Connections. In addition, our community member spotlight section is changing a bit -- be prepared to be inspired by fellow community members as they introduce themselves and share a brief topic of interest.

Web conference details will be sent upon registration. For those who wish to dial in over the phone, global access numbers will be sent in a separate email just prior to the meeting.

Meeting Agenda:
- Community news
- Community member spotlights
------- Mitch Cohen, Colgate-Palmolive
------- Matt Collins, VP Marketing, IBM Collaboration Solutions
- Special Topic: Private or Public? Take Your Social Business to the Cloud with IBM Sametime and IBM Connections
- Technical rating: ** (out of 3)
- Abstract: This presentation will help you better understand the impact of two market trends that are increasingly shaping the collaboration landscape: the convergence of Social Business with Unified Communications, and the rise of the cloud. The convergence of UC and Social Business, as illustrated by the growth of IBM Sametime and IBM Connections, is driven by a need for enhanced productivity and more efficient communications. A growing number of companies have also decided to complement their current infrastructure with cloud services. Join us to find out how recent announcements related to the IBM SmartCloud Enterprise platform can help combine the flexibility of on-premises deployments and the value of the cloud. However, with new options come new decisions. As capabilities and benefits will vary between the different environments, we will provide comparison points and guidance to select the optimum platform, be it IBM SmartCloud for Social Business, on-premises, a shared private cloud, or a hybrid combination thereof.
- Speaker: Marc Pagnier (IBM), Fernando Salazar (IBM)
- About the speakers:
------- Marc Pagnier is a senior product manager in the Social Communications team of IBM Collaboration Solutions. Marc is responsible for gathering market requirements, monitoring business trends, assessing technology related to collaboration, and currently defining the strategy for IBM Sametime in the private and public cloud (SmartCloud).
------- Fernando Salazar is an IBM Distinguished Engineer with over 20 years experience in developing productivity and collaboration software. Fernando also represents Lotus Unified Communications & Collaboration (UCC) in engagements across the whole IBM portfolio, including cloud-based and hosted offerings.

 lotus  Community Meetings 


Andrews Presentation at BLUG

Sean Cull  21 March 2012 10:31:06

My colleague Andrew Champion is doing a presentation at BLUG on Friday about his journey from being a Notes Developer to being and XPage developer.

I am helping out but it is very much about Andrews personal journey and his advice to other Notes developers who are about to start the journey or who have already started and would like to share experiences.

I would highly recommend the recommend the presentation to aspiring XPage developers. It will demonstrate the challenges that Andrew faced, how he worked around the issues and will show you the results of his efforts.

We will be using examples from a number of XPage projects that we have delivered. As you can see from the diagram below it was been a long journey but one which has been very successful and enjoyable despite the challenges.

It is not a deep dive into any one topic but rather the "lonely planet" guide to your journey that we would have loved before we started.

If you are a developer new to XPages I would also highly recommend Howard Greenberg's XPages Jump Start on Monday. If you are a customer, consultant or  manager  I would also recommend my talk on the Business Value of XPages on the Monday too.



Image:Andrews Presentation at BLUG

Image:Andrews Presentation at BLUG

 Lotus  XPages 


My BLUG presentation in advance and a request for your help

Sean Cull  20 March 2012 06:57:20

I am presenting about "The Benefits of XPages" at BLUG on Thursday.

I am just coming to the end of a big XPages project ( > 1,000 man hours ) with ABB Global Consulting and they have been good enough to demonstrate the advantages of XPages using their solution ( a Notes database that has saved them > $4M since 2002 ).

The presentation will be a "warts and all" account of my experiences with XPages as a business owner and consultant. It will also be very high speed given that I only have 45 minutes.

I thought it would be good to try 2 things :

1) let you see the DRAFT presentation in advance so that you can decide if you want to come ( there will obviously many more words than on the slides ). Time at LUGs is precious and I would find this useful as an attendee so see attached.

Note that there is also a complimentary BLUG presentation by my colleague Andrew Champion talking about his experiences as an XPages developer using this and other applications as examples of his journey from Notes Developer to XPages Developer.

2) Ask for your help... I am passionate about Notes and XPages as something that can add Real Business Value. We have been lucky enough to have a customers that are willing to share those success stories ( with some sensible restrictions ). I need more examples for Slide 26.

To me this is a classic "Chicken and Egg" problem with Notes - there are load of "Geeks" ( me included ) showing other Geeks cool snippets of code but very few people are showing the "Managers" the business value that comes from Notes.

Often the Managers don't realise the value until they try to replace it  with something else.

We NEED to be telling the success stories about Notes and XPages - IBM is not good at doing this so we need to do it ourselves - they even throw a mysterious cloak of impenetrability around their own XPage CIO projects when they speak about them -  to be fair Ed Brill did do a good job at INV101  LS12.

So ... do you have any examples that I can add to slide 26 ?

Ideally they would be examples form end users but XPage ISV solutions would be OK too.

Thanks, Sean
Image:My BLUG presentation in advance and a request for your help


Image:My BLUG presentation in advance and a request for your help

 Lotus  XPages 


Making contacts in your Notes CRM database available as a directory

Sean Cull  1 March 2012 20:56:24

Just a very quick post to show how you can take contact records in any Notes database and make them available to users in the "To" mail dialogue.

Integrating custom applications in this way is not very well documented and I would imagine not officially supported. If you run a very large directory I would investigate the caching that goes on in more detail.

This post gives some clues and I don't pretend to understand it fully.


Image:Making contacts in your Notes CRM database available as a directory

You seem to need just one view in your application - ($PeopleGroupsFlat)

Column 2 of   ($PeopleGroupsFlat) of this view corresponds to the column 2 in the dialogue.
Column 3 of ($PeopleGroupsFlat) contains the values that are pushed into the address bar when the wizard closes.

Now, because column 3 is a valid email address in my case everything will be fine when it comes to send - there is no further name resolution to be done.
However, if your column 3 was a name then I suspect you also need the $users view and the name pushed into the address field ( i.e. column 3 of ($PeopleGroupsFlat) must match with a value in column 1 of $users so that the address can be resolved at send time.

You also need to add your database to the Directory Assistance database. The directory name displayed in the dialogue above is the database title.

Image:Making contacts in your Notes CRM database available as a directory


Thanks to Jake for the demo address book





 Admin Tips  Dev Tips  lotus 


Heads up : Cannot Use XPINC with Enforce Consistent ACL in 852

Sean Cull  28 February 2012 16:04:49

Just a quick heads up over something that has wasted the best part of a day between us and our customer - oh and IBM who do their IT.

You cannot use XPINC in 852 ( it is fixed in 853 ) if the ACL has Enforce Consistent ACL.

The technote is below - why developers have to log in to see these things is beyond me - who in your organisation has authority to see this ? ( that is a rhetorical question )

Image:Heads up : Cannot Use XPINC with Enforce Consistent ACL in 852


Error description

XPages viewed in the Notes client from a local replica gives an
error 500 you are not authorized for users that are not listed
explicitly in the ACL.  If they are a member of a group on the
server and pull the local replica with enforce consistent ACL
is when we see this issue

Local fix

- Add the user explicitly to the ACL on the server
- add a group to the local address book with this group in it
- upgrade to 8.5.3 client,  this issue does not occur in 8.5.3


 Lotus  XPages 


Heads up for upgraders : 8.5.3 cannot support > 1 rich text editor per xpage if the image upload feature is used.

Sean Cull  20 February 2012 19:52:18

Just a quick heads up.

8.5.3 ( XPINC and Domino ) cannot support more than 1 rich text editor per Xpage if the image upload feature is used.

This will break apps that work in 8.5.2 including the Team Room status reports page ( as reported by Dan Herman ).

You can see the behaviour here :

http://seancull.co.uk/public/examples/twotrxbroken.nsf

IBM have been pro-active in looking at the issue but the current response is :

Thank you for providing us the twotrxbroken.nsf database. After looking into the application you have shared to us together with our IBM lotus developer team, based on their feedback, this issue is a known issue and it is only happening for Lotus 8.5.3 and currently there is no fix for this issue yet. However, this issue has already been reported to L3 via SPR SODY8RBKY6 / APAR LO67196 for future enhancement.

As there is nothing much I can do at this moment. Please let me know if you have further question or we may proceed to close this ticket.

Looking forward to hear from you again.

 8.5.3  Dev Tips  Lotus 


Creating a Clone in Domino Designer from GIT

Sean Cull  17 February 2012 23:05:26

Here is a very quick and rough screencast of creating a clone in GIT.

The screencast has audio. Apologies for the size, I was trying to get the drop down menus in. Click on the attachment at the end to see a larger view

If you have some knowledge of source control please have a look at this XPages Forum post







Comments disabled - post on the forum thread


 Dev Tips  GIT  Lotus  Source Control 
Comments Disabled


Beware of Moshi Monsters - a serious warning to other parents

Sean Cull  12 February 2012 21:08:00

Beware of Moshi Monsters.



I posted this for all my friends on Facebook but others have asked too so here it is.

I have just been checking out Moshi Monsters for my son (7) who wanted to become a full member (£5 per month )
I am very PRO IT but I was very disappointed with what I saw. It is clearly not a safe place for young children.

>You can see every childs wall - yes all 50M of them - and you are encouraged to surf strangers walls.

Of the 6 random walls I visited I saw

> Messages asking for passwords
> Offensive comments and language ( gay bashing, dic head , ass hole etc )
> Children leaving details of school addresses
> Most children accepting many friends who they could not possible know
>The forum area is not great and includes people asking for valentine cards and asking are they sexy.

> The site pushes membership on you at every opportunity

> There is a very "gift based" theme to the site. I'm not comfortable with gifts and strangers in one place.

I now have an inconsolable little boy who can't understand why he cannot continue to use this site again.  

People describe it as "facebook for kids" - its nowhere near as controlled as facebook.

My advice would be just don't let your kids even start.
If they have already started and it is too much to take them off then you need to be reading their walls and the walls of their "friends".




Setting up GIT ( or Hg ? ) for Domino Designer - a collaborative project

Sean Cull  12 February 2012 14:41:48

I have been working through some community materials trying to set up GIT and although the basics are working there is a lot of detail that I am struggling with before GIT  is actually a value adding tool.

I am asking for volunteers to help with a collaborative effort to determine what is the best practice in this area. I am happy to take on the task of writing up the outcome of collaborative effort and adding it to the Developers Wiki.

You can see the XPages forum post here => http://www-10.lotus.com/ldd/xpagesforum.nsf/topicThread.xsp?action=openDocument&documentId=66F8EEEE446D0EFC852579A20052C489

All you need to do is chip in with your experiences.

Thanks, Sean

 Lotus  8.5.3  GIT  Source Control  XPages Forum 


Please don’t be shy at Lotusphere

Sean Cull  14 January 2012 15:21:20


Can I ask all  of you who are lucky enough to be at Lotusphere one favour ?


Please don't be shy.


We are all customers of IBM, we pay them hard earned money so that we can use their products and services.

They are also genuinely interested in our views about how to make their products and their approach to selling their products better - so tell them what you think would work better.

At UKLUG this year a group of about ten of us were standing talking about the future of XPages and our frustrations with the licensing schemes that were available.

Ted Stanton from IBM had given the Key Note at the event and happened to be walking by.

We sort of "door stopped" him and asked if he would listed to our views. He very graciously did and later took the time to write those up and pass them on to others such as Ed Brill and Pete Jenzen.

I did initially feel a bit bad about pouncing on him but he recognised our enthusiasm for his products and we had a really good ad-hoc session. Pete Jenzen then followed up with various members of the group over the next few weeks and some of what was discussed probably helped influenced the shape of  the XWork server.

I have also found that the developers and support guys to be fantastically helpful. Martin Donnelly, Tony McGuckin, Susan Bullock, Mary Beth Raven ( now ex IBM ), Maureen Leyland,  and various others have all taken the time to understand my ideas and make helpful suggestions on previous occasions.

And there's also the irrepressible Joyce Davis who is the linchpin of IBMs community outreach work,

The Lotusphere Labs are a great way to meet the people who actually code the stuff we love. Go play with their new stuff and tell them what you think.

Have a think about what the top 5 things you would ask for would be AND why.


For me as a developer it would be :

1) SSJS debugger because it would cut our costs by 20% +

2) Automatic SSJS syntax checking because it would really reduce the risk of breaking apps in production.

3) Full feature parity in XPINC generally but specifically for opening documents using parameters so that we can have full fidelity XPinC apps.

4) Removal of the 64K limit in SSJS @dbcolumn lookups so I can have filters on XPage views where I won't get empty results.

5) Better ( some even ) control over which replica a link will open because too many customers seem to end up inadvertently using servers in Aberdeen, Brazil, China.etc..


Oh, and one last thing, make sure you tell them the 5 best things that they have already given you !


For me it would be

1) XPages

2) Support of OpenNTF

3) A rich Application Server that I can deploy very easily on a range of Operating Systems

4) The XWork server and the opportunity to loose the negative conjurations associated with Lotus ( which annoy me but we need to move on )

5) The mobile, REST and RDBMS functionality appearing in XPages.

5.1) XPINC - It really serves our customers well - the always connected world isn't here yet.

5.2) OneUI - seriously, it makes my life as a developer much easier.

Thanks and have a great time. I'm not jealous at all ;-)

Sean

 Lotus  LS12 


Configurable low overhead scheme for date dependent colour coding in views

Sean Cull  23 December 2011 21:06:10

It is useful to have colour coding of target dates in views but in traditional Notes applications ( as opposed to XPages ) this carries a big overhead if you do the date calculation in the actual column using @today etc.

Also see Steve McDonagh's post on colour blindness. You could also use this approach for icons.

Image:Configurable low overhead scheme for date dependent colour coding in views

This scheme uses a scheduled agent to replace the column formula each night with a hard coded date. It runs on 120 views in less than 1 second.

The scheme also uses a configuration document for the formula so that super users can update the threshold values.

There are 3 parts to consider :

1) the column formula. The image below shows it in the configuration document.


The bits in yellow are the constructors that are used to insert the relevant dates for the banding.
In this case
> 5 days away is neutral
0 - 5 days is yellow
overdue = red

Image:Configurable low overhead scheme for date dependent colour coding in views


2) The column in the view.


This column is hidden and has the property "Use value as colour".  This title of this column must start AGENTLINKED so that the scheduled agent can pick it up and modify it ( see below )
There must also be another column to turn the colour off again. The value of the formula after the agent has run is shown below - you can leave it blank and then run the agent to populate it.

Image:Configurable low overhead scheme for date dependent colour coding in views

Image:Configurable low overhead scheme for date dependent colour coding in views


3) The Scheduled Agent


The scheduled agent loops through every view and every column within each of those views.
Where it finds a column with he AGENTLINKED string in the title it tries to update this.

When updating it :

1) extracts the relevant configurable formula string from the configuration document shown above. You can have multiple configuration documents  in case you need different target thresholds for different views etc..

2) it replaces the [#n#] with a date which is n days from now

3) it inserts the modified formula into the column as shown above.

Sub
Initialize
     
     ' Sean Cull, FoCul Ltd.
     ' Released under Apache 2.0
     ' The purpose of this agent is to modify the column formula
     ' for columns so that dates can be highlighted as they become overdue.
     ' the column title will need to start with the phrase ".AGENTLINKED"
     ' e.g .AGENTLINKED : Colour_on_001
     ' this is then used for the keyword document that contains the formula.
     ' in the keyword document date increments are notated byu [#x#] where x
     ' is the number of days from today.
     ' e.g  @If ( target_date_dt > [#3#]; bgd:Dark_Blue ; ........
     ' full example : red := 255:0:0; blue := 0:0:255; green := 0:255:0; gold := 255:128:0; black :=0:0:0; white := 255:255:255 ; yellow:= 255:255:0; bgd := 224:241:255 ; Dark_Blue := 0:0:128; @If ( target_date_dt > [#3#]; bgd:Dark_Blue ; target_date_dt >= [#0#];yellow:black; target_date_dt < [#0#];red:white; -1:-1:-1)
     
     Dim session As New NotesSession
     Dim rightNow As New NotesDateTime(Now)
     Dim db As NotesDatabase
     Dim configview As NotesView
     
     Set db = session.CurrentDatabase
     Set configview = db.GetView("vlukeywords")
     ForAll v In db.Views
             ForAll vc In v.columns
                     If InStr(vc.Title,"AGENTLINKED")>0 Then
                             Call process_column(vc,configview)
                     End If
             End ForAll
     End ForAll
     
End
Sub
Sub
process_column(vc As NotesViewColumn, configview As NotesView)
     
     Dim configdoc As NotesDocument
     Dim strvar As String
     Dim strvar2 As String
     Dim pos As Integer
     Dim pos2 As Integer
     Dim incrementstr As String
     Dim datestr As String
     Dim dt As New NotesDateTime("Today")
     Dim z As Integer
     
     Set configdoc = configview.GetDocumentByKey("." + vc.Title )
     
     If configdoc Is Nothing Then
             MsgBox " could not find configuration key ." + vc.Title
             Exit Sub
     End If
     
     strvar = configdoc.KeywordList_tx(0)
     
     pos = InStr(strvar,"[#")
     Do While pos > 0
             Call dt.SetNow
             strvar2 = Right(strvar,Len(strvar)-(pos+1))                
             pos2 = InStr(strvar2,"#]")
             If pos2 = 0 Then
                     MsgBox "Error, did not find closing #] in column formula"
                     Exit Sub
             End If
             incrementstr = Left(strvar2,pos2-1)
             Call  dt.AdjustDay( CInt(incrementstr))
             datestr = "[" +  CStr(dt.DateOnly) + "]"
             strvar = Replace(strvar,"[#" + incrementstr + "#]", datestr)
             pos = InStr(strvar,"[#")
             
     Loop
     
     vc.Formula = strvar                        
     
End
Sub

 Dev Tips  Lotus 


So how do you open an xpage in a different database in XPINC ?

Sean Cull  20 December 2011 00:27:03

Image:So how do you open an xpage in a different database in XPINC ? I have spent a large chunk of the weekend and tonight trying to make a suite of XPages applications work in both XPINC and the browser.

I'm still confused





How it works when everything is in the same database


If you want to open a document from a repeat when it is from the same database the recommended method is to use Open Page simple action using parameters and it works really well for both browser and XPiNC and is also helpful in that it is a put request rather than a GET request ( Mastering XPages page 658 ) - apologies to Tony McGuckin who I promised I would blog this 9 months ago.

Image:So how do you open an xpage in a different database in XPINC ?

Image:So how do you open an xpage in a different database in XPINC ?


The problem with data sources from other Notes databases


OK, so XPages is all about consolidating the presentation of multiple data sources in one place.

How then do you open a document from another database via a repeat ?

The crux here is that the dialogue above only presents "XPage" choices for the current database and there is no way of computing the other database - so you cannot use the simple action method.

Well for the browser you construct a URL, that is pretty straight forward. But what do you do for XPiNC ?

There are 3 methods which I believe should work although I have found that 2 are very flaky for me.

1) You can modify the underlying form associated with the XPage so that if the document is called then it will automatically be presented as the relevant XPage


To do this you would use a URL like this :

notes://server as common name/0/universalid

The downside to this is that where I work our "Best Practice"  is to be able to open the back end forms as native Notes forms for administration and troubleshooting - it is a very powerful tool.

I also have some suspicions as to whether the specified server is honored in this scenario.

So all in all not a good option.

2) You could call the XPage using the following construct


notes://server as common name/dp replica id/xp_f_document.xsp?openXPage&action=readDocument&documentId=8E800DB89E9E144A80257968004CDEE4

This should work although case sensitivity may be at play on our linux server - its hard to tell sometimes as daft as that sounds.

This method only works on 2/3 of my documents. I have eliminated issues with the logic on the XPage being the cause by using a very simple XPage with no improvement

So all in all not a viable option.

3) You could use a non rendering XPage with a "before render" script to redirect to the correct document.


This would be in the target database but might be more than 2/3 reliable. This would be a pure frig but I am tempted.

Again, not a great choice.


Some Observations


I have been on a real high with XPages of late and we have been doing some great stuff which I hope to share soon. But this project is dual XPINC and Browser.

Just at the moment I am beat - this feels like the dark days of XPages 8.5.0 and 8.5.1 - spending hours and days getting nowhere and feeling like you are the first to try something and find it lacking.

If XPINC is to be a first class client and if IBM is to deliver the vision of code once deliver on many platforms ( which is so so close based on my recent experience )  then XPINC needs to get more exposure inside IBM.

It simply wasn't usable in 8.5.2 but is much better in 8.5.3. Darren Duke once said that he would know XPages was here to stay when the mail client was in XPages - in my opinion that would make a big difference in flushing out the issues.

Come on IBM, drink your own XPages champagne.

 Lotus  XPages  XPINC 


I am very honoured to be an IBM Champion

Sean Cull  14 December 2011 21:39:36

Warning, long and rambling post ahead.

Its been almost a week now since IBM made me an IBM Champion for IBM Collaborative Solutions and it is just beginning to sink in. It is a fantastic honour and I am very humbled by it. I am a huge fan of Notes and XPages and am very impressed with what IBM has given us in terms of both the platform and their very significant contributions to OpenNTF.

I started with Notes in 1995 and have been blogging since 2008. I find blogging and commenting on Notes a difficult balance. When you are so passionate about something it can be very frustrating when you feel that it could be even better. It is my nature, and my professional background, that I always push for things to be better than they are, sometimes that is seen as a negative but at other times people appreciate the feedback. Sometimes I still get it wrong and am too flippant with my comments.

To be honest receiving the award did make me stop and think if I should be more "positive". It coincided with a great experience of Notes with a customer which reminded me how powerful Notes is and also the experience of installing and using Notes on a brand new MAC.  The Notes on MAC experience was not so good.

Having thought about it a bit more I have decided that I should just be "me" but I should make more of an effort to take the time to tell my story about how I see Notes ( and IBMs wider collaboration solutions ) helping businesses manage costs, processes and knowledge but at the same time not to shirk away from saying what needs to be better too.

It has been a frustration of mine for some time that not enough is said about the huge value that the IBM collaboration solutions add to businesses around the world every day. Most of us who work with Notes are proud to be Geeks and we want to see the demos at the OGS ( remotely in my case unfortunately ) but the reality is that if Business Leaders do not understand what the IBM platform ( that they often already have ) can deliver then there will be no install base for us to deliver to. I guess it is for that reason that LotuSphere has become LotuSphere + Connect.

It will also be interesting to see how IBM positions XPages. I am an applications person at the end of the day. I can see that Connections and other Social collaborations tools will become increasingly important but a lot of business is about structured collaborative processes. Many of these processes are "sub enterprise" and at the departmental or site level - this is where, in my view, Notes and XPages are at their strongest. There is still no other application platform that can plug these sub enterprise collaborative requirements as well as Notes. I think that IBM lost sight of this and Microsoft won the email battle even though the war was about much more than email.

Which brings us to XPages. XPages has been revolutionary in terms of improving the solutions that we have been able to deliver. At work we are flat out building our XPage skills and delivering some fantastic applications. We only have a relatively small set of loyal customers and as a business owner I feared that we had reached saturation by having done all of the obvious things with Notes. XPages has totally changed that with customers who are on 853 and those who see value in bringing their own customers into their collaborative processes via the browser. About 30% of our work over the last year has also been with net new customers who don't have "Notes".

Being totally honest I have never quite understood why IBM gave us XPages. Don't get me wrong I will be eternally grateful that they did but it did seem to come out of the blue. I'm guessing here but I suspect that its success took some at IBM by surprise. Long before XPages an IBMer said to me - "Nothing in IBM is allowed to be a failure - it gets recycled into a success" - XPages is certainly a success. The next question is how does IBM position it ?

I understand that "Social" is important and that it is a wave worth riding but I can't be the only one who is uncomfortable with the "Social" label - actually I know that I am not because my mainly industrial customers are uncomfortable with that label too. They are all for collaboration but their main need is for structured workflow and knowledge management processes  that deliver and demonstrate control of processes and knowledge. Having said that Activity Streams have huge potential and IBM is delivering tools to integrate XPages with Connections for just that reason.

How would I like to see IBM position XPages ?

I have heard IBM describe XPages as the "framework for building collaborative social business applications" - that is much to narrow.

XPages will certainly be a great platform to build the structured business process that will follow and compliment the more free form Social processes but it is not just about social.

I have no idea if it is technically feasible but I hope to see XPages in WebSphere and on every other IBM platform. I would love to see IBM throw their weight behind it as "the" IBM collaborative development platform. By all means leverage the "Social" buzz but also recognise that there is a demand for collaborative applications from people who do not see their need as "social" or who, and perhaps I am one of them, misunderstand what IBM means by social.

Actually I do think I understand what IBM means by Social - its essentially people working together - which is what collaboration is - but I still find the label uncomfortable and my customers even more so.

Anyway, I have rambled on even more than ever, and probably caused a few IBM people to wonder why I was made a champion. I am very pleased that they did make me a champion and I am looking forward to telling all who will listen ( I'm impressed if anyone still listening now ! ) as many good business success stories around IBM collaboration as I can find.

 Lotus