Beyond XPages

Early last year I did a presentation at several User Groups entitled “Beyond XPages”. The presentation outlined an approach for building modern Web applications for Notes data that was not based upon XPages. We believe XPages has a shelf life of (at best) 5 years before companies will become very active in seeking to migrate to other development platforms. That by 2020 IBM itself will have abandoned the platform. This is why Red Pill Now no longer recommends to its customers development based around XPages.

We got a lot of feedback from the sessions, including disbelief that IBM would allow us to do a presentation like this. We knew at the time IBM would not want us to present such a diverging view and we invited various members of IBM to attend so we could get their feedback. They didn’t like what we were saying, but they also were unable to counter the arguments made. As an IBM Business Partner with a number of past and present IBM Champions we want to support and promote IBM products wherever we can. But we also recognize the need to retain our position as thought leaders in the application development space at a time when IBM (unfortunately) no longer seem to be providing a lot of thought leadership with products such as XPages.

Why Not XPages?

Simply put, there is little evidence that IBM is investing enough in XPages to ensure its long-term existence as a viable Web development platform. The world of Web development is rapidly changing and the technologies around which XPages are based are falling behind just as fast. In the pioneering days of Lotus Notes the product was an innovator and its community thought leaders. XPages is a follower.

XPages is based on dojo, a Javascript framework that is going nowhere. jQuery has long since become the de-facto standard, but it is often a struggle to use jQuery without dojo getting in the way. Domino Designer is still based on Eclipse 3.4 (circa 2008) instead of Eclipse 4.4.  The Domino Web Server is based on HTTP Servlet 2.5 (2005) instead of HTTP Servlet 3.1. The programming language used within XPages is based on Java 6 (2006) when Java 8 has been released for quite a while now and the world (outside of XPages) is already planning for a move to Java 9. The XPages scripting language (SSJS) is based on ES3 from all the way back in 1999 while the rest of the world is now exploiting the power of ES6.

From a design perspective XPages has One UI! Bootstrap is finally being integrated into XPages just as we are seeing companies such as Apple, Google, Microsoft, and even IBM moving on and investing heavily in the development of a new generation of Design Languages. XPages does not have native support for any of these, including IBM’s Design Language.

To be fair, this in no way reflects badly on the XPages development team in Ireland or Product Manager Pete Janzen. They get it, and understand the needs of modern Web developers. Its just that they are neither provided with the resources to develop the product in these areas nor are they provided with the opportunity to release enhancements back into the core product. For example, the adoption of Java 8 was developed quite some time ago, but there has not been a new release of Notes/Domino since 2013. With IBM’s market share declining, the situation is not going to get any better. The XPages team are active members of our community and are making as many enhancements as they can via OpenNTF. But as awesome as they are, too much is now falling on too few.

And that brings me to my next point. At Connect 2016 IBM made a number of announcement about the features likely to be coming in the “Next” version of Notes/Domino. This included support for Java 8, better touch screen support, Windows 10, improved calendar interoperability, template updates, the storage of views outside the NSF, support for document encryption and signing in XPages, and better integration with BlueMix from within Designer. All important features to allow Notes, Domino, and XPages to catch up with some of the changes in modern Web development that have occurred since 2013.

 

The above observation by Detlev Poettgen at DNUG last week is interesting given the response by Product Manager, Ed Brill that the roadmap for now merely includes “commitments” to fixpacks for Notes and Domino!

That made me wonder…. why would IBM suddenly only provide a commitment to fix-packs instead of taking the opportunity to remain committed to a new release, something customers and the community continue to push for? I may be wrong, but I suspect that having already gone three years without a release, should IBM decide to have a 9.0.2 release of Notes/Domino, this could potentially reset the clock for how long IBM would be obligated to support Notes/Domino moving forward. I am sure they will ultimately determine an appropriate length of support once it is clear to customers there are no new releases coming, but they probably want to leave as much wiggle room (legally) as they can. After all, they do employ one or two lawyers!

Back in March I suggested that new ICS GM Inhi Cho Suo was likely to make significant changes to the direction of ICS. The Road Map presented at Engage also was missing any reference to Notes/Domino Next. Perhaps a faster end for Notes, Domino, and XPages is part of that change.

Beyond XPages?

In the 16 months since I first presented Beyond XPages nothing has happened to make me believe XPages will have a future beyond 2020. In fact, I am not sure now if XPages even has a future beyond 2018! With an estimated 10 million Notes application still in use today organizations around the world should be taking stock of their application portfolios and planning carefully for the future. Thick clients such as Notes, Flash, Access, FoxPro, and even Outlook are on the way out. Instead the development of Web applications based around the holy trinity of HTML 5, CSS3, and ECMAScript 6 are on the rise. I do not see any true Rapid Application Development tools like Notes on the market which means moving Notes applications to more traditional IT-based development platforms. Bad news for citizen developers, but good news for centralized IT. The Domino database engine remains solid so there is no great urgency to migrate completely away from Domino at this time. But it is clear that future enhancements to existing Notes applications should now be developed with something other than XPages.


At Red Pill Now we are focusing on Design First (Google Material Design), Graph databases, REST Services, and Polymer as a way forward for Notes databases. We like the distinct advantages that come from leaving the data in Notes. It allows our customers to continue to run their existing (Notes client) applications in parallel avoiding the costs/risks associated with data migrations. Our customers love that we can deliver modern looking Web applications that surface their existing Notes data via a Web browser from a desktop, tablet, or smartphone. Something we could never do had we continued to do our development with XPages. Not now in 2016, and certainly not in 2020.

2017-07-28T20:22:16+00:00

About the Author:

Peter Presnell
CEO at Red Pill NOW. Strategist, technologist, blogger, presenter, and IBM Champion 2011/12. For years many companies have invested heavily in the Notes/Domino platform and I see my role as helping to find paths forward for that investment.

23 Comments

  1. Russ Maher June 6, 2016 at 3:56 pm - Reply

    Been thinking this for a while and the events from last week really confirmed my thinking. Really nice to see an analytical post about the subject. Totally agree with your analysis.

  2. Sean Cull ( FoCul Ltd ) June 6, 2016 at 4:06 pm - Reply

    Russ – is this what youa re talking about ? http://vowe.net/archives/015687.html

  3. Steve June 6, 2016 at 4:18 pm - Reply

    …and think that XPages is really RAD development and the Irish development team is really strong…
    but IBM does not believe in this. IBM like WS stack. Wonderful… but the world go to Node.js, NoSQL etc…

    IBM does not know what they’re doing.
    IBM had the gold in his hands and will understand only when it will fail.

    It was never a company in step with the times and with technological change .
    It will not last long.

    Now push the cloud, watson , connections…toscana..

    But Connections you have seen ? What kind of software is ??? We are serious please
    all based on the stack of websphere and 1GB of software??? Incredible!
    Most of peoples in the world use and customize Tomcat to WS.
    .
    IBM is out of step with the times and it never will .
    One day will change , perhaps when he falls into how Apple then someone will lift.

  4. Patrick Kwinten June 6, 2016 at 5:18 pm - Reply

    @Peter: does IBM ever react to these kind of analysis?

    • Peter Presnell
      Peter Presnell June 6, 2016 at 5:55 pm - Reply

      Actually Patrick, I see it more the other way round. I fully expect IBM already has a clear strategy that reflects what it is wanting to do based upon its own analysis and what it sees is in the long term best interests of its shareholders. Because I can never be certain what it is that IBM is doing I need to provide clear concise analysis to help guide our own customers to react sooner rather than later to protect their investments. I am pretty sure we are seeing a change at IBM that would not warrant an investment in XPages as a long-term investment f(except companies that provide XPages-based services). So largely it is me reacting to THEIR analysis.

  5. Stuart McIntyre June 6, 2016 at 7:56 pm - Reply

    Really clear, insightful and forward-thinking post, Peter. Thank you for sharing.

    I’d agree with your thoughts in the most part, and had been thinking along the same lines when it came to the delay in shipping the next point release – it’s all about avoiding pushing out that potential end-of-support date for enterprise customers, or at least ensuring that whatever support is covered by paid extended-support agreements rather than on straightforward maintenance.

    That said, if this assumption is correct, I don’t criticise IBM for the decision – it makes a smart approach from the perspective of minimising costs and extracting most value from the remaining annuity revenue that will be delivered by the Notes/Domino estate. In other words, it will do exactly what IBM’s corporate shareholders would want them to do.

    And from Inhi’s perspective, it also probably makes sense. Focus on the parts of the portfolio that are in demand by net new customers, and by IBM itself, on supporting and building the CAMSS revenue that IBM is so focused on, and on integrating the shiny new cognitive capabilities that are IBM’s main marketing weapon. Sadly Notes/Domino doesn’t fit into any of the above, except as a backend engine that supports Verse and a few other niche capabilities… It would make sense to do the minimum needed to keep those lights on.

    So, it will be interesting to see whether anyone from IBM counters your assertion directly or in private conversations – if so, I hope you can share the outline of what you’re told.

    Either way, it sounds as if I’m in a similar position to you and your colleagues and many others in the community, in that is no longer something we’re willing to go to war to fight for. The passion has gone (for Notes/Domino at least), and we need to think about this position in stark business terms. IBM will do what it needs to do, and as Volker says, we should make our plans accordingly. I personally think your recommendations to your customers are good ones.

  6. […] Peter Presnell of Red Pill on the future of Domino development ‘Beyond XPages‘: […]

  7. Paul Withers June 6, 2016 at 9:10 pm - Reply

    Well said and anyone who has scratched the surface of OpenNTF Domino API knows the strength of maintaining the data that’s in Domino and leveraging what’s new in OpenNTF Domino API (natively storing Java objects in fields, Xots or an alternative multi-threading framework like more modern Java managedScheduledExecutorService, and most obviously Graph). Combine them all and there is a lot of power in the platform, whether customers remain in maintenance or not.

    It will be interesting to hear what IBM announce Q3 this year. I’m not confident there will be an imminent alternative – if one had been in development or were easy, Verse and Toscana would be built with it, and they’re not. A similar approach to CrossWorlds or the nodeJS community options could be useful, but is unlikely to be popular with existing customers. Using Bluemix as a runtime for Domino data is hard to justify to a customer, whether for XPages, JS or Java development. And in my honest opinion, DAS is not suitable for anything beyond “Hello World” applications or the basic CRUD functionality required by mail and calendaring. The speed of delivery of Verse extensibility is not encouraging for timescales between announcement and delivery (18 months since first demo’d). The challenge isn’t just engaging developers, it’s engaging them enough to see a point in submitting abstract for or attending IBM Connect 2017, if IBM sees developers as a target demographic for that conference.

    Unfortunately, I suspect cost will mean a number of customers with a number of custom apps using Notes Client or XPages for a long time. Working with Vaadin has made me realise that part of the problem of XPages was that it allowed bad practice (including SSJS) without recommending best practice (like DAO layers), so replacing just the front-end of many XPages applications will not be easy. And experience of Vaadin has made me realise that other frameworks don’t offer the same RAD functionality as Notes / XPages. The power of the XPages component library is not only in the RAD functionality of the components but also the wrappers for Domino objects – StackOverflow shows the challenges people have had fighting with rich text, attachment handling, view wrappers etc. It’s taken me years to realise some of what’s happening under the hood. If IBM do not give a roadmap for open sourcing those components (or here’s a radical thought, forget the roadmap and just release it!), at least we know the community needs to do that and I’m sure we can.

    • Peter Presnell
      Peter Presnell June 6, 2016 at 9:20 pm - Reply

      Paul, I think your experiences with Vaadin very much mirror our own with Polymer and Backbone/Marionette. It is truly awesome what can now be done to surface the content of Notes databases but it is a far cry from the days of Notes RAD development. XPages had the potential to fill that gap but it was/is going to take a lot of work from both IBM and OpenNTF to do so. I am convinced there is a huge market out there to build a Web Component based RAD development tool especially if a way could be found to integrate that into a social platform and then tie disparate data together using the unique capabilities of graph databases. We will continue to push the boundaries in that area, but if IBM do deicde to retire the NSF as a container for applications we may have to look at alternative places to house the data needed to support this. I am intrigued by Ed Brill’s mention of “Application Modernization” being part of the road map. It sounds like something new and different is planned but not clear what that might be. Perhaps IBM haven’t found it either!

      • Paul Withers June 7, 2016 at 6:08 am - Reply

        There’s a bit more here http://www.snoug.ch/SNOUG/webX-New.nsf. Toscana seems a big part. Key is a robust option to integrate with Domino that appeals to Java as well as JavaScript developers and appreciates that Domino is more than just a NoSQL database. As a Java developer, I am not engaged by the idea of writing Java code to make a REST service to Domino which runs code to return JSON which I then need to parse, when a Java API already exists to directly interact with Domino servers which is what’s returning the JSON for DAS anyway.

      • Don Mottolo June 10, 2016 at 9:41 pm - Reply

        Peter, You mention using Polymer with Backbone/Marionette… Are you able to use that with Domino as the web server or are you only using Domino for the data store and a different web server (Tomcat? Node? ???) If so, can it run on the Domino server or do you need an additional server? I’m trying to envision how to use other frameworks with Domino data. Thanks.

        • Peter Presnell
          Peter Presnell July 17, 2016 at 5:08 pm - Reply

          Polymer is a client-sided framework so it doesn’t really matter what server is used. It will typically talk to the server via a REST services such as that provided by Domino Data Service (DDS)>

  8. Declan Lynch June 6, 2016 at 11:30 pm - Reply

    Totally agree, XPages is on the way out. I’ve personally been looking at things like Spring MVC, Hibernate, Grails… Basically everything modern and not domino. It is a very sad state of affairs when a company with a top notch XPages Dev team are looking elsewhere.

  9. Csaba Kiss June 7, 2016 at 3:06 am - Reply

    Thank you for this great article. I agree with you that XPages lag behind significantly, and I don’t see any signs that it will change in the near future. My first conference, as an XPage developer was MWLUG 2015. We heard that Java 8 and other goodies would be released imminently. We heard the same promises at Connect 2016 and we also heard about Notes Next. Yet, it’s almost MWLUG 2016 and nothing official has been released. To me, the most significant sign that IBM effectively abandoned XPages was the open sourcing of XPages. It just shows me that IBM is done with it and let the user community take care of it from now on.
    I love the rigorous security of the Domino database. However, where XPages fall seriously short is modern front-end development. We cannot even have standard HTML5 tags (i.e. , , …) tags without workarounds. How about css preprocessors, websocket technology?

  10. Peter Presnell
    Peter Presnell June 7, 2016 at 11:40 am - Reply

    Editors Notes: Obviously some people are very emotional at the possibility of Notes, Domino and/or XPages going away. I am usually a big proponent of free speech but I want this blog to stimulate constructive discussion about what companies should be doing to protect their investments in Notes/Domino. If you are in any way disappointed with what IBM are doing I would suggest you reach out to IBM and discuss it directly with them rather than venting your frustrations here. In order to maintain a better tone I have chosen to block some comments from people who are posting multiple times aimed solely at attacking IBM. There is a limit of one rant per person 🙂

  11. Christian June 7, 2016 at 12:20 pm - Reply

    yasterday: OS2, Lotus Organizer, Learning Space, Smart Suit, Workplace, Quickr ….
    today: Lotus Notes, Domino ….
    tomorrow: IBM Connections

  12. Richard Moy June 7, 2016 at 6:13 pm - Reply

    I agree that there is no future for XPages. I have been using XPages only as a HTML container since XPages became available. Notes has no future as a Eclipse-based client. Maybe as a plug-in. Domino on the other hand I believe there is a future. Whether, IBM recognizes that and continue supporting it is a question. If not, we will find a replacement technology, but I know IBM Connections is not a future for my customers. I am not impressed. Domino is the most robust and secure NoSQL platform out there and it is easy to implement and maintain. You would think that’s what a cloud provider would prefer since it delivers with minimal management cost. I would refer to see IBM transform Domino into an application server only and it hook into Node.

    We have been using JSON-based MVC with our own REST-API for almost 7 years and I don’t see us going away from this. The total separation of data and form allows us to be client independent and very flexible. From the front-end designer point of view, I don’t really care what creates my JSON REST API, but as an IT professional, I care of about data security so that is why we stay with Domino. Personally, Dojo has gotten a bad rap because of how IBM implemented it.

    We created our own RAD toolset (Notes Basic Client-based) and wrote our entire MVC framework in Dojo and will continue to do so. It is fast, secure and if the REST API calls are from a Node or Tomcat server my front-end does not need to be changed except for one REST API table.

    I hope IBM keep Domino going. After more than 25 years, it is still one the of the best products out there and some companies are still trying to make their solution come to par with Domino.

    • Peter Presnell
      Peter Presnell June 7, 2016 at 7:14 pm - Reply

      Thanks Richard… You know, outside of being the organizer of MWLUG I don’t think I ever truly understood what it was you did with the product. There is some interesting stuff there to talk about in Austin.

  13. […] for not calling this latest iteration of Notes/Domino 9.0.2 are not clear to me, although I have commented previously that it is more than likely tied to the above Support Lifecycle […]

  14. […] Engage in March 2015 I gave a presentation Beyond XPages. In it I suggested that XPages, at best, was a transitional technology that bought Notes […]

Leave A Comment