Live data from Hacker News

Show HN: Simperium, a realtime data layer

simperium.com

71–80 of 90 posts

Re: Show HN: Simperium, a realtime data layer

#71
One thing that came up in the discussion about some other related offerings (such as Firebase) is the question: "what is your durability story"? When I'm spending the time to store things for my company, I make certain to ask such questions as "is this data important enough to keep on multiple servers, or is having a backup sufficient".

When storing data in services provided and managed by other companies, it becomes more difficult to be certain that the risk tradeoffs are reasonable, as I'm in essence trusting that you aren't just storing the data on a single server in RAM on memcache or something ;P. Some more details would thereby be much appreciated.

(I understand, btw, that I can also have a server keeping a mirror of all of my data, which is definitely awesome, but I also would then want to get a better understanding of whether I would be a fool not to be doing that, or whether I can feel comfortable with having data stored on your servers ;P.)

Re: Show HN: Simperium, a realtime data layer

#72

This is interesting. We built something very much like this internally at SeatMe. On the iOS side, it's almost identical. It's how we keep our iPads up to date. Might not of built something internally ourselves a year ago if there was a platform like this. The biggest difference is that since we are not a general platform, we can make assumptions about the model and how version each release and we can built in some c…

Any argument against using CocoaPods for managing ASIHTTPRequest, Socket.IO, etc.?

Renaming seems like an ugly solution.

Re: Show HN: Simperium, a realtime data layer

#73
post #69

Mildly depressing that this is all proprietary. I'd much much rather use something that's a hybrid of CouchDB and Unhosted... It's definitely the future to build syncing as the core operation though.

I'm working on something similar that I want to open source. Is anyone else interested in building an open source platform to do this sort of thing?

Re: Show HN: Simperium, a realtime data layer

#74
post #27

Earlier quoted context omitted.

MAU doesn't seem like a good model to me; it's not very well connected to your costs or customers' usage so it creates weird incentives on both sides. And it makes it expensive for an existing product with a large userbase to try out a small simperium-based feature. You guys are a hosting/infrastructure service, and it's probably for good reason that such services have historically charged based on usage. For you tha…

I'll second this. It makes you more comfortable as a user to know that if the incentives aren't misaligned your pricing will be more stable and easier for you to build a business on. I think its no surprise that AWS can keep making its services cheaper and App Engine had to change its pricing model entirely.

What were the misaligned incentives in the GAE model?

Re: Show HN: Simperium, a realtime data layer

#75
Guys congrats on the launch! I was wondering what was taking you so long ;) Very exciting stuff!

I'm amazed that we're on the same wavelength - we've had to build very similar infrastructure for ourselves for Unipost (www.post.fm). Can't believe we didn't collaborate on this, we'd happily be your first customer :(

A few interesting differences:

- Our approach is more like Meteor - web only, no iOS support

- The backend is a python tornado app that handles validation and conflict resolution before saving stuff to dynamodb

- We have a JS datastore backed by websql/indexeddb/memory that syncs with our backend datastore

- We have "live" Backbone collections that update themselves when datastore queries return different results

- We have a Backbone sync adapter that uses the datastore to persist data locally and kick off synchronization

- We sync a subset of the data (eg 3 months of mail) - thats a core requirement for us

- We sync all of the tables at once, not per bucket, cause queries are joining tables so the datastore has to be consistent at all times

- No operational transforms cause it doesn't seem to apply to us - pretty "notepad" specific I think

- No versioning as we didn't see benefits for us

- We'll probably open source this stuff when we're done

What do you use for storage?

Re: Show HN: Simperium, a realtime data layer

#76
I've been a SimpleNote user for a while, great to see the platform layer finally coming out.

I have a few questions:

- As a potential customer, I'm curious as to how sustainable is the company. I understand there was a YC seed investment in '10, but is the company well funded for the next couple of years at least?

- The platform seems to be ahead of Meteor, Firebase, etc, in that it already seems to have implemented a basic login and security model based on expiring tokens, but from the docs it seems like "finer grained control of these permissions are under development". Does this mean that presently any user can erase/modify data from any bucket, such as global data, data from other users, etc? If so, that's a big deterred for me.

- Are there any plans to allow querying the data? Key-value stores are fine for simple games, to-do lists, etc, but for any non-trivial app querying arbitrary fields is a basic requirement.

Thanks again, those are some great strides in the right direction.

Re: Show HN: Simperium, a realtime data layer

#77

Guys congrats on the launch! I was wondering what was taking you so long ;) Very exciting stuff! I'm amazed that we're on the same wavelength - we've had to build very similar infrastructure for ourselves for Unipost (www.post.fm). Can't believe we didn't collaborate on this, we'd happily be your first customer :( A few interesting differences: - Our approach is more like Meteor - web only, no iOS support - The backe…

Another interesting approach is:

- CouchDB

- PouchDB: https://github.com/daleharvey/pouchdb

- Backbone PouchDB Adapter: https://github.com/jo/backbone-pouchdb

But the Map-Reduce paradigm didn't seem to fit well onto our data model.

Re: Show HN: Simperium, a realtime data layer

#78

Guys congrats on the launch! I was wondering what was taking you so long ;) Very exciting stuff! I'm amazed that we're on the same wavelength - we've had to build very similar infrastructure for ourselves for Unipost (www.post.fm). Can't believe we didn't collaborate on this, we'd happily be your first customer :( A few interesting differences: - Our approach is more like Meteor - web only, no iOS support - The backe…

"I'm amazed that we're on the same wavelength - we've had to build very similar infrastructure for ourselves"

Right, we hear that quite a bit. A few comments:

- Here's our Backbone sync adapter: https://github.com/Simperium/simperium/blob/master/javascrip...

- Dealing with subsets is a priority for us

- OT and versioning are generally helpful for managing changes/deltas

- We're using MongoDB for storage

Re: Show HN: Simperium, a realtime data layer

#79

Guys congrats on the launch! I was wondering what was taking you so long ;) Very exciting stuff! I'm amazed that we're on the same wavelength - we've had to build very similar infrastructure for ourselves for Unipost (www.post.fm). Can't believe we didn't collaborate on this, we'd happily be your first customer :( A few interesting differences: - Our approach is more like Meteor - web only, no iOS support - The backe…

Another interesting approach is: - CouchDB - PouchDB: https://github.com/daleharvey/pouchdb - Backbone PouchDB Adapter: https://github.com/jo/backbone-pouchdb But the Map-Reduce paradigm didn't seem to fit well onto our data model.

Our goal on the client-side (compared to CouchDB) was simpler, more lightweight libraries that work well with existing tools that developers already use, like Core Data on iOS and sqlite/ContentProviders on Android.

Whereas CouchDB does master-master replication among instances of itself, Simperium can accomplish something similar with any database: e.g. sqlite on iOS, to MongoDB in our backend, and to whatever database you use in your own backend.

Re: Show HN: Simperium, a realtime data layer

#80

I've been a SimpleNote user for a while, great to see the platform layer finally coming out. I have a few questions: - As a potential customer, I'm curious as to how sustainable is the company. I understand there was a YC seed investment in '10, but is the company well funded for the next couple of years at least? - The platform seems to be ahead of Meteor, Firebase, etc, in that it already seems to have implemented…

By "finer grained control" we mean control over expirations and read/write permissions for a particular token. It's definitely not possible to erase/modify data from other users.

An example of where read-only permissions are useful is the live dashboard you see at simperium.com after you sign in. The "number of syncs" and alerts at the top are all pulled live from Simperium, but the token used on that page is a read-only token. We just need to expose the ability to create these read-only tokens to developers.

Actually, as a Simplenote user, you might be interested to know that our alerts and blog posts are pulled from Simplenote via Simperium. When we tag a note as "Alert" or "Published" it instantly appears on the dashboard.

Regarding querying, we're working on something for apps that can't or don't want to keep all data locally. In the meantime you can locally query however you'd like in your database of choice.

Post reply on HN