So you already have this killer idea of an app/service that solves a particular need?
Here is my take on what you need to consider when building it, in order to ensure rapid customer uptake and market penetration. I made this up based on my observation of the industry in the past few years, including my own work.
1 – use open source wherever possible
2 – use REST where possible
3 – develop client for all platforms, including all mobile and desktop
4 – don’t waste time debating native vs hybrid – use best suited for particular platform
5 – design and implement a web-based interface as well
6 – cache and multi-master sync as much data as possible on device, and don’t forget to encrypt
7 – on the clients, where possible, build in self-update ability from your own application stores for minor versions and incremental fixes
8 – built in the ability to roll back to previous version – on-the-client! (backup previous version)
9 – build into your clients the ability to collect statistics and send debug reports
10 – Be transparent – ensure you have an easy method for customer feedback – INCLUDE social media.
Until next time