Dev

6 min read

April 17, 2023

Is the backend still a necessity? Do we all need it? What new solutions are there on the market, and what can they bring? What services will require a backend and who can easily live without it? Read the article, and see for yourself.

Is the backend still a necessity?

Do you judge the book by its cover?

First, let’s investigate what the backend really is. Almost all websites and apps are composed of the backend and frontend. To stick with a common metaphor, the frontend will be the cover of the book - user’s interface, design, accessible functions - and the backend will refer to more deep operations, such as the code of an app or a website, data storage, operating architecture, and all those fancy programming processes, that are not visible for the end user. So, can you live without it? Well… Yes. If you want to have a basic landing page or an app that works perfectly without storing information or saving data, then you will be just fine without a backend. In any other case - let’s say an online shop or a mobile game - things get more complicated. Why? The backend allows you to program any special functions that might be crucial for your app or site. It helps to maintain them, keep them updated, and build a consistent product across different platforms - no matter the device or operating system. If your webpage or app holds any user-entered data storage, this will require a backend too. Looking back at the examples mentioned above; it can be a login to an online shop or saving a level in a mobile game. Now, do you get the picture? Let’s look at the most popular approaches that can deliver this role.  

“You can do anything!”

Ever heard that phrase from your PE coach? No worries, you’ll hear it from any backend developer that you’re willing to hire. Typically, you’ll need to have this kind of employee or a backend developers’ team, to implement any of your ideas from scratch. Every feature, functionality, or piece of information that you want to include in your app will be designed and tailored to your needs. Your DevOps will bring your app’s backend to life using programming languages and cloud services for hosting. If it’s a one-time thing, you should consider freelance professionals or a software house that will manage all the updates needed. If you want to scale up your digital products and you consider doing much more of them, then having a team of employees or a backend developer in your company might be more efficient. This approach has its positive sides - everything can be tailor-made - but, as well as its downfalls - it will require some skills and most importantly… a lot of time. If you want to speed up to the last chapter, you should consider BaaS.  

Drop the BaaS.

Ok, so can you code the backend as easily as you make instant ramen? To some point - yes. You can use Backend-as-a-service (BaaS) services that deliver pieces of code, just like ready-to-use ingredients in your 3-minute dish. BaaS services will provide pre-written stacks like real-time databases, social media integrations for sharing or authentications, push notifications, the most popular functionalities, scalable hosting, and cloud storage. Sounds much easier to make and faster to deliver? It is. Will it save you money? It depends. Here, you should project your growth and choose a service that matches it the most. BaaS services are usually very cheap initially, but as you follow the path down the rabbit hole, you can find price lists that are truly scary. But the nightmare begins when such a service announces its shutdown - that’s not just a bad scenario, but something that happened in 2016 when Facebook (now Meta) closed its development tool Parse. Can this happen to your backend engine? Probably not, but you must remember that you are dependent on a third-party company. This means “no say” in many areas, starting with the ownership and ending with an increase in costs - for example. Also, being reliant on predesigned stacks will mean less flexibility and control over your features. You can only modify the code to a given point.

Is it worth it?

Any custom features that are designed from the very beginning will be time-consuming and expensive since you need a professional (or a team!) to deliver such an architecture. When it comes to updates, easy-to-use API, or a fast time-to-market indicator, Backend as a Service prevails over any manually scripted code. That’s why so many companies and designers use BaaS solutions - the same goes for… BaaS providers. You can find Mobile Hub from AWS, Azure mobile app tools by Microsoft, or Cloud Kit delivered by Apple. Although there is plenty of fish in the sea, there is one giant company not listed. Can you see it already? We're missing Google and its Firebase.

It all started in 2014 when Firebase (launched in 2011) was spotted by the G - giant. Firebase was built as a real-time database, but new owners saw something more into it, and soon after developed a fully equipped tool for constructing cross-platform applications. All dreams come true in the realm of Google’s infrastructure, don’t they? Today, using Firebase you may access detailed analytics, hosting, and reporting. Also, it comes with services including Cloud Functions, Cloud Firestore, Cloud Messaging, and Authentications not to mention the core Realtime Database. The list goes on and on. Firebase is developer friendly. The basic storage is free of charge - anyone with basic backend knowledge can have a go at using it. Where’s the catch then, you might ask… Obviously, it’s Android centered and there are limits to the data storage, but the main concern lies in the pre-fixed SDK - it’s not an open source, baby! Imagine a pickup line that is fully scripted. You can’t change a word in it, not even a name or the colors of the poetic scenery. If you are a faithful backend lover, this might not be the best scenario.  

Fluent in communications

To design backend coding poems better, you might investigate solutions that make data operations more efficient and responsive. All pieces of mobile or web applications are connected to the outside world with an API - application programming interfaces - that detail how such communication should look like. API is another chapter in your backend story, that (thanks to Facebook and GraphQL foundation!) can be designed in GraphQL, a query language for efficient requesting & delivering data. It’s an open-source syntax that allows developers to define how your app should require data from a server, and how it shall look in return. Such an exchange of information is consistent throughout environments and platforms, but it’s only a piece of a puzzle needed to create a functional backend.  

Gaining control and flexibility comes with a price. The backend tool Firebase operates on SDKs, that consist of pre-built libraries, that might also provide defined API. If you want the best of both worlds, you have to operate in NoSQL databases, supported by Cloud Firestore. Connecting the custom-made APIs in GraphQL with an All-in-one Firebase BaaS might seem like a great halfway solution, but it also might turn out to be a time-consuming torment.  

Are we there yet?

Backend is a construct that will be hard to avoid if you have ideas larger than a one-pager. You might avoid backend developers using BaaS services, and you might even write your own API learning the open-source GraphQL, but if you want to scale and develop engaging ideas you will need a backbone at some point. Something that holds your code and functions together and can progress with you.  

 

Apps and websites that use the backend are among the most engaging ones. All social platforms are coded with a team of backend developers, which program what you see on the wall. Netflix will remember when you quit watching its new series based on user information stored in the backend structure. If you grab your phone, there will be little to no apps that don’t need a backend - maybe except a weather check or a calculator.  

Backend is a construct that will be hard to avoid if you have a concept that needs to be tailor-made, frequently updated, and hold some kind of user data. Having a backend might take time to build, but it will pay off in the minimum viable product (MVP) stage. You might avoid backend developers by using BaaS services, and you might even write your own API by learning the open-source GraphQL, but if you want to scale and develop engaging ideas you will need a backbone at some point. Something that holds your code and functions together and can progress with you.  

Are you considering building custom software applications?

Do you want to work with a partner that will deliver cost-effectively and on time? Contact Score Digital to find out more about our values and development process.

Created by

Karol Ludwikowski

FULL-STACK SOFTWARE ENGINEER

Read more

Dev
10 min read
September 4, 2023

Can you build a web app in Flutter?

Explore the potential of Flutter for web development: its journey from mobile to web, key benefits, challenges, and how it stands against React and Angular. Discover if Flutter's cross-platform capabilities align with your project needs.

Dev
8 min read
May 29, 2023

React Native Mobile App Development: Pros & Cons

Understand the advantages and disadvantages of using React Native for your mobile app development project. Get insights into how this powerful framework can expedite the development process, reduce costs, improve app quality, and more.

Dev
6 min read
May 22, 2023

Advantages of Node.js for Your Next App

Explore why Node.js is rapidly becoming developers' top choice for app development. Discover its versatility with non-relational databases, an ever-growing developer community, expansive tooling, asynchronous programming prowess, handy pre-built NPM packages, and the ease of using JavaScript for full-stack development.

Dev
10 min read
September 4, 2023

Can you build a web app in Flutter?

Explore the potential of Flutter for web development: its journey from mobile to web, key benefits, challenges, and how it stands against React and Angular. Discover if Flutter's cross-platform capabilities align with your project needs.

Dev
8 min read
May 29, 2023

React Native Mobile App Development: Pros & Cons

Understand the advantages and disadvantages of using React Native for your mobile app development project. Get insights into how this powerful framework can expedite the development process, reduce costs, improve app quality, and more.

Dev
6 min read
May 22, 2023

Advantages of Node.js for Your Next App

Explore why Node.js is rapidly becoming developers' top choice for app development. Discover its versatility with non-relational databases, an ever-growing developer community, expansive tooling, asynchronous programming prowess, handy pre-built NPM packages, and the ease of using JavaScript for full-stack development.

Dev
9 min read
May 15, 2023

Why Node.js Is the Best for Creating Functions in the Cloud?

Discover why Node.js is the ultimate choice for creating cloud functions and leveraging the benefits of serverless computing. Learn about the cost-effectiveness, scalability, and simplified development offered by Node.js in building serverless applications on AWS Lambda, Azure Functions, and Google Cloud Functions. Unleash the potential of serverless computing with Score Digital.