Parse and Facebook – A dossier about the BaaS market

This article will provide a comprehensive report explaining what is Parse Server, the history behind it, the most important contributors for the Parse Server community, and the best alternatives for the Parse shut down. Reading this article, you will know:

  • What is Parse Server? Pros and Cons of using it.
  • The real reason behind Parse shut down.
  • Parse download – Where to perform it?
  • The best Parse alternatives and how to move off Parse. 
  • Parse migration options.
  • How to deploy and use Parse Server.
  • Parse Dashboard.
  • The cost to host the Parse Server.
  • How to create a Parse application.
  • What will happen after Parse shut down?

Let´s start with a little bit of context.

The Announcement

I was in the middle of a meeting with my partners talking about our next steps for the company when suddenly everything changed. It was Jan, 28th 2016 and we were completely shocked by the announcement made by Facebook informing its developer platform Parse would be discontinued.

I could not believe it when I started to read the statement below:

“We have a difficult announcement to make. Beginning today we’re winding down the Parse service, and Parse will be fully retired after a year-long period ending on January 28, 2017. We’re proud that we’ve been able to help so many of you build great mobile apps, but we need to focus our resources elsewhere.”

You can read the entire announcement below:  

http://blog.parse.com/announcements/moving-on/

But why? Parse History

Parse is BaaS – Backend as a Service platform which provides SDK’s for building mobile backends for Windows 8, Windows Phone 8, iOS, Android, JavaScript, and OS X. With Parse, developers can add a scalable backend in minutes and launch a full-featured mobile or web app in record time without ever worrying about server management. Parse offers push notifications, social integration, data storage, and the ability to add rich custom logic to your app’s backend with Cloud Code.

In 2011, Parse was accelerated by Y Combinator and in Nov 2011 received a Series A investment from several investors. In 2013 Facebook acquired Parse for $ 85M.

This Wikipedia link provides further details about Parse.

At that time, the acquisition made a lot of sense and was the opportunity for Facebook to grow inside the mobile developer’s community. This is a great Techcrunch article about it. 

Parse had 4 founders at the beginning of the operations, and they are mentioned below:

Ilya Sukhar – CEO

Tikhon Bernstam – CEO (between 2011 and 2013)

Kevin Lacker – CTO  

James Yu – CPO

What is Parse Server? Can I download it? How to use it?  

Parse Server is the Open Source version of Parse and can be downloaded at Github. Please use the link below to perform Parse download.

Parse Server

parse-download

Facebook decided to shut down the Parse hosting service, but provided to the developer community an Open Source version of the product. Below you can see the official blog detailing the launch of Parse Server.

http://blog.parse.com/announcements/what-is-parse-server/

Parse Server is NOT a copy of Parse! There are major differences between both platforms. I will illustrate the main differences:

Features Parse Parse Server
Local development & testing No Yes
Flexible Hosting (USA, Europe, Asia, etc) No Yes
Control over database (backup / restore) No Yes
Control over database indexes No Yes
Query more than 1000 objects No Yes
Store files elsewhere (CDN) No Yes
Enforced time limits No Yes
Open Source No Yes
External contributions No Yes
Analytics Yes No
Authentication Yes Yes
Config Yes No
Push Notification Yes No
Data Browser Yes Yes
In-App Purchase Receipt Validation Yes No
Background Jobs Yes No
System E-mails Yes No
Schema API Yes Yes
Webhooks Yes No
Uptime monitoring Yes No
Logs Yes Yes
Dashboard Yes Yes
Queries Yes Yes
Users Yes Yes
Sessions Yes Yes
Roles Yes Yes
Files Yes Yes
Geopoints Yes Yes
Data Browser Yes Yes

You can read a more detailed article about the differences between both platforms below:

https://blog.back4app.com/2016/03/30/parse-open-source-is-moving-fast-but-still-has-some-features-to-be-opened-up-see-which/

General Purpose: Open Source

Hosting: Self-hosting or Parse Server Hosting providers. Supports local testing and development.

Custom Code: Supported via Cloud Code.

Database: A NoSQL (originally referring to “non SQL”, “non relational” or “not only SQL”) database provides a mechanism for storage and retrieval of data which is modeled in means other than the tabular relations used in relational databases (key-value format, graph, wide column store, etc). Data constraints are loosely defined, or even not defined at all. (wiki).

Push: Support push notifications for Android, iOS. Also, users can manage Push Notifications campaigns.

Storage: No restricted time limits and no file storage restrictions. Control over backup, restore, and database indexes.

Provider: Developed by Facebook.

Ideal for: General purpose applications.

https://blog.back4app.com/2016/11/08/parse-com-vs-parse-server/

Parse Migration – What are the alternatives?

If you are migrating from Parse, creating a new mobile or web app you have basically 3 options to move forward. The options are:(1) Parse Server hosting providers. (2) Another MbaaS – Mobile Backend as a Service platform. (3) Parse Server Self-Hosting solutions.

Parse Hosting Services

The main differences between self-hosting solutions versus a Parse Server hosting providers are related to the Parse Server deployment and maintenance. A Parse Service hosting provider will provide a ready to go environment in which you can create a new app or migrate your app from Parse. The table below details the differences:

Features Parse Server

Hosting Provider

Parse Server

Self-Hosting

Create Server Included User need to create the server structure
Download Parse Server Included User needs to download Parse Server
Install Parse Server Included User needs to install Parse Server
Deploy Parse Server Included User needs to deploy Parse Server
Keep Parse Server-Updated Included User needs to keep Parse Server up to date.
Create multiple apps Included Users can only deploy one app.
Auto Scale Included

(check vendor)

User needs to create new servers and take care of the infrastructure.
Backup Included

(check vendor)

User needs to take care of the backups.  
Redundant Server Structures Included

(check vendor)

User needs to take care of the redundancies.  

Please find below the major Parse Server hosting providers.

Back4App

What Is: Parse Server Hosting platform to build and host your apps using Parse Open source.

Main Features: Parse Server Dashboard, Push Notifications Tool, Global Config, Facebook and Twitter Integration, Push config, Background Jobs, Cloud Code Tool, System emails, Migration tool, CLPs, Automatic emails.

Pros: Features, no vendor lock-in, backup policy, server redundancy, AWS server provider.  

Cons: Servers in the USA only, new company.

Nodechef

What Is: Provides Parse Server hosting

Main Features: Push Notifications, Background Jobs, Addons, Parse Dashboard

Pros: Database management experience, addons

Cons: New company, not 100% focused on Parse Server, run only Parse Server core product.

Sashido

What Is: Parse Server Hosting for busy people

Main Features: Push Notification, Cloud Code, Background Jobs, Social Logins, E-mail Integration,

Pros: Features, focus on Parse replacement, no vendor lock-in.

Cons: Does not have a backup policy, no USA servers and does not have a US-legal entity. 

The table below provides a detailed description of the players.

Description Back4App NodeChef Sashido
Price Free

Starts at $4.99/month

Paid Only

Starts at $9.00 / month

Paid Only

Starts at $4.95 / month

Backup Yes

Every Hour

Info not available website No
Redundancies Yes Yes (Need to pay extra) Info not available website
Hosting Amazon AWS Info not available website Cloudstrap / AWS
Vendor Lock-In No No No
Support 24 / 7 8 / 5 24 / 7
Auto Scaling Yes No Yes
US Legal Entity Yes Yes No
FAQ Yes No Yes
Docs Yes Yes Yes
Blog Yes Yes Yes
Partnerships with Cloud Services Yes No No
Migration Engine Yes No Yes
Parse Server Dashboard Yes Yes Yes
Push Notifications Yes No Yes
Global Config Yes No Yes
Facebook & Twitter Integration Yes No Yes
Background Jobs Yes Yes Yes
Cloud Code Tool Yes Yes Yes
Automatic Emails Yes No Yes

BaaS – Backend as a Service platforms

There is a vast quantity of BaaS providers available on the market, and I will focus on the 3 most relevant for the Parse migration.

Firebase

What Is: Firebase is a mobile and web application platform with tools and infrastructure designed to help developers build high-quality apps. Firebase is made up of complementary features that developers can mix-and-match to fit their needs.

Main Features:  Cloud Messaging, Realtime Database, Test Lab for Android, Crash Reporting

Pros: Large company, good documentation, and reliable server structure.

Cons: Time to conduct Parse migration and the necessity to change the API.

The article below compares Firebase with Parse Server.

Firebase x Parse Server

Stamplay

What Is: The low code development platform to build with APIs as if they were building blocks.

Main Features: Connectors, Bring your own code, Database & REST API, User Auth & Security, Frontend

Pros: Vast quantity of connections, it is #500 Startup company, time in the market.

Cons: Time to conduct Parse migration and the necessity to change the API.

Backendless

What Is: Is a universal server-side platform used by mobile and desktop developers to build applications.

Main Features: MBaaS, API Engine, Marketplace

Pros: Long time in the market, Online, and Offline version.

Cons: Time to conduct Parse migration and the necessity to change the API.

Parse Server Self-Hosting

The main platforms being used for Parse Server’s self-hosting deployment are AWS, Azure, and Digital Ocean.

Digital Ocean

It is a new cloud hosting provider. Launched in 2011, Digital Ocean focuses only on developers’ needs, unlike Azure or AWS with everything-to-all-people approach. A detailed comparison can be found below.  

Azure x Digital Ocean 

(I) Digital Ocean x AWS  (II) Digital Ocean x AWS

Digital Ocean supports Parse Server, and the following steps are necessary to conduct the migration.

Prerequisites: Ubuntu 14.04 server, Node.js 5.6.x, A domain name pointing at the server and a Parse App to be migrated.

  • Step 1 – Install Let’s Encrypt and Retrieve a Certificate.
  • Step 2 – Configure DB for Migration
  • Step 3 – Migrate Application Data from Parse
  • Step 4 – Install and Configure Parse Server and PM2
  • Step 5 – Install and Configure Nginx
  • Step 6 – Test Parse Server
  • Step 7 – Configure Your App for Parse Server and Finalize Migration

The detailed steps can be found below:

How to migrate Parse Server to Digital Ocean

AWS

Amazon Web Services is a secure cloud services platform, offering compute power, database storage, content delivery, and other functionality to help businesses scale and grow. It has servers all over the world and support since very small applications to huge enterprise projects.  Please see the comparison below.

Digital Ocean x AWS

Azure x AWS 

AWS supports Parse Server, and the following steps are necessary to conduct the migration.

  • Step 1 – Run a Parse Server using AWS Elastic Beanstalk
  • Step 2 – Set up a DB Instance
  • Step 3 – Configure AWS 
  • Step 4 – Check your setup

The entire migration process can be found at:

Parse to AWS

Azure

Microsoft Azure is a growing collection of integrated cloud services—analytics, computing, database, mobile, networking, storage, and web—for moving faster, achieving more, and saving money. It also huge and has servers worldwide. Please see the comparison below:

AWS x Azure

Azure x Digital Ocean 

Azure supports Parse Server, and the following steps are necessary to conduct the migration.

  • Step 1 – Create your Azure subscription
  • Step 2 – Set up a DB
  • Step 3 – Get a GitHub account
  • Step 4 – Create a new backend in App Service
  • Step 5 – Clone the Parse server repo and deploy to Azure
  • Step 6 – Configure the backend
  • Step 7 – Add your Parse cloud code
  • Step 8 – Update the Parse SDK in client apps

The detailed tutorial is shown below.

Parse to Azure

Parse Server – Costs

The cost to host Parse Server depends on the size of your application and if you will use a Parse hosting service or a self-hosting instance.

The cheapest way to move on is to choose a Parse hosting service. Dedicated instances on AWS, Digital Ocean, or Azure will be much more expensive in comparison to the shared instances of Parse hosting providers. See below:

Plan Back4App Nodechef Sashido
Free Plan Yes No No
Start Plan $4.99 $9.00 $4.95

For a complete understanding of how to create a dedicated instance on a self-hosting provider, please read the article below.

https://blog.back4app.com/2016/06/21/parse-aws/

Parse Dashboard

With the shutting down of the Parse hosted service and the transition to the Open Source version you may be questioning how to manage your application when it is running on your server or on a Parse hosting service.  

Parse Hosting Service

The providers will take care of the dashboard for you, and you do not need to worry about it.

Parse Server Self-Hosting

Please check the article below for further information.

http://blog.parse.com/announcements/introducing-the-parse-server-dashboard/

Parse Server Contributors – Developer Community

The main advantage of Parse Server in comparison to Parse is related to the large developer community surrounding it. The product is improved on a daily basis, can be customized and provides much more flexibility in comparison to the web version. The complete list of contributors can be found with the link below:

Parse Contributors

Why did Facebook Shut Down Parse?

There are a lot of theories about it, but most of them are mere speculation and the real reasons are detailed below.

#1 – Acquihire

I don’t think so. It would be the most expensive and longest acquihire in history.

#2 – Facebook Login

I don’t think so, but there is a long discussion on Hacker News about it.  

#3 – Parse was not a profitable business

I don’t think so. Parse was profitable and had reasonable margins for a hosting service.

So, what are the reasons?

#4 – Strategy + Ads + B2C

Facebook´s strategic roadmap changed a lot between 2013 and 2016, and as you can on the image below, Parse was no longer part of it.

At the moment of Parse acquisition, Facebook was not profitable and was not clear how they would make money. This scenario changed, and Facebook is now a money-making machine with its ads business. This business has much higher margins in comparison to the Parse hosting service. So, with this new variable in place these are the 03 main reasons Facebook decided to shut down Parse are: (I) Focus on their core business. There is more money there and no competition. (II) BaaS is a B2B business, and Facebook’s expertise is with B2C customers. (III) Facebook’s strategy changed since 2013.

Focus – Facebook acquired Parse for $ 85M. This is a huge amount, but it represents less than 1% of Facebook´s revenue in 2015. Most of the revenue from Facebook is generated from Ads and focusing engineering effort on this area does make much more sense.

B2B x B2C – Most of the revenue created on the BaaS market comes from companies and not from single developers. Facebook has a very deep knowledge in terms of B2C customer acquisition but has very little expertise with B2B sales. This type of sales is completely different and would demand additional effort and investments to be made by Facebook.

Strategy Change – Parse acquisition made a lot of sense in 2013 for Facebook. Their mobile SDK was never greatly accepted inside the developer community, and Parse could help to solve it. It looks like Facebook´s strategy has changed since 2013, and they are now much more focused on Messenger and moving the Parse team to work on this product.

Another important point emphasized by Sokna Ly – Software Engineer is:

“Parse represents less than 1% of Facebook´s revenue in 2015,” so this is the main reason why Facebook had decided to give up on Parse.”

Please see my Quora article for further reference.

Why is Parse Shutting Down

The blog from Highscalability is also very helpful and provides great info.

What happens after Parse shut down in Jan 2017?

After the complete retirement of Parse, the following event will happen:

  • Hosting Service will no longer work
  • Apps and Databases will no longer be able to be accessed
  • Data will be lost.
  • The Apps still connected to the Parse API will stop working.

So, all applications must migrate prior to Jan 2017. Otherwise, they will simply stop working. It is important also to note the migration process takes some time, and even after the migration, the apps will need to update the SDKs and point it to the new APIs created after the migration.

Parse Server will dominate the BaaS landscape because it´s free, Open Source and has a huge developer community around it. Parse Server will do for APIs just like Git did for source code versioning. Proprietary tools are very hard and expensive to scale, and very few companies can create a large community around it. Parse may be shutting down, but Parse Server is growing bigger than ever. Parse Server technology has 600k developers around it, 11k stars and 3k forks on Github and this community is eager for value-added solutions.


Leave a reply

Your email address will not be published.