“If I asked my customers what they wanted they would have said a faster horse” – Henry Ford

Introduction

I try to keep opinion out of this blog and stick to techie stuff but Ed Brill has tweeted encouraging more discussion on this topic so here goes.

In my world XPages has been the best thing to come to Notes / Domino since the product since embedded views were added. It has the potential to give Notes / Domino a new lease of life as an application development platform. In my opinion two things are holding it back. The first is a critical mass of developers and users. The second is an attractive licensing  model for ISVs and net new customers.

I think that IBM faces a dilemma with the new XPages Application server licence. The new licence will invariably lead to some organisations leaving the full Notes product and licensing for applications only – these companies have probably already moved to exchange for mail and are essentially taking notes maintenance just for applications. If the GBS Transformer product is successful this will add further organisations to this pool.

Conversely if IBM can fully tap into the potential of XPages with an attractive licence they can expand their licence sales to the point where the net benefit is positive and the future is brighter.

IBM is listening

I genuinely believe that IBM is listening very hard. Myself and some other Lotus advocates got talking on this issue at UKLUG and Ted Stanton very kindly fed our views back to Ed and his colleagues. The next day they phoned me to understand our concerns better. I put my thoughts to them in a note which was very similar to the views I am sharing below :

Background

I run FoCul which is a Notes / Domino development shop based in the UK. Our target market is the manufacturing sector and traditionally we have been restricted to working with manufacturing organisations who already ( wholeheartedly ) support  a Notes infrastructure. This market is rapidly shrinking in the UK.

Recently we have had some good success offering XPages Apps on virtual Domino Appliances to some ex Notes  ( no current maintenance ) and non Notes shops  and there is interest from more. We use an ASL Licence. The process to get this licence was difficult.

Every prospective customer we talk to already has a fully licensed .Net / SQL infrastructure and a SharePoint install of some kind. We believe our edge is primarily our industry knowledge / solutions and then, to a lesser extent, our choice of XPages as a solution platform – frankly we would have a much easier sell if we used .Net and made it seem like SharePoint ( as in a Ford is a much easier sell than a Lexus to most car owners ).

My opinion on the importance of an Application Server

This is the last chance for IBM to stop Domino disappearing as a supported development platform from all but a few large organisation sin the UK. This window of opportunity is rapidly closing. There are a number of schemes that IBM could adopt but at the extremes these are :

1) An initiative to make XPages “go viral”. Free to small organisations or lightly loaded servers ( with no IBM support ) , attractive pricing, boost the pool of developers.

2) To treat XPages as a cash cow while IBM makes the most of the legacy curve that Notes / Domino is progressing along in the eyes of many CXO’s.

Option 1) has been mooted for some time and has gained very little traction. I would be naive to think that it is easy to get anything to go viral and I know that there would be no marketing by IBM. There are other Community editions of IBM products and Microsoft apparently offers free SQL servers for smaller databases ( <10GB ). IBM also offers DB2 Express for free although it is hard to understand what the costs for Websphere Application Server Community Edition are.

I would love this to happen and in reality IBM gets little or no revenue from the 95% of companies in the UK that have less than 20 employees – yes that is a true statistic.

Option 2) must surely be tempting to IBM. An XPages appliance server would free some organisations of the handcuffs that keep them on Notes maintenance even though they have moved to Exchange for mail. A licence of say USD 50 per person might make it attractive for those companies to move Apps to XPages ( I have my doubts about Transformer but that’s a whole different issue ) but a USD 50 per person charge levied on all users would kill a lot of possible projects – particularly where the users were customers of an organisation rather than employees.

As Vowe recently commented – If Henry Fords had asked his customers what they wanted they would have replied “a faster horse”. Similarly I don’t recall anyone in the yellowsphere asking for Workplace Component Designer to be re-badged as XPages and added to Domino.

IBM has shown that it can wow its customers with a compelling new concept rather than a faster horse.

A word of caution though, positioning the XPages application development platform as part of the bigger “Social” initiatives in IBM will not increase its perceived worth amongst my customer base.

What I want from an Application Server

Appliance based solution

I want to be able to provide appliance based solutions to organisations of all sizes where the pricing is about the numbers of people using the applications rather than the ultimate size of the legal entity.

Example : I want to be able to sell a 50 user application to “MegaCorp” and then hopefully sell the same solution again to other sites in MegaCorp
In reality each site will probably want their own appliance but if they wanted one central appliance I do not have a problem with the notion that multiple sells of our solution should also mean multiple sells of the underlying IBM platform.

While I have mentioned the number of users as being important I am not a fan of absolute per user pricing because I want as many users as possible to use our applications because that is what makes them sticky in the organisation – but – the design of the application means that the client will not want to try and use it for more than one site because they will deliberately want to silo those work processes and knowledge to keep them manageable => you will not get the case that MegaCorp will run everything globally through one instance of our application on a 100pvu IBM licence. Bands of users might be a solution i.e. 0 – 50, 50 – 100 etc..

The PVU thing is a real issue, per socket would seem better although I am not an expert on this ( and more to the point neither are my customers ).

I believe that 100 PVUs is adequate for most of our projects assuming a server instance per sell. Where multiple sells used the same server more power would result in more PVUs. Equally a limit on the number of application databases could also drive this additional sell to IBM.

The same solution as SAAS

I want to be able to do the above as SAAS
In our case we could manage with a separate server instanc
e per customer but to be able to serve different customers on the same server instance ( multi tenanted ? ) would also be attractive – they have no access to the nab nor any need for it.

The above with a mixture existing Notes users ( fully licensed on maintenance ) and non notes users

I have several opportunities at the moment where we would like to propose an XPages stand-alone application to manage training records for an organisation where 75% of the users already have Notes licences. There is no prospect of the remaining 25% being put on Notes as they are production line workers.

I would like to be able to sell an appliance / XPages / browser based solution that covered 100% of the workforce ( about 500 people ). It would be useful if that appliance were allowed to replicate back to the existing enterprise servers so that the HR department could use the rich client to look at the data or for the 75% of users with Notes licences to use XPages in the client to work with the system.

The above with an RDBMS back end

When functionality to integrate XPages with RDBMS becomes available ( it has been suggested that something will appear on OpenNTF as part of the extension library ) it would be very useful to be able to bundle a simple RDBMS with the server. As a rule of thumb we will not use Notes if there are more than 100,000 records in a database. For something like a training history system we would like to use a RDBMS for the simple transactional data.

The above with no impediment to external users

The difference between internal and external users is becoming more and more blurred in business. I need the ability for customers to bring their customers an suppliers into  these processes in a simple way. At the same time it would be good to realise that organisations are not willing to pay a per head charge for large number of customers to be brought into their systems for simple tasks – yes I know these two things are a contradiction !

Integration into AD authentication

AD authentication will be the de facto authentication method for employees in white space projects. This needs to be included. I don’t think TDI is relevant ( too complex ) but LDAP seems to work OK in the trials we have done.

Anonymous usage

All forms of licence need to allow this

XPages in the Client ( XPiNC)

Replication is still a key selling point for us but it is usually for a subset of the users. I believe that users with a full client licence should be able to use the same server for XPiNC.
I would also love an XPiNC client that was not Lotus Notes and did not have all the other stuff that you get with a Notes install – just an XPages run time.

Choice of OS

I absolutely understand that IBM will not offer support if we build the appliances on Ubuntu / CentOS but this should not be a licence constraint.

I don’t think that Amazon EC2 is that useful in this space, the sizing bands are not a good fit with Domino ( in my opinion ) and there are cheaper alternatives.

The use of virtualised servers must be supported

The requirements imposed by sub capacity licensing are much too onerous and confusing

Thoughts on the mechanics of licensing

I would be very happy ( would very much prefer even ) to have limiting controls built into the server rather than written constraints in the written licence terms.

These could include concurrent users, named users, numbers of databases, size of databases, processors.

I am conscious that this brings its own problems as we saw when Ed looked at the artificial differences between express and enterprise.

What actually happens when a limit is met is also interesting – slowing the server down without a clear indication to the users of why it has been slowed could easily back fire.

My thoughts on each of the above

concurrent users :
A scheme whereby more users cannot log on until some have left
There would need to be a very clear explanation to the users
Developers may have to change apps to deal with this

named users :
I personally don’t like charging per user because it adds bureaucracy and can prevent an application from reaching critical mass.
If the licence was relatively cheap then bands of users ( 0 – 10, 10 – 50 etc ) might work but I am still not keen

numbers of databases:
This could work but it would need to be built into the system as a real constraint rather than a terms of usage
We would typically have 3/4  databases per sell.
     The Application
     An Archive
     A reporting Tool
     Sometimes we also have a large object store

We are also asked for test and training environments which would mean another 1 or 2 sets of databases on that server associated with that single sell.
Need to watch out for things like temporary restores

Size of databases:
Apparently MS does this
Difficult one as things like the Full Text Index will affect it
Views alone can often take up 30 – 60 % of a database size – what happens if someone opens a view for the first time ?
How will users know that a limit has been reached ?
What is the warning mechanism as the threshold is approached ?

Power of server:
I think the whole PVU thing is mad but I can see that server power is important.
A socket based system ( like Websphere community edition ) would be OK but I would much rather have some internal server mechanism to throttle performance so that customers could use whatever hardware they chose to.
Any system needs to be applicable to virtual servers
I firmly believe that IBM should not restrict our ability to run servers on Ubuntu CentOS via licensing constraints – by all means refuse support but licensing should be separate.
The requirements imposed by sub capacity licensing are much too onerous and confusing

Your Thoughts

I am not sure how typical my point of view is. Please add your own comments below or contact Ed Brill with your views if this is important to you.