From zero to hero: scalable services to fit your mobile app, like a boss
Most mobile apps today are connected to some kind of internet/cloud-based service. Very few apps are truly disconnected and the value of mobile apps in general are usually tied to the information from the web the grab and present to the user. Given that emphasis on service-based value in mobile apps, shouldn’t there be tools to help you build these great apps that use the cloud efficiently?
Today’s smartphone apps are truly amazing. Some of these apps do things that even only two years ago would seem impossible or at least highly improbable. Apps like Instagram, Angry Birds, Wordament, Kik Messenger, WhatsApp, WeatherBug and others show what’s truly possible with mobile devices. In fact, it can be argued that apps are what drive the platform.
The interesting thing is that the apps I described above use web-based services to drive a lot of the value in these apps. They aren’t standalone apps by any means. You could poll any of the app marketplaces out there (on whichever platform you choose) and a very large majority of them will likely require some kind of internet or services-based connectivity to truly unleash their power.
The tricky part is to make bets on where to host your services. Do you host them at home? With an ISP? In the cloud with a vendor? The choices are almost endless, but picking the right choice is very tough. If your aim is to have your app be popular, you may need to scale those services out so that as the user base grows, you can support the traffic your servers will need to support. If this is a real concern for you, finding a cloud vendor that will allow you to scale your offering as demand on your services increase is key. There are lots of cloud vendors out there and I would say that most are usually good options for you to host your services on.
So where are the points of differentiation? Price? Most cloud platforms are roughly the same price on a monthly basis. What about scalability? Again, all credible cloud vendors offer this. Guaranteed reliability? Three nines (99.9%) uptime is fairly common so again, not much differentiation here. How about tooling to help you get up and running quickly and help your apps be efficient in getting services-based data from the cloud? Ah, now there’s something that might be a differentiator.
If you build for Android, iOS or Windows Phone and you’re interested in looking at Windows Azure as a way to host your services, you may want to find out more about the Windows Azure Toolkits for iOS, Android and Windows Phone. These toolkits were built to help you hook into the various Windows Azure services available with little work on your part to get the pairing between device and cloud hooked up.
Using the toolkits, you can use the cloud to accelerate the creation of applications on the major mobile platforms. Companies, including Groupon, are taking advantage to create a unified approach to cloud-to-mobile user experience.
The toolkits leverage the cloud to simplify the complexity of supporting multiple devices. As a common back-end, you can use cloud services to share common requirements like device notifications, authentication, storage and even higher-level services like leaderboards. At the same time, you can maximize the performance of each mobile device by writing client code that exploits each platform.
Developers can download the package and quickly get started writing iPhone apps on the Windows Azure platform without having to have intimate knowledge of Microsoft tools, such as Visual Studio. Compiled iPhone code libraries to interact with Windows Azure, a sample iOS application, documentation, and a “Cloud Ready” Windows Azure deployment package are included.
For a walkthrough of the Windows Azure toolkit for iOS, you may want to check out this video.
Like the iOS toolkit, you will be able to extend the functionality now available for iOS and Windows Phone to the Android platform with the Windows Azure Toolkit for Android.
Again, if you are interested in the Windows Azure toolkit for Android, you might want to watch this video.
So if you’re ready to take the plunge and check out Windows Azure for your back end services, you can sign up for a free 90-day trial and see if it works for you. Who knows, maybe your decision will make your app ready instantly scalable to however many users your app is downloaded by. Then you’ll own the space. Just “like a boss”.