Derflow: Distributed Deterministic Dataflow programming for Erlang

Derflow: Distributed Deterministic Dataflow programming for Erlang - Bravo et al. 2014 Today's choice is part of the work of the SyncFree European research project on large-scale computation without synchronisation. Non-determinism makes it very difficult to reason about distributed applications. So Bravo et al. figured life might be easier if we could just make them ... Continue Reading

The Network is Reliable

The Network is Reliable - Bailis and Kingsbury 2014 This must be the easiest paper summary to write of the series so far. The network is reliable? Oh no it isn't... OK, here's a little more detail :) Network reliability matters because it prevents us from having reliable communication, and that in turn makes building ... Continue Reading

Why events are a bad idea

Why events are a bad idea (for high concurrency servers) - von Behren et al. 2003 Amongst the authors of this paper you'll also find Eric Brewer, of CAP-theorem fame. This is part 3 of a mini-series on thread-based vs event-based programming models. In part 1 we saw the argument that they are equivalent. Despite ... Continue Reading

Why threads are a bad idea

Why threads are a bad idea (for most purposes) - Ousterhout 1995 Today is part 2 of 5 in a week dedicated to threads and events. Yesterday we saw the argument from Lauer and Needham that thread-based and event-based models are equivalent (duals). Despite that, Oustehout would have you believe that threads are a bad ... Continue Reading