7
21 Comments

Reviews of Firebase? Is it a reasonable development platform?

I’m at the point where have I enough ideas that I want to try to minimize the amount of time I spend configuring DBs, writing up all the authentication code, setting up permissions, etc. Firebase seems to handle a lot of this, and it seems a better option compared to stuff like AWS Cognito. Does anyone recommend the service? Does it end up being extremely pricey? I’d like to have a better idea of what the development experience is like before spending time programming.

Thanks homies!

posted to Icon for group Developers
Developers
on December 14, 2019
  1. 4

    I use it purely for authentication.
    Pretty sure mr. @channingallen uses it for indiehackers.com too (not sure to what extent)

    In the past I've tried to skip over the db stuff by finding a quick and dirty solution (parse, firebase, etc.). Some of these are very powerful but typically require a solid amount of time to really learn too and find myself developing slower than if I were to have just used something like Postgres.

    All of the mainstream cloud services (DO, Azure, AWS, etc.) offer fully managed db solutions too so there isn't much configuration necessary anyways. You usually just need to open up a firewall to your api server and it's good to go.

    Just some things to think about.

  2. 3

    Vendor lock-in is a general concern, but the rest really depends on the kind of business you run. Are you B2B or B2C? What do you think a typical customer will be worth? What percentage of user accounts will be paying customers?

    1. 1

      I can’t answer those questions yet, but assuming I did have numbers in my head for those things, how would I use them to determine if Firebase would be a reasonable development platform?

      1. 1

        If your app is paid-only or B2B, it's probably fine. If you're making something freemium or especially something ad-supported, you're probably going to regret tying Firebase into the core of your app.

        I know Cortland has mentioned it as being a cause of some of IH's various extreme performance problems (and other UX issues over the years).

  3. 2

    I believe the two big considerations with Firebase are vendor lock-in (many don't see this as an issue, so you'll have to judge yourself) and potential cost if you scale quickly. Other than that, Firebase is fairly pleasant to work with.

  4. 1

    i honestly saying that its a nice platform but i also tried to get reviews from here but it did not work as well for me as i expected from it you can see here https://outdoortrends.net/

  5. 1

    You can put me down in the pro-Firebase camp. I have built on AWS Cognito--I prefer Firebase auth. If you use Angular, it's really hard for me to find something cleaner than Angular/angularfire/Firebase.

    Beyond auth, hosting is great. If you have a SPA or other static site, it's free, easy, and hosting/ssl is done in a single command. Firestore is great--sure, there are query issues. However, cloud functions can solve that querying issue. We use the functions on a high-volume IoT project to consolidate documents from various collections into a single document that represents the view with angularfire handling that observable.

    I guess I left out storage and a host of other features, but those are probably my big four.

    For $$$, that IoT project has a series of different sensor arrays each posting 864x's per day. Cloud functions are executing on many of those db writes to render that view but any individual device is still running under $0.25-0.50/month inclusive of some overhead that is tied into some datastudio/bigquery costs that probably aren't fair to call "device costs."

    Dunno, YMMV, but it works for me.

  6. 1

    I thoroughly recommend Firebase. Even though we don't use it very efficiently at PixxiBook it's still good value given that it provides all of the fundamental services and it allows me to focus on the core product. You only need to be careful with the DB - you need to structure it carefully for your use case and keep in mind that it's not good with queries!

  7. 1

    I generally like it, been using it for a few years.
    Take care in how you use it, or it could end up very expensive.
    APIs have been changing on a regular basis, at-least in the beginning, meaning that you might have to revisit some of your code else it could break.

    So, for trying out projects it's great, but for enterprise there are other options.

  8. 1

    We use it for Wise Notifications. I am happy with it. The Firestone is a little bit of a challenge to optimize, i.e. you need to consider cost while creating your schema.

    I recommend it.

  9. 1

    I build my current startup website with a Laravel backend hosted on digital ocean and managed the provision/deploy by using Forge. After a while, I started migrating everything to Firebase. Here's why:

    • a server and all related service around it could be expensive
    • a backend, especially in a different language than frontend, requires time (features and framework updates)

    Both the points are not the best to have if you lack resources and you need to have something working asap.

    Today I'm finalizing the migration from laravel to firebase and I'm happy with this choice. Still a bit scared by the vendor lock-in, but Firebase looks reliable and I will bring my fixed tech expenses around 0 for my current traffic.

    1. 1

      What are you using for back-end now? Cloud Function?

      1. 1

        yes, everything is on cloud functions (based on documents, http and crons).

        1. 1

          Have you messed with pubsub at all as an alternative to http? Same thing, can still be triggered from the cloud scheduler.

          1. 1

            nope, I actually don't know anything about it. I currently use http as plan B when by auth rules don't allow the sdk to write to the database directly. What's pubsub useful for?

            1. 2

              Happy New Year. Sorry, a little late to the party on the reply...

              I guess two parts.

              When I need to do direct writes and clean up to the database, I'll also use the python SDK and a local jupyter notebook. That one is pretty easy--basically just create a set of credentials in the cloud and then you can locally update any collection, etc. It's also convenient for one-offing a query, but then you have all the panda and dataframe toys at your disposal for visualization and calculation.

              Pubsub is quite similar to what you can do with an http function--just a different trigger, but it's inherently secure or hidden within the platform. So I have some functions that we run to do aggregation and generate uptime data for my IoT solution. While unlikely, it would be a billing nightmare if somehow that http endpoint got hit repeatedly or otherwise exposed.

              With pubsub, I set a task in the cloud scheduler to publish to a topic like "runUptime," and then have another function that is subscribed to that topic and does whatever I need. You could also run those functions from the gcloud CLI, but the main thing is that the auth is all sorted out.

  10. 1

    We use auth; functions; rtdb; as well as storage for our GSheet addon. It’s very convenient to use. Pretty reliable and extremely cheap if your user base is a few thousands. I really recommend it.

  11. 1

    I think it's a great solution. I'm using it for https://turn-up.tech. And it handles real time data updates magically. It's perfect if you want to bootstrap your product as fast as possible. There is a few querying limitations indeed but it's not a blocking factor you just need sometimes to pre-process data front-end side. To consider : AWS Amplify offers the same idea : "Focus on the front-end development and plug cloud services easily".

  12. 1

    All depends on what you need to build but I've used it for 2 mobile apps and a slack bot and love it for building fast. Like someone else mentioned, theres a few querying limitations (for example you cant do queries like "Where not in [...]" at the moment) but for basic use cases it works well. I'd do a quick spike to weigh up if it can cover what you need though

  13. 1

    I'm using it for a fairly long time, and I'm ok with it. As all of the PaaS out there, there are limitations you should be aware of, especially when it comes to query capabilities of the firestore. While the platform works well for web-only, it is even better if you are developing mobile applications because of a lot of extra services focusing on mobile. Speaking of vendor-lock-in, I successfully migrated a mid-size application to Postgres without too much of the hassle when we needed much more query power than scale. I would recommend https://fireship.io - especially if you use Angular 2+ - to learn about the firebase ecosystem. The largest bill I ever paid for our mostly B2B sites was a few USD per month.

  14. 1

    This comment was deleted 5 years ago.

    1. 1

      "For most cases, SQL solutions are just better."

      That's a tough claim to back up. I'll give you "some cases." It depends, heavily, on what the case in question is.

Trending on Indie Hackers
I'm a lawyer who launched an AI contract tool on Product Hunt today — here's what building it as a non-technical founder actually felt like User Avatar 152 comments Never hire an SEO Agency for your Saas Startup User Avatar 92 comments A simple way to keep AI automations from making bad decisions User Avatar 66 comments “This contract looked normal - but could cost millions” User Avatar 54 comments 👉 The most expensive contract mistakes don’t feel risky User Avatar 41 comments Are indie makers actually bad customers? User Avatar 36 comments