This document contains a big list of resources on distributed computing and distributed systems, including people, conferences/journals, lecture notes, open courses, videos, and so on.
-
Distributed computing, real-time computing, algorithms, lower bounds, formal modelling and verification, wireless network algorithms, and biological distributed algorithms.
-
Distributed computation and theoretical computer science; in particular: Fault-tolerance; Timing-based and asynchronous algorithms.
-
My research is in the theory of distributed computing. I particularly like proving lower bounds on the complexity of concrete problems with the goal of understanding how parameters of various models of computation affect their computational power. I also study data structures in distributed and sequential models.
-
- Theory of Distributed Computing
- Randomized Algorithms and Data Structures
- Computational Complexity
-
My research interests are mainly in distributed computing, especially probabilistic algorithms and lower bounds, and theory of computing in general.
-
My research interests are in the theory of distributed computing, especially issues related to coordination, complexity and computability.
-
My research focuses on the interface between game and decision theory and computer science, on reasoning about knowledge and uncertainty, and on causality.
I described myself as someone with a Ph.D. in mathematics, who calls himself a computer scientist, and is giving a talk to economists about a subject mainly studied by philosophers.
-
Theory and Practice of Distributed Systems
-
My primary research interests are in concurrent and distributed computing.
My research interest are programming models to program distributed, parallel, or concurrent or systems conveniently, efficiently, and correctly.
Victor Luchangco works in the Scalable Synchronization Group of Oracle Labs. His research focuses on developing algorithms and mechanisms to support concurrent programming on large-scale distributed systems.
Moir's main research interests concern practical and theoretical aspects of concurrent, distributed, and real-time systems, particularly hardware and software support for programming constructs that facilitate scalable synchronization in shared memory multiprocessors.
On memory models.
My research interests are in methods and tools for developing correct concurrent and distributed software.
My research interests are programming models to program distributed, parallel, or concurrent or systems conveniently, efficiently, and correctly.
My research interests lie in the broad area of distributed systems. Some more specific topics that I am (currently) interested in include fault-tolerance, blockchain and distributed ledgers, cloud computing security and distributed storage.
Michael’s research enables the construction of reliable software by developing the foundations for effective programming abstractions and informative program analysis tools.
I am a software engineer at Google. Before that, I was a principal research scientist at Yahoo! Research. Before that I was an assistant professor at Georgia Tech, and before that I was a PhD student at Stanford.
- TDS: Theory of Distributed Systems Group
- Faculty: Nancy A. Lynch
- Idit Keidar's Research Group
- Google Research Group
- Yahoo! Labs
- The IMDEA Software Institute
-
ICALP: International Colloquium on Automata, Languages and Programming
-
The annual ALGO congress is the leading international gathering of researchers on Algorithms in Europe.
- PODC
- DISC
- SIROCCO: Structural Information & Communication Complexity
- OPODIS
- SSS
- Distributed Computing (DC); DC in DBLP
- Bulletin of EATCS (European Association for Theoretical Computer Science)
- Distributed Computing Column of Bulletin of EATCS
- PLDI;
- POPL;
- SPAA
- PPoPP: Principles & Practice of Parallel Programming
- CONCUR
- Concurrency Column of Bulletin of EATCS
- ESOP: European Symposium on Programming
- NSDI: Networked Systems Design and Implementation
- OSDI: Operating Systems Design and Implementation
- SOSP: Symposium on Operating Systems Principles
- DSN: Dependable Systems and Networks
- ICDCN: International Conference of Distributed Computing and Networking
- ICDCS: International Conference on Distributed Computing Systems
- SRDS: Symposium on Reliable Distributed Systems
- SoCC: Symposium on Cloud Computing
- FME: Formal Methods Europe
- LICS: Logic in Computer Science
- CAV: Computer Aided Verification
- VMCAI: Verification, Model Checking and Abstract Interpretation
- FM: Formal Methods
- FMSD: Formal Methods in System Design
- FAC: Formal Aspects of Computing
- ABZ
- Dagstuhl Seminar 13081 – Consistency in Distributed Systems
- PaPoC 2015 - Workshop on Principles and Practice of Consistency for Distributed Data
- Epidemic Algorithms and Processes: From Theory to Applications
January 20 – 25 , 2013, Dagstuhl Seminar 13042
- And: the report from Dagstuhl Seminar 13042
- And the slides from Dagstuhl Seminar 13042
- Lower Bounds for Distributed Computing (09w5114)
This workshop will bring together experts in the field (and some exceptional graduate students and postdocs) to discuss fundamental distributed computing problems whose computational complexities have not been resolved and the limitations of current techniques for obtaining lower bounds for these problems.
- The Edsger W. Dijkstra Prize in Distributed Computing
- The Donald E. Knuth Prize for outstanding contributions to the foundations of computer science
- The Godel Prize for outstanding papers in the area of theoretical computer science
- 2004 Godel Prize
The discovery of the topological nature of distributed computing provides a new perspective on the area and represents one of the most striking examples, possibly in all of applied mathematics, of the use of topological structures to quantify natural computational phenomena.
- 2000 Godel Prize: Moshe Vardi and Pierre Wolper
Reasoning about infinite computations: This paper is a reworking and extension of a conference contribution of FOCS'83, which has become a major reference in the automata-theoretic approach to temporal logic.
- 1997 Godel Prize: Joseph Halpern and Yoram Moses
The Halpern-Moses paper provided a new and effective way of reasoning about distributed systems, providing rigorous and powerful new techniques based on epistemic logic.
- 2004 Godel Prize
- Best Paper Award (maintained by Jeff Huang)
- EAPLS Best PhD Dissertation Awards
The European Association for Programming Languages and Systems has established a Best Dissertation Award in the international research area of programming languages and systems.
- Distributed Algorithms (by Nancy A. Lynch)
- Synthesis Lectures on Distributed Computing Theory by Nancy A. Lynch
- Distributed Algorithms: New Topics and Techniques (by Nancy A Lynch, Keren Censor)
- CSCE 668: Distributed Algorithms and Systems @ Fall 2011 (By Welch)
- CSCE 668: Lecture notes (ppt)
- ETH: Principles of Distributed Computing
This course introduces the principles of distributed computing, emphasizing the fundamental issues underlying the design of distributed systems and networks: communication, coordination, fault-tolerance, locality, parallelism, self-organization, symmetry breaking, synchronization, uncertainty. We explore essential algorithmic ideas and lower bound techniques, basically the "pearls" of distributed computing.
It will present abstractions and implementation techniques for engineering distributed systems. Topics include multithreading, remote procedure call, client/server designs, peer-to-peer designs, consistency, fault tolerance, and security, as well as several case studies of distributed systems.
-
6.852/18.437 Fall 2009 Distributed Algorithms @ MIT by Nancy Ann Lynch
-
Distributed Algorithms for Mobile Wireless Ad Hoc Networks (by Fabian Daniel Kuhn, Nancy A Lynch)
-
Seminar in Distributed Algorithms: Designing correct concurrent algorithms (by Hagit Attiya)
-
Distributed Computing with Notes on Theory of Distributed Systems (by James Aspnes) 2011
The Lecture Notes (ppt) is elegant. Topics will include the majority (we are going to shoot for all and see what happens) of the following: Global states and event ordering; Logical clocks; Vector clocks; Consistent cuts and global property detection; Rollback-recovery and message-logging protocols; State machine approach; Agreement protocols; Failure detectors; Replication and consistency; Byzantine fault tolerance; Atomic Commit
This course studies the organization of cloud computing systems and survey research problems in this area.
- 15-799 :: Advanced Topics in Database Systems Fall 2013
- 15-799 :: Advanced Topics in Database Systems Fall 2013
Big Ideas. Big Money. Big Data.
The primary emphasis is on operating systems and distributed systems. A secondary emphasis is on protocol implementation and next-generation network protocols. The focus when covering these topics is the extent to which they impact end-system design and implementation.
- CS 525: Advanced Distributed Systems Spring 2011
- Randomized Algorithms 2013 (by James Aspnes)
- Algorithms (by James Aspnes)
- Algorithms Quals @ UIUC
- CS294-17: Reading the Classics @ MIT by Christos H. Papadimitriou
- INF346: Foundations of Distributed Systems
Lecture notes: Robust Concurrent Computing It also provides a list of papers to read.
CPS 212 is a graduate-level course dealing with techniques for storing and sharing information in computer networks, large and small. We will cover a range of core distributed systems topics, with an emphasis on the issues faced by networked utility services, scalable Internet services, and enterprise storage systems.
This class will examine file system implementation, low-level database storage techniques, and distributed programming. Lectures will cover basic file system structures, journaling and logging, I/O system performance, RAID, the RPC abstraction, and numerous systems illustrating these concepts.
This course broadly examines distributed storage systems in its many manifestations. It explores how to harness and maintain the collective storage capabilities in storage systems from global-scale enterprises and cloud computing to peer-to-peer, ad hoc, and home networks.
Principles, techniques, and examples related to the design, implementation, and analysis of distributed and parallel computer systems.
Abstraction-based parameterized TLA+ checker: Bringing state-of-the-art model checking to TLA+
- SYSLOG: the Cambridge System Research Group???s blog
- All Things Distributed
Werner Vogels' weblog on building scalable and robust distributed systems.
- Paper Trail: Wading through academic treacle
- Perspectives: James Hamilton's Blog
- CSE 708 Seminar on Distributed Systems and Distributed Computing
- Umbrant by Andrew Wang
My name is Andrew Wang. I'm a software engineer at Cloudera on the HDFS team.
- Metadata by Murat
I am a computer science and engineering professor at SUNY Buffalo. I work on distributed and networked systems and fault-tolerance.
- High Scalability: Building bigger, faster, more reliable websits
- Operational Dynamics on Storage
- Riak on Distributed Storage
- The Fallacies of Distributed Computing Reborn: The Cloud Era
- Taobao blog
- ImportNew
Info;Android;Architecture
- Classic Papers in Distributed Systems
- DataScientist: BigData, Database, Data Mining, Machine Learning, Data Science
- Fulbright Distinguished Chair Lecture: Prof. Maurice Herlihy
- Combinatorial Topology and Distributed Computing (01): Prof. Maurice Herlihy
- What is Computation: Dr. Leslie Lamport, Microsoft
- Thinking Above the Code
Architects draw detailed blueprints before a brick is laid or a nail is hammered. Programmers and software engineers seldom do. A blueprint for software is called a specification. The need for extremely rigorous specifications before coding complex or critical systems should be obvious—especially for concurrent and distributed systems. This talk explains why some sort of specification should be written for any software.
Synthesis Lectures on Distributed Computing Theory is edited by Jennifer Welch of Texas A&M University and Nancy Lynch of the Massachusetts Institute of Technology. The series publishes 50- to 150-page publications on topics pertaining to distributed computing theory. The scope largely follows the purview of premier information and computer science conferences, such as ACM PODC, DISC, SPAA, OPODIS, CONCUR, DialM-POMC, ICDCS, SODA, Sirocco, SSS, and related conferences. Potential topics include, but not are limited to: distributed algorithms and lower bounds, algorithm design methods, formal modeling and verification of distributed algorithms, and concurrent data structures.