In the last post, I wrote about the advantages of Firebase backend. Today, I want to share with you some disadvantages of this technology.
Firebase is not open source. When you decide to Firebase, you will get a lot of things running out of the box but… everything is inside Google Cloud. It is not a bad technology but after a few months, you cannot change much in the code because each part of your code is connected to Google.
Another problem is the NoSQL database. When you use a standard backend stack, you can choose between the NoSQL database and the SQL database. You can mix it. Firebase gives you no choice. You need to forget about relative database or database normalization. Your data will be duplicated and it is normal for NoSQL database: https://www.youtube.com/watch?v=vKqXSZLLnHA
Firebase is not free. You need to pay for this technology. Please be careful and check the firebase pricing https://firebase.google.com/pricing. You might need to rewrite some parts of code in order to avoid a huge bill: https://medium.com/madhash/how-not-to-get-a-30k-bill-from-firebase-37a6cb3abaca
You need to learn a lot of implementing details like rules, storage, cloud functions. These technologies are used only in the Firebase Ecosystem. They are nice, well-documented but useless outside of Firebase.
Firebase has a lot of advantages and some disadvantages. Maybe Firebase is not the best choice for each project but IMHO you need to check this ecosystem and create your own opinion about it.
https://firebase.google.com/ – the official website
https://github.com/angular/angularfire – The official Angular library for Firebase.
https://www.youtube.com/user/Firebase – firebase youtube channel