The early 2000's saw several research groups look into distributed hash tables as a decentralized way to structure a distributed system. In this talk, I'll briefly describe some of the history behind DHTs, and look at one of them in particular: Pastry, which takes into account how close or far apart nodes are from each other when constructing the peer-to-peer overlay network. We'll also look at Scribe, which implements anycast/multicast messaging on top of the Pastry overlay network.
Your application depends on the network more than you might realize. Are you monitoring it? A performance problem in the network is a performance problem for your app. A reliability problem in the network is a reliability problem for your app.
At Google, we have instrumented several parts of our serving stack to collect detailed information about the network. An important part of that is a real-time pipeline for collecting and analyzing packet captures, which give you detailed diagnostics about individual network connections. In this talk you'll learn how to visualize and analyze packet captures to detect network problems that affect what your users experience.
Communicating Sequential Processes (CSP) was first described by Tony Hoare in 1978. Since then, there have been two main "branches" of further development. In the first branch, CSP inspired how concurrency is handled in an ongoing series of programming languages — most recently (and famously) in Go. In the second branch, CSP was refined into a rigorous “process calculus”, and has since been used to formally prove various safety and liveness properties of concurrent and distributed systems.
This talk will be a whirlwind history of CSP, a high-level overview of the process calculus, and some live demos of using a refinement checker to prove things about interesting systems. (No proving things by hand!)
History! Those who don't know it are doomed to etc.
Smalltalk is one of the earliest object-oriented languages. It's extremely influential — many of the OO concepts that we use in today's languages were first developed in Smalltalk. But what influenced Smalltalk? Alan Kay will walk us through the language's inspirations in this talk, including such crazy new technologies as UIs with overlapping windows and a 1970's-era ur-tablet!
This talk was an overview of the Apache Avro data serialization framework. It includes some detail on why you'd want to use a framework of its kind instead of XML, JSON, or rolling your own custom format.