How-to choose the right backend for your Web App in 2021?

Building a web application in 2021 is difficult – not because it is a rocket science,  but because there are so many options to choose from. 

My favorite ice cream chain Baskin Robin had once tried to stick with only 31 flavors of ice cream, but they had to invent new flavor every month to satisfy the market demand. Similarly, the web app industry keeps inventing different flavor each year to satisfy demand.  Most of the web app ( and ice cream)  flavors are good… except mint flavor – I mean who eats toothpaste for fun?

If you decide to get an ice cream, you have to pick a flavor. Just like that,  if you decide to build a web app, you have to pick a technology.  In 2021, there are few additions and few old strongholds dominating the web app market. In this blog, let us go over few of the choices.

Types of Web App Technologies

Any web application can be thought of Model, View and Controller. Broadly speaking, backend choices can be divided into three major categories. 

  1. Web Frameworks: Manages View, Model, Controller
  2. API Servers or Headless CMS: Manages only Model, Controller.
  3. Cloud Application Platform :   Manages View, Model, Controller available only as cloud SAAS.

These are not hard-and-fast categories – these are for us to understand the market.There may be functional overlaps between three options. For instance, web frameworks can also act as API Servers and some headless CMS are available only as cloud SAAS. It is hard to evaluate which approach is more popular. Each category has its own cult following and fans girls/boys singing its praise.  So let us understand each alternative!

1. Web Frameworks:

This is a more traditional approach to web development – made popular by Ruby on Rails. Web Frameworks are available in almost all the programming languages. Java has Spring Framework, PHP has Laravel framework. For Python,  old-favorites Django and Flask are still going strong.

Traditional Web Framework includes all three components- Model, Controller and Views.

We can’t forget to mention WordPress. Technically, WordPress is a CMS, but it can be repurposed as a web framework. WordPress is moving towards being Web Framework when it introduced WP REST APIs back in 2015. Since WordPress dominates 40% of market share – it is an impactful move.

2. API Servers ( Headless CMS): 

The concept of separating Model and Controller as separate server is as ancient as Rome in web industry. However, the popularity of front-end frameworks such as ReactJS has made that option more popular and desirable. All of the API servers support RESTFul APIs and the latest GraphQL API.  I have restricted this list to Open Source Projects only. I believe community driven open source projects have better chance of success in longer run.

API Servers handles Model and Controllers.

Here are few examples leading the pack: 

  • Apollo Server:  Apollo Server is an open source stand alone GraphQL server. As the name suggests, you need to be a rocket scientist to know how to use Apollo Server ( pun intended). I share similar view of this blogger  – Simple GraphQL Server without Apollo 
  • Strapi: Strapi is not that new  – it just hasn’t gained as much popularity as it deserves. It is simple and extensible. This is an excellent alternative for people looking for a Django alternative in Node.js ecosystem.
  • Appwrite: Open source clone of Firebase.
  • GhostCMS: Another excellent option for Content Creators.  Deep integration into subscription based content and emails.
  • ApiLogicServer is debuted in 2021. ApiLogicServer has added declarative rules – Its logic engine that operates like a spreadsheet. You can declare ‘Rules’ and these rules are enforced at execution time. It claims to boost 40 times increase in productivity.

3. Cloud Application Platform: 

Cloud Application Platform share is growing as rapidly as the entire web industry is growing. In 2021, Firebase is leading the pack in the Cloud Application Platform. 

One key disadvantage of Cloud Application Platform is vendor lock-in. If you develop an application using FireBase, you are locked in to using FireBase. It becomes too expensive to rewrite code for another vendor. Firebase also has its limitations – Read this guy’s experience – Firebase almost ruined my startup.  If you are feeling stuck with Firebase and want to switch, look into Appwrite

Conclusion: 

I hope that you got a taste of backend technology flavors available in market for your unicorn project in 2021. In the long run, any of these choices will be a great fit. Just as a reminder – Facebook in its early days used vanilla PHP and still managed to build a multi-billion company.

Web Development is getting more complex – and here is why.

It matters less which technology you choose, but you execute on your vision. Read my blog about ‘Why ‘Think Outside the Box’ is bad advice’ 

Any of the above mentioned web technology flavors are going to work for your project. Just be sure to avoid the Mint flavor. 

Follow me at twitter @meera_datey – I try my best to make sure my followers avoid mint flavored ice cream!

Leave a Comment

Your email address will not be published. Required fields are marked *