Hacker News new | past | comments | ask | show | jobs | submit login

We're one of the startups shown in the announcement (Crypto Portfolio Tracker [1] - bottom right logo). Firestore enabled us to build the first version of our app in under a week. We've been using the product for over two months now, and it's given us a competitive edge in being able to develop features rapidly and not having to spend time on operations.

One of the things we liked about Firestore is that it takes the best practices of Realtime Database and makes them more explicit. Before, your RD database structure would look like `collection/{id}` and `collection_sub_collection/{id}/{sub_id}` in order to avoid loading sub-collections in top-level queries. With Firestore, this collections pattern is now part of the API itself, and sub-collections aren't fetched when the parent is fetched.

Another feature we liked is that transactions are no longer limited to a subtree of your database. Before, you would have to structure all of your transactional data under a single path. This would sometimes lead to having to pile-in unrelated data into a single object, such as adding payment data under a users object instead of a separate collection, so that you could atomically modify both user and payment data. With Firestore, transactions are global, so this isn't a concern anymore - we are free to structure our data in any way that makes sense for our app.

Overall, we had a great experience with Firestore during the alpha, and we'll definitely be keeping it as part of our technology stack. Congrats on the launch!

(disclaimer: this post isn't sponsored by Firebase)

[1] https://cryptoportfoliotracker.com




Is your use of Firebase limited to Firestore? If not, Does Crypto Portfolio runs entirely in Firebase?


We run entirely on Firebase with Auth, Storage, Hosting, Firestore, and Cloud Functions. As a result, we actually don't have any backend to manage.


Do you think that the time-to-market advantage that using Firebase offers you justifies the (presumably) increased cost when compared to the cost of managing your own infrastructure?


Yes, as a data point, the other tracker apps are only now beginning to add exchange API integration, while we were able to develop and launch this feature over a month ago.

While I like self hosting (was previously a RethinkDB user), from a business perspective, it doesn’t make sense to spend time on operations if it doesn’t give you a competitive advantage. It’s going to be very difficult to outpace a business that only has to focus on development versus one that has to do development and operations.


Can you give a rough estimate on the cost you pay based on the amount of traffic you get to this app? I'm considering using Firestore for my next project but I'd love to hear from your perspective if the cost outweighs the alternative of rolling your own backend.


The cost is actually less than what we would be paying if we rented dedicated servers. I think the reputation for clouds being expensive comes from people running compute instances 24/7. However, you don't run any compute instances on Firebase. You only pay for operations (read, write, function executions, etc.), and if you structure your app to avoid operations (i.e. through caching), you end up paying very little.


Out of curiosity, do you use any type of framework for the frontend?


React is used on the frontend. It maps very well to Firestore - each component listens to one document.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: