Best Distributed systems Videos
「Distributed systems」下面有81部被不同的人、在不同月份推荐过的视频。挑的时候先看对象:入门6部,适合还没学过的人;进阶52部,适合已经懂术语的人;普通向2部,按兴趣就能看;更硬的21部,留给想看推导或细节的人。这一类数量最多的是演讲,所以它们的共同点是一位讲者把一个判断讲完,例子是为了撑住这个判断。常出现的频道包括Strange Loop Conference、Amazon Web Services、GOTO Conferences。目录给这个主题划的范围是:Distributed systems: consensus, Paxos, Raft, replication, CAP theorem, Kafka, event logs, Erlang/OTP, scaling services across machines, fault tolerance, large-scale architectures at Google, Netflix, Facebook.如果只看三部,就从《The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019》开始,它负责把问题讲出画面;然后看《"Testing Distributed Systems w/ Deterministic Simulation" by Will Wilson》,换一种讲法或例子;最后看《Erlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp》,留给已经有基础的人。页面按每页24部切开,顺序看的是被推荐跨越了多少个月,不是播放量。每条标题下面那一句是这部片子自己的内容说明,用来区分它在讲定义、过程、演示还是观点。点进去能看到推荐原话、原文链接和适合谁看。看的时候把强烈推荐当成有人明确叫你去看,把引用当成只是拿来举例,把批评留下来对照,不要把每条评论都当成同一力度。

The Soul of Erlang and Elixir • Sasa Juric • GOTO 2019
Sasa Juric explains what makes Erlang and Elixir suited to server-side systems, focusing on the BEAM concurrency model rather than syntax or ecosystem.

"Testing Distributed Systems w/ Deterministic Simulation" by Will Wilson
Will Wilson of FoundationDB explains how the team tested their distributed database using deterministic simulation.

Erlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
Rick Reed of WhatsApp explains at Erlang Factory 2014 how the service scaled to billions of messages with a very small engineering team.

"Turning the database inside out with Apache Samza" by Martin Kleppmann
Martin Kleppmann argues that databases are global shared mutable state and proposes treating them as an ever-growing log of immutable facts.

The Language of the System - Rich Hickey
Rich Hickey's 2013 talk applies language-design thinking to whole systems, covering names, queues, data, failure, and the interfaces between programs.

Google I/O 2012 - Go Concurrency Patterns
Rob Pike's Google I/O 2012 talk shows how goroutines and channels solve tricky concurrency problems with simple Go code.

Conflict Resolution for Eventual Consistency • Martin Kleppmann • GOTO 2016
Martin Kleppmann's GOTO Berlin 2016 talk on how collaborative editors, offline apps, and multi-datacenter databases handle concurrent updates.

"Unison: a new distributed programming language" by Paul Chiusano
Paul Chiusano's Strange Loop 2019 talk introduces Unison, an open-source functional language for distributed, elastic systems.

Paxos lecture (Raft user study)
John Ousterhout's slides-and-voiceover lecture on Paxos, made for the Raft user study comparing how students learn Raft and Paxos.

Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know...)
A standing whiteboard conversation at Lang.NEXT 2012 among Carl Hewitt, Erik Meijer and Clemens Szyperski about the actor model.

Advanced Topics in Programming Languages: A Lock-Free Hash Table
A 2007 Google Tech Talk in which Cliff Click of Azul Systems presents a lock-free concurrent hash table that scales to 768 CPUs.

"I See What You Mean" by Peter Alvaro
Peter Alvaro's Strange Loop 2015 talk argues that query languages let you state what you mean, and applies that to distributed programming.

Distributed Systems 1.1: Introduction
The first lecture in Martin Kleppmann's 8-lecture distributed systems series from the University of Cambridge undergraduate course.

Lecture 1: Introduction
The opening lecture of MIT 6.824 Distributed Systems (Spring 2020), introducing the course and core challenges of distributed systems.

ElixirConf 2018 - Docker and OTP Friends or Foes - Daniel Azuma
Daniel Azuma's ElixirConf 2018 talk on whether Docker and OTP conflict.

GigCityElixir23 - Bryan Hunter
Bryan Hunter's GigCityElixir 2023 talk on HCA Healthcare's Waterpark system, built on Elixir/Erlang.

Leslie Lamport: Thinking Above the Code
Leslie Lamport argues that programmers, like architects, should write rigorous specifications before coding, especially for concurrent and distributed systems.

Zach Tellman - Everything Will Flow
Zach Tellman's Clojure West talk covers the basics of queueing theory and its practical use in systems, including backpressure, how queues break down under load, and pitfalls of naive core.async use.

AWS re:Invent 2016: Tuesday Night Live with James Hamilton
James Hamilton's Tuesday Night Live keynote at AWS re:Invent 2016, touring AWS infrastructure at scale including networking, power and custom silicon.

Breakout Session Presented by Dan Robinson of Heap at PGConf Silicon Valley 2015
Dan Robinson, then CTO of Heap, explains how Heap runs its product analytics backend on PostgreSQL and CitusDB.

How We've Scaled Dropbox
Dropbox engineer Kevin Modzelewski gives a Stanford colloquium on Dropbox's history and the technical problems it faced scaling, including detailed database schema decisions.

I Shot You First: Networking the Gameplay of Halo: Reach
Bungie's David Aldridge explains the networking programming behind Halo: Reach in a 2011 GDC session.

Classic Game Postmortem: Ultima Online
A 2018 GDC panel where Raph Koster, Starr Long, Richard Garriott and Rich Vogel look back on what went right and wrong building and running Ultima Online.

Autonomous Testing and the Future of Software Development - Will Wilson
Will Wilson explains autonomous testing: using deterministic simulation and fuzzing, building on FoundationDB's approach, to test software continuously.