
Readings in distributed systems - cmeiklejohn
http://christophermeiklejohn.com/distributed/systems/2013/07/12/readings-in-distributed-systems.html
======
capkutay
These are the type of posts I come to hacker news for (sorry meteor
evangelists and NSA watchdogs).

I'd also like to recommend the Spark Streaming Paper[0] for people interested
in real-time distributed architectures.

0:
[http://www.cs.berkeley.edu/~matei/papers/2012/hotcloud_spark...](http://www.cs.berkeley.edu/~matei/papers/2012/hotcloud_spark_streaming.pdf)

------
agentultra
A pretty good text to have around is _Distributed Systems Concepts and Design_
[1]

[1] [http://www.amazon.com/Distributed-Systems-Concepts-Design-
Ed...](http://www.amazon.com/Distributed-Systems-Concepts-Design-
Edition/dp/0132143011/ref=sr_1_1?ie=UTF8&qid=1383251499&sr=8-1&keywords=distributed+systems+concepts+and+design)

~~~
cmeiklejohn
Pull requests welcome. :)

------
jnazario
great list, and thank you!

how would you recommend printing these out and binding them for my own
personal copy in dead tree form? i ask because i like having these sorts of
things on the shelf for reading and referencing, and taking notes in. i also
want to do this with the "Great Works in Programming Languages" [1]. i've been
wondering if something like Kinkos' "Book Binding" [2] would be usful here,
but then i worry about the fact that they may not print it for me because the
papers are copyright someone else.

thoughts? suggestions?

1\.
[http://www.cis.upenn.edu/~bcpierce/courses/670Fall04/GreatWo...](http://www.cis.upenn.edu/~bcpierce/courses/670Fall04/GreatWorksInPL.shtml)

2\. [http://www.fedex.com/us/office/binding-finishing-
laminating....](http://www.fedex.com/us/office/binding-finishing-
laminating.html)

~~~
tubbzor
I'm not sure if this helps, but I worked for a summer in a UPS store a couple
years back and I'm sure you'd be fine printing it either at UPS or fedex.
People came in with papers/books/posters ect to be printed often and looking
at copyright was never part of any check for using the company printers. Just
throw it on a USB drive and they'll bring it to the store computer and print
it for you, no questions asked.

Also, most UPS stores are equipped do this "book binding", so I'd shop for the
cheapest "per page" price you can find at either store.

~~~
jnazario
thanks, great to know!

------
feistyio
You might also like the "Think Distributed" podcast:

[http://thinkdistributed.io](http://thinkdistributed.io)

------
evgen
The languages section seems a bit trendy and misses a lot of old-school work
that predates the popularity of the m/r paradigm. I would suggest additions
like Linda and tuple spaces and Hoare's csp paper (also somewhat trendy at the
moment but still old-school.)

------
jamoes
It's interesting how many problems the blockchain data structure solves for
distributed systems.

Bitcoin uses (and invented) the blockchain as a way to solve the double-spend
problem of distributed e-cash systems. But the fact that the blockchain solves
the consensus problem without any trust makes it a compelling data structure
for many other use-cases as well.

Even if bitcoin fails as a currency, academics will be referencing Satoshi
Nakamoto's paper [1] for a long time to come.

[1] [http://bitcoin.org/bitcoin.pdf](http://bitcoin.org/bitcoin.pdf)

------
deleted_account
Michael Bernstein had a great talk on Distributed Systems Archaeology at RICON
West yesterday. Video coming soon, but here are the notes:

[https://speakerdeck.com/mrb/distributed-systems-
archaeology](https://speakerdeck.com/mrb/distributed-systems-archaeology)

------
numbers
This is great but does anyone have recommendations on getting started in
distributed systems? I'm a lowly web developer and would like to get into this
more.

~~~
biscarch
Personally I started investigating and using a production system[1] which
introduced a bunch of basic concepts and I read a few papers such as the
Dynamo paper[2]. Then I went deeper into riak_core[3] and Erlang/OTP. At this
point I have a context in which to read and understand more papers (such as
those OP linked) and I've studied concepts such as Eventual Consistency,
Vector Clocks, Map Reduce, Gossip Protocols, etc.

I'm not an expert by any means but I found this route to be a fun one and the
riak/erlang related irc channels are awesome (and helpful) to hang around in.

[1] Riak:
[http://docs.basho.com/riak/latest/downloads/](http://docs.basho.com/riak/latest/downloads/)
[2]
[http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/dec...](http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/decandia07dynamo.pdf)
[3] [https://github.com/basho/riak_core](https://github.com/basho/riak_core)
[4]
[http://www.rgoarchitects.com/Files/fallacies.pdf](http://www.rgoarchitects.com/Files/fallacies.pdf)

