Saturday, 9 July 2011

Going mobile with Lotus Notes Domino


With this article I will start a series of postings about developing mobile applications for Lotus Notes Domino databases.  Today’s posting is about IBM's and our (Flexdomino.net) efforts to provide a Data Access API to Lotus Notes Domino.  

Not sure how closely you follow IBM’s efforts to provide developers with the means to develop mobile applications for Domino databases, but considering that you ended up reading this article I will assume you do.

If not, you might want to have a look at what is going on at OpenNTF and read about IBM’s effort to develop a REST API and providing XPages functionality to support apps for mobile devices:

http://www.openntf.org/blogs/openntf.nsf/d6plinks/NHEF-8J2V3G


If you follow my blog, you might also have read about my previous postings about our efforts at Flexdomino.net to develop a web service based Data Access API for Lotus Notes Domino called SoapgateQ!  Version 2.0 has recently being launched, and as part of this launch we provide a free Community Server License (you can find download and info links at the end of this article):



Before discussing the differences of the two APIs, let’s first talk about the different ways of developing a mobile app. Basically you have three options:

  1. A browser based application. For a Domino developer this obviously means XPages development, utilizing the tools provided by IBM. One of which is the new REST API.
  2. Native development. A developer would use whatever tools are available to develop for the OS of each targeted device, such as Android, iOS, QNX, WebOS etc. For native development both APIs (IBM REST API or SoapgateQ!) could be utilized to access Domino databases.
  3. Apps developed for middle-ware (such as Flash/Air/Silverlight) or cross-compiled apps. Again, both APIs could be utilized to access Domino databases.

I do not intend to start yet another one of these dreaded controversial debates about Flash vs. HTML5 or Flash vs. Native development, for which reason I will not talk about the pros and cons of the different methods to develop a mobile app.

Instead I will highlight the simple fact that IBM thinks XPages with regards to Lotus Notes Domino and the REST API is part of its broader strategy of Social Business. IBM will not provide any tools other then the REST API for native developers nor will it support middle-ware developers beyond this API. I have not heard or seen any official statement of IBM, but a high ranking IBMer stated in a session at LS 2011 that “IBM doesn’t believe in middle-ware”; hence it doesn’t believe in Flash/Air (or Silverlight for that matter). Having said this, IBM does not want you not to use Flash/AIR; the latter is simply not part of their strategy.

To summarize this: IBM wants you to develop browser based mobile apps with XPages using the REST API.

For those of you who are not XPages developers or simply have a case where a browser based app is not an option,  but a native app or an Flex/AIR based app or a Flex to iOS cross-compiled app is the best choice, this is where SoapgateQ! and its supporting Flex/Air libs can help you. Actually you might even want to use SoapgateQ! for XPages, but I will talk about this at a later stage.

In the next article I will talk about the differences of the two APIs and I will then start talking about our experience developing mobile applications with SoapgateQ!

In the meantime I would like to invite you to have a look at SoapgateQ! 2.0. Just get your free Community Server License and dissect the many samples we have provided for the different mobile OS on the market.

SoapgateQ! – Download & other useful links

Our technical user forum:

http://forum.qkom.de

Downloads for the SoapgateQ! 2.0 database and manual:

http://forum.qkom.de/board10-downloads/board16-download-soapgate-q/board20-soapgate-q-core-files

Downloads for the Flex Libs for SoapgateQ! 2.0 and manual:

http://forum.qkom.de/board10-downloads/board16-download-soapgate-q/board19-flex-air-libraries

Download for the Bookstore Demo for the most relevant OS and devices:

http://forum.qkom.de/board10-downloads/board16-download-soapgate-q/board11-bookstore-demos

2 comments:

  1. IBM may not believe in middleware, but they currently have 6 paid, full-time employees helping PhoneGap fix bugs in their software. More specifically, they have one developer for each OS that PhoneGap compiles for.

    ReplyDelete
  2. Erik, this comment I'm quoting happened in a session related to the new REST API and mobility. It was pointed towards Flex/Flash/AIR, although not specifically mentioned.

    I have discussed in the Labs some Flash/Air development of IBM itself. So it is not that they wouldn't use these tools to achieve solutions.

    But Flex/Flash/AIR is not very high on IBM's agenda in context of mobility for Domino.

    I'm not familiar with PhoneGap, but it looks to me that this is a toolkit for native mobile development, and not middle-ware in the sense of Flash/AIR.

    ReplyDelete