During the last few months, I repeatedly found myself trying to determine how to better demonstrate the capabilities of my company's new products. Working with payment systems, this always creates the same problem: almost all functionality of our products resides on the server side. There's nothing visually appealing to show, unless someone considers ISO 8583 traces and transaction records appealing (which is not likely).
So I started working on demo applications. And a demo application these days translates to either a web-based or a mobile-based application. Since some of our products offer capabilities for the end-users of our prospect customers, which are mostly banks and processors, and given the current trend of our time, it's becoming clearer that mobile-based demos are the way to go.
Here's the problem: how do you turn developers who are experts in creating server-based payment applications that most often than not completely lack a user interface, to developers that can create good-looking mobile demos? The answer so far turns out to be: slowly.
Mobile development is a totally different beast than the payment system in almost every imaginable way.
- The mobile user interface is of prime importance, whereas core payment system components may lack a user interface altogether.
- While more powerful than ever before, mobile devices still impose severe limitations in terms of processing power and memory capacity when you're used to working in a server-based environment.
- Regardless of your choice (Android or iPhone) the development workflow is radically different, hence you get an additional barrier that needs to be negotiated.
Consequently, the sole piece of advice I can offer is: be patient. Take your time. Go through the process of working out samples even if they appear to be brain-dead easy. Write a few applications on your own even if they are equally worthless to the easy samples. Slowly try new things, a few at a time. Whatever you do, make sure that you don't start on a schedule before acquiring enough experience to make informed decisions about development effort required to accomplish something, regardless of how trivial it may seem.