Live data from Hacker News

Show HN: Firebase, a scalable real-time backend

firebase.com

71–80 of 148 posts

Re: Show HN: Firebase, a scalable real-time backend

#71
post #4

I used Firebase to build thereelbox.com, and enjoyed it thoroughly. It took 2-3 hours from starting into the documentation to completed/nobugs/pushed to production. Credit for that speed goes entirely to Firebase. TheReelBox uses Firebase as a sort of API caching layer. This protects against rate limiting on the Rotten Tomatoes API, decreases request time by caching queries to the Fandango-via-YQL API, and eliminates…

Just out of curiosity. Are you aware that all your data is fully editable through the admin panel? Or is it just a toy project and it doesn't really matter?

Re: Show HN: Firebase, a scalable real-time backend

#72
post #71
post #4

I used Firebase to build thereelbox.com, and enjoyed it thoroughly. It took 2-3 hours from starting into the documentation to completed/nobugs/pushed to production. Credit for that speed goes entirely to Firebase. TheReelBox uses Firebase as a sort of API caching layer. This protects against rate limiting on the Rotten Tomatoes API, decreases request time by caching queries to the Fandango-via-YQL API, and eliminates…

Just out of curiosity. Are you aware that all your data is fully editable through the admin panel? Or is it just a toy project and it doesn't really matter?

yes, side project. my real focus is http://segment.io

Re: Show HN: Firebase, a scalable real-time backend

#73
post #4

I used Firebase to build thereelbox.com, and enjoyed it thoroughly. It took 2-3 hours from starting into the documentation to completed/nobugs/pushed to production. Credit for that speed goes entirely to Firebase. TheReelBox uses Firebase as a sort of API caching layer. This protects against rate limiting on the Rotten Tomatoes API, decreases request time by caching queries to the Fandango-via-YQL API, and eliminates…

Wow !! As a movie buff myself I think I'll be vising you site almost everyday now. This is what I used to do before: - Go to www.imdb.com - Click on 'See more movie showtimes' at the right. - On the next page, click on the 'Favorites' tab to choose a theater. - Go to maps.google.com and plan the route to the theater. This is definitely going to save me at least a few hours every week while I check which movie is play…

Your comment makes me very happy, please enjoy!

Re: Show HN: Firebase, a scalable real-time backend

#74
post #70

Here's my big concern: If my entire app is client-based JavaScript, wouldn't that make cloning my app as simple as copying all of the JavaScript and other asset files and then associating them with another firebase account -- perhaps modifying them some so they dont't get banned? It seems like it lowers the barrier to competition a bit too much for me.

You could say that just about any software development platform. If it makes building software easier, it makes competition easier. And if building apps is easier, it really doesn't matter what stack your app uses - it's going to get easier to "clone", so you may as well use whatever platform gives you the best results.

Other than that, you could either make your business, rather than your technology, more competitive, or make your technology ever more sophisticated than what "commodity" development tools allow.

Re: Show HN: Firebase, a scalable real-time backend

#75

Another great step in the right direction. That being said, I do believe the hardest part of all these attempts to abstract backends is authentication and security models. It seems to me that most of these services launch before figuring out that critical part of the puzzle.

Meteor dev here. You're absolutely right that authentication is one of the hardest parts. What's happening is that the web is moving from a model analogous to mainframes and dumb terminals (where there is a central authority directly driving everyone's screens), to a distributed model where there are a lot of different actors, with different levels of trust for each other.

Figuring this stuff out is hard. Usually for questions that come up in this shift, we have a good model we can look at, which is the client/server desktop applications of the late 80s and early 90s. But in the case of authentication and security, they tell us not so much, because in those days most software lived inside private corporate silos. These days, our software not just technologically distributed, it's politically distributed.

In the case of Meteor, it's designed from the ground up for security. In fact, it's a second generation security model, designed after reflecting on lessons learned from Asana's Luna platform (I worked on Luna at Asana for a while in 2010.) It just isn't exposed in a user-friendly way in the Tuesday release.

But people dug into the code, found it, and are using it anyway, whether we like it or not. Briefly, 'meteor remove autopublish', use Meteor.publish to define what data clients can access, use Meteor.subscribe to control what data a particular client is getting, use Meteor.methods to define what writes clients can do, and see the following Stack Overflow question to disable the 'newbie mode' insert()/update()/remove() that let you do arbitrary writes to the database.

http://stackoverflow.com/questions/10115042/how-do-you-secur...

Re: Show HN: Firebase, a scalable real-time backend

#76
post #6

This is cool. But can someone explain how data is secured in Firebase or Meteor? From the Leader Board sample: // Use setWithPriority to put the name / score in Firebase, and set the priority to be the score. userScoreRef.setWithPriority({ name:name, score:newScore }, newScore); How about I just change newScore to 100,000 in the debug window?

Hey Ian, Meteor dev here. I posted a comment earlier in this thread about how data is secured in Meteor:

http://news.ycombinator.com/item?id=3834211

Re: Show HN: Firebase, a scalable real-time backend

#77
post #3

Wow, im excited what people are doing out of this (especially in combination with other new tools like Meteor). Seems there is a huge development ongoing to reflect new development and scaling practices... EDIT: REALLY like the RT-Chat on the site - that is showcasing as it should be (and not just another "Demo" button).

Everyone has been building their own real-time solutions for the past few years and re-inventing the wheel over and over again. We saw ourselves doing it too, so we thought maybe we should do something about it! We think Meteor is really exciting as well, and should enable faster / better development of the types of apps that Firebase powers.

Meteor dev here. We're really excited about Firebase -- the time has come for realtime databases. Every Meteor app needs one.

Re: Show HN: Firebase, a scalable real-time backend

#78
post #72
post #71

Earlier quoted context omitted.

Just out of curiosity. Are you aware that all your data is fully editable through the admin panel? Or is it just a toy project and it doesn't really matter?

yes, side project. my real focus is http://segment.io

Still though, somebody could delete all the movies and showtimes in a couple of clicks. I presume you have the JSON backed up but it's still going to get annoying if somebody decides they want to be a dick.

Re: Show HN: Firebase, a scalable real-time backend

#79

Earlier quoted context omitted.

We're using authentication in our Firebase app and it works wonderfully. Although all data is visible on the Firebase backend, we simply put pointer ids in Firebase, so no identifying data is publicly visible.

What level of control do you have for authentication? I didn't see much info on this on the website.

Write control was most important for us; all the readable data are simply id's to our internal DB

Re: Show HN: Firebase, a scalable real-time backend

#80
post #9

Can't people find an alternative to the word "real-time" that hasn't already been used for 30 years to mean something entirely different? (As in, real-time systems, real-time operating systems, etc.) I'm not trying to put down Firebase, I imagine it's great.

Meteor dev here. I share your frustration. It's tough to find words to explain these systems that most people will understand. We managed to keep "realtime" off of the meteor.com page :) but we let it slip into the HN story title. That's because some smart people told us that readers scan HN headlines for keywords, and that "realtime" was the word that they were mostly likely to pick up on. I hope that soon we have an appropriate set of words for these new systems.

Interestingly, most of the core Meteor team has worked on systems that you might consider "actually" realtime: I wrote machine vision software that watches a few dozen cameras and tracks objects moving between them, Nick wrote software defined radio code that runs inside rural cell towers, Matt wrote kernel drivers for high performance IO interconnects.

Post reply on HN