ChemSpider Mobile app goes both ways: now includes Android

The ChemSpider Mobile app is now available for Android, and can be downloaded for free on Google Play. It should work well on just about any Android-based phone or tablet that has access to Google’s storefront, and it is built against a version of the operating system (2.3.3) that not only includes most official Android devices, but also can potentially be adapted to run on other platforms, such as Amazon Kindle of BlackBerry 10.

The progression from the original iOS version of ChemSpider Mobile (which got a bit of an overhaul recently, to add substructure searching, among other features) has been a multistep journey which has benefitted from the accumulated experience of producing many apps on several different platforms.

Back in the beginning, nearly three years ago now when I founded Molecular Materials Informatics, my biggest concern was that people would not take seriously the idea of using their phones to do cheminformatics tasks. A fair point, to be sure, especially since I was pretty sceptical myself, even though I was pretty sure I could make it work. Fast forward to now, credibility is not really a problem (in fact, the Pistoia Alliance has an ambitious app strategy, which is headed up by representatives of several of the major pharmaceutical companies).

In 2010 I created the Mobile Molecular DataSheet (MMDS) app for the BlackBerry platform. That will go down on the record as something that seemed like a good idea at the time, but the mobile device industry moves fast, whether it be up or down: BlackBerry proceeded to take a spectacular nosedive, going from a near monopoly in the enterprise space to almost complete irrelevance as a target for app developers. At the same time Apple’s products skyrocketed, and also became a lot more enterprise-friendly, which meant there was no alternative but to do a hard platform pivot: the Mobile Molecular DataSheet for iOS came out soon after.

On the one hand, the iOS version learned from the lessons of the first implementation: simplify it. The ported app had a lot less features, and the interface was more accessible (though still very powerful, and with a learning curve that left a lot to be desired). On the other hand, the port was done in a bit of a hurry, and having to learn Objective-C on the run is far from ideal. At that time, I had no plans to produce more than one app per platform, but that changed after a collaboration with Eidogen-Sertanty to add the MMDS sketcher to their Mobile Reagents app. To accomplish this, pieces of MMDS had to be split off into a library, called MMDSLib. Since then, the number of iOS apps using MMDSLib has grown substantially.

Now back to Android. The demand for chemistry apps on this platform has been growing for awhile, and has always been included on the road map, albeit limited by resources, since iOS and Android apps get to share exactly zero lines of code. Once this process began, though, the benefit of hindsight kicked in: I knew from the beginning that I would be building a lot of Android apps, and as well as potentially licensing out the core technology to other app producers. So the Android version of the MMDSLib library was built first, rather than being spun off from a large and complex product. That was the first step, and the results were unearthed a few months ago with the release of the MolPrime app for Android.

The Android version of MolPrime is very limited in terms of features. While it has a fully functional sketcher that is the equal of the previous two platforms (BlackBerry and iOS), the shell wrapped around it is quite simple. It also happens to be free, so there’s not much justification for complaining about that. The primary objective was to get the technology out into the open, with some real world field testing, to give the core libraries a chance to mature. The MolPrime app is only a few hundred lines of source code, but the library that provides most of its functionality is orders of magnitude bigger.

Enter the second Android app: the ported version of ChemSpider Mobile, also based on the same core libraries. This one has quite a lot more app-specific functionality than MolPrime, but still the most complex functionality is buried in MMDSLib, which provides the very non-trivial cheminformatics. The Android version offers largely the same functionality as the iOS original, with a few improvements (e.g. the “Recent” panel). There is less functionality for app-to-app communication, though, since the Android chemistry ecosystem has a lot of work to do before it catches up to iOS.

There are two more Android apps planned already. One of them is nearly finished, and the other one is all specced out and should follow soon after. So watch this space. Each new app is a chance to improve the core libraries, and so the development process gets easier and faster.