Article Contributors // _ Andrew Carter &Michael J. Prichard
Parse, a Mobile Backend as a Service (MBaaS), first appeared on the scene in 2011 and grew so quickly that by 2012 it was being used by tens of thousands of mobile developers. In 2013, Parse was acquired by Facebook and went on to power a reported 500,000 applications.
Parse isn’t the only player in the SaaS (Software as a Service) industry. Larger companies like Microsoft (Azure) and Amazon (AWS) have offerings, as do companies like Kinvey and AnyPresence. But the difference with Parse is that it has attracted more developers than the existing platforms because of its easy-to-use and well-documented SDKs, highly competitive (often free) pricing, intuitive backend portal, and its ability to handle everything (e.g. cloud computing, push services, user authentication, etc.) with very little configuration or setup. From big-name brands to indie shops, Parse was the obvious choice to accelerate production of MVPs, small to medium scale applications, or specific features of large scale applications.
On January 28th, 2016, in what has come as a shock to many companies, Parse announced it’s shutting down services and that customers will have to migrate their application(s) no later than January 27th, 2017. This puts a great deal of pressure on organizations to think through their backend strategies and determine how they will deploy their app(s) in today’s cloud-centric environment.
It should also be noted that Parse does provide a recommended migration timetable which is much more aggressive than the year they say they will keep the service running.
Taking these dates into account, it seems that the wisest course of action for companies using Parse is to start figuring out a new solution now and to begin the migration process as soon as possible.
If your entire application backend was built on Parse, you’re actually in luck! Parse has provided a Migration Guide ( https://parse.com/docs/server/guide#migrating) for their newly released, open-source server. The new Parse Server doesn’t have every feature that Parse had (notably push notifications), but it wouldn’t be difficult for a well-versed developer to implement those features on top of what Parse has released.
One reason many developers chose Parse was because they didn’t want to setup and maintain a server. Considering this, and along with the fact that some custom work may be needed in order to completely migrate to Parse Server, another SaaS may be a better solution. Of course, data would need to be migrated to the new solution, but Parse has provided a database migration tool that should make migration simpler.
The good news is that we are seeing the development community step ahead of this challenge and a great list of Parse Alternatives has already emerged on Github as a result ( https://github.com/relatedcode/ParseAlternatives). What works best for you will depend on the features in Parse your application was taking advantage of, but in this list you may be able to find a more lightweight solution for your application, or a solution that offers functionality Parse didn’t even provide. Given you will need to update your application(s) to leverage your new SaaS as its backend service, this could also be a great time to upgrade your app(s) with improved or added functionality.
SaaS platforms are great for MVPs, rapid prototyping, personal projects, and powering smaller features of larger products. If your application needs to be built to scale, is mission critical, and continues to evolve with custom needs, it may be a better business strategy to build your own backend. This way you maintain complete control and can leverage it as a competitive advantage. This may require hiring new disciplines internally, training your staff in new technology stacks or hiring outside consultants and service providers to develop and maintain your infrastructure, but it also frees your application and your business from dependence on another company. That said, there are also a number of great enterprise-grade platforms available that make this task easier too. Time-tested and well-supported infrastructures have been built on JVM, .NET and Node.JS. Finally, great deployment models including Docker can make distribution and scaling your applications easier and more cost effective. These can be leveraged for cloud deployment but also give you portability and options.
While this is a major inconvenience and unforeseen expense for us all, it certainly isn’t something that puts us in a precarious position. Facebook is doing everything they can to give companies time to move to alternative solutions. However, this does have us considering options companies need to think through with regard to relying on a SaaS solution, as it creates dependency upon systems that lie outside a company’s control. What made Parse so appealing is also what makes it mission critical - it powers everything. Parse, having been bought by Facebook, appeared to have earned longevity and seemed a “safe” choice, but as other critical APIs and services (e.g. Twitter 1.1, Basecamp 3, Netflix, Facebook, Google Reader, “old” TestFlight, etc.) have demonstrated, nothing is guaranteed to last in the fast-moving world of mobile. In choosing to build on top of SaaS, your application becomes beholden to another company’s lifecycle, from API policy changes to a complete shutdown of services.
We are sure that we will be answering these questions for a number of our current clients, as well as future clients, as we help with Parse migrations and future application development. In fact, we are growing our own backend and architecture services team, as we are seeing a change in tide when it comes to powering mobile apps for our customers. If you have any questions on Parse migration, future-proofing your current application infrastructure or building your next offering, please do not hesitate to contact us.
Parse will shut down completely by January 27th, 2017, but don’t panic! If you’ve used Parse for your product, you’ve got many options for replacement. Parse has provided an open-source Parse Server which you can host yourself; it doesn’t include every feature of Parse, but will likely do just fine for many an application. Alternatively, should you opt to move to another SaaS, Parse has a database migration tool you can use to ease the process. SaaS systems are often ideal for prototyping and personal projects, but for large, custom applications that your company depends on, building your own server stack is worth the extra time and effort.