Hacker News new | past | comments | ask | show | jobs | submit | reiddraper's comments login

Are the release dates for Kickstarter backers changing at all?


If they do, they'll be getting better, not worse.


Well do not even think of the term 'delay' or 'slip in schedule'. You have beaten up enough hype to keep people on toes expecting this thing to come out.

In fact it will be very interesting if we see commit logs on something like Github. A lot of people follow a certain project(s) which they like.

That may also help you test and flush out bugs as needed while soliciting feedback.

All the best and expecting to see a solid product out!


Great. Thanks for the transparency.


There are a several ways to approach this. The simplest is to just take last-write-wins, which is the only option some distributed databases give you. For cases where this isn't ideal, you resolve write-conflicts in a couple ways.

One way is to write domain-specific logic that knows how to resolve your values. For example, your models might have some state that only happen-after another state, so conflicts of this nature resolve to the 'later' state.

Another approach is to use data-structures or a library designed for this, like CRDTs. Some resources below:

A comprehensive study of Convergent and Commutative Replicated Data Types http://hal.archives-ouvertes.fr/inria-00555588/

https://github.com/reiddraper/knockbox https://github.com/aphyr/meangirls https://github.com/ericmoritz/crdt https://github.com/mochi/statebox


Are there any connector libs that provide "simple" last-write-wins out of the box?


Simple last-write-wins can be configured per-bucket, so client libs can be naïve: http://wiki.basho.com/HTTP-Set-Bucket-Properties.html


It's not hard. def merge(siblings) { sort_by(siblings) { |s| s.timestamp } }.last

Or, in Knockbox/Meangirls, strategies like LWW-set.

Until your clocks get out of sync.


Yep


The replication in the Enterprise version is replication between entirely different clusters. The ring replication you talk about is definitely open source.


Another thought. If availability is your goal, with the trend toward 'operations as code', I think a small development team can build a system on top of AWS that can automatically respond to arbitrary node/resource/data-center failure. Netflix seems to do this to an extent, with their Chaos Monkey.

That being said, there are situations where you may truly need single-node performance that isn't available on AWS.


Chaos Monkey causes chaos, it does not fix it. :)

But yes, you are right. The goal is to have a system that scales itself. Not an easy task for sure.


Actually, that's not what he said. Here's the full quote: "I’m at the end of the first chapter that explains how Erlang’s concurrency features work"

A quick look shows that it's the sixth chapter. Either way, he's clear about this disclaimer, and his post was enough to peak my interest in this specific book.

For you, first impressions _do_ seem to mean much.


That was also the first chapter in the book where suddenly Erlang seemed freaking amazing. Up until then, it was just a functional language with an odd syntax. After the introduction to message passing and concurrency, I was in love.


Can you link to the Facebook developer docs for this? I've been playing with their api and haven't seen anything like this, just getting name and uid of friends. Not saying your wrong, just curious.


pypy and pypi, it took me the longest time to remember which is which


solr


push -f is what I use, "force" makes it sound more sinister than it is.


push -f is the thing. Requiring -f just makes you think twice before accidentally exposing the rest of the world to your changes without merging them.


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

Search: