Illustration by Kotryna Zukauskaite
Technical

Life after Parse for iOS Developers

BaaS (Backend as a Service) is a nascent industry with most startups and services in existence since 2011.  With the recent shutdown of Parse, confidence in these magical services is decreasing with some developers forced to jump from one previously flourishing service provider to the next promising a free, easy-to-use cloud database without needing to write any backend code. In May 2013, Kinvey released a revealing infographic that maps the plethora of BaaS providers at the time:

Courtesy of Kinvey

Courtesy of Kinvey

Since then, we’ve seen new entrants (e.g. Apple Cloudkit) and retirees (e.g. Stackmob, Parse) which gives us an indication of the volatility of the BaaS industry.  If you’re an individual or small company who developed a Parse-dependent app, you’re probably asking yourself, “What backend provider should I migrate to in order to ensure I’m not in the same position two years from now?”  Start looking now, and you’ll be faced with an overwhelming number of options and no clear answer.  Based on a cursory survey of available options, I’ve compiled a list of some popular alternatives to Parse.

CloudKit

Apple CloudKit’s claim to fame is its seamless integration with the Apple development ecosystem.  It currently offers a pricing model that adjusts free limits based on the number of active users of your app, and the framework is available by simply enabling CloudKit in the Xcode project panel’s Capability tab.  With its ease of use comes some caveats.  Notably, users are required to log in with iCloud credentials in order to access their private cloud data, and no functionality exists for implementing server-side logic.

Firebase

Google’s Firebase offers a similar cloud storage service as Parse.  It has a free tier with paid tiers that increase database connection, storage, and transfer limits.  Its SDK is available via Cocoapods, and documentation is well organized.

Kinvey

Kinvey offers a free tier for individuals or startups with fewer than 25 employees.  It may be prohibitive for companies that are larger than 25 employees but not large enough to afford the lowest cost business tier which starts at $24K/year.  Due to the multitude of services they offer, Kinvey’s documentation is not as simplified as Parse’s, which is designed to get developers up and running quickly.

Azure App Services (formerly Azure Mobile Services)

Microft’s Azure App Services is a recent combination of its deprecated Websites, Mobile Services, and Biztalk services.  Similar to other mature BaaS SDKs, it supports offline data sync and is available via Cocoapods.  It allows developers to choose a database technology, so migrating a database to another host should theoretically be easy.  With the combination of Azure Mobile Services into Azure App Services, Microsoft added more complexity in pricing which now depends on region and types of resources used.

Final Thoughts

This post is not intended to be comprehensive list of current BaaS providers, but it is intended to provoke thought about when using a BaaS is appropriate.  The landscape of BaaS providers is changing rapidly as companies continue to experiment with different feature sets and pricing models.  It’s still too early to declare a clear winner or even if BaaS will continue to exist.  BaaSs claim scalability with the ability to prototype cloud connected apps quickly, and these are valid technical claims.  However, there is no clear answer for app developers who want to build a scalable app without dealing with the intricacies of dev ops and backend development.  Recent events in this space make me wonder:

Can a BaaS claim true scalability considering the risk that service can be shut down at anytime due to non-technical factors?

Happy Coding!