There are a few things which make Firebase unusable:

1) It's not cold start times but any start time, for some reason getting auth state is ASYNC and takes up 3 seconds on app load - you can't really render content and then flip it/redirect after, you have to wait. That also breaks SEO on public pages (e.g. if your home page flips between a marketing page or a dashboard depending on auth state).

2) The time to make the first simplest possible firestore query is also up to 3 seconds. All in all these two wait times will often add up to 4 seconds+ before the user sees anything meaningful. Unacceptable.

3) Unlike e.g. AWS Cognito you can't associate any data with a user, you have to create your own user table - this means half of signing a user up can be successful and half can fail - leaving you in a nightmarish situation of a non-atomic sign up process you have to try and unwind, or loose a customer. Or pretend the 2 step process is going to work every time. Linking accounts together is also a nightmare of multiple async calls that are poorly documented.

4) There is no fuzzy search, even a different casing will not work. You can duplicate fields into lower case and search for the start of strings but this isn't going to cut it in many instances (AWS Amplify integrates Elastic Search for example).

So right from the get go it's already a failed product. Which is a shame as the UX is awesome and the best around (AWS pales in comparison to Google's ability to make things pleasant to use).

I make UIs and such. Using JS mostly but I like to dabble.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store