If you’ve been forced to migrate from a Back-end As A Service provider (BaaS) like Parse, or pre-built back-end framework such as Deployd, you’re not alone. One alternative is to create your own API using a back-end programming language and the help of a database management system (DBMS) such as PostgreSQL, MongoDB, or MySQL.
API is an acronym for Application Program Interface.
This isn’t a walk in the park, but you can do it. Modern frameworks such as Rails and Node.js are built just for that, and libraries like Express.js make it damn easy. Services such as Parse may be the easiest to use, but if they go down, you go with them unless you migrate to an alternative. Your back-end/API would be installed on a server provided by your web host. This may be called an ‘instance’, or ‘droplet’ on some hosts. VPS web hosts will usually let you install the software you need (such as Node.js, MySQL Server, etc).
Normally, your back-end/API would query your DBMS for the data required (whether it’s an article for a blog, or a comment on a social network), the DBMS (example: PostgreSQL or MySQL) retrieves that data from the database (DB) and sends it to the API. The API will finally send it to the user (unless the data is meant for internal use).
Your Android, iOS, or Windows app (the front end)/website would send a request (often an HTTP GET or POST request) to your back-end, and display whatever the back end sends it in return.
Example HTTP GET Request (the direction of data flow, assuming you want to retrieve data from the DB): Mobile App/Website Send GET request to the API > The API parses/checks it and sends it or an appropriate query to the DBMS > The DBMS retrieves it from the database and send it to the API. The API then sends it back to the user.
Example HTTP POST Request (assuming you want to save data to the DB): Mobile App/Website Sends POST request to the API > The API Parses/Checks It And Sends it to the DBMS > The DBMS writes it to the DB.
Simplified: App/Web Page > API > DMBS > DB.
To migrate from a BaaS like Parse or Deployd, you’ll need to choose a web host, DBMS, and a back-end language/framework.
Popular Languages/Frameworks Used For Back-End Development
- Ruby On Rails.
- Python.
- Java.
- Node.js.
- PHP.
- Perl.
Popular Free Database Management Systems (DBMS)
- PostgreSQL.
- MySQL.
- MongoDB.
- Cassandra.
Popular Web Hosts You Can Install Your Back-End On
- DigitalOcean.
- Amazon Web Services (AWS) Elastic Compute Cloud (EC2).
- Linode.