Martin Kleppmann
Martin Kleppmann
  • Видео 39
  • Просмотров 1 445 527

Видео

Discussion session on Peritext, a CRDT for rich text
Просмотров 3,9 тыс.Год назад
A discussion session for my Patreon supporters, about the paper "Peritext: A CRDT for Collaborative Rich Text Editing" with Geoffrey Litt, Sarah Lim, and Peter van Hardenberg. Paper: www.inkandswitch.com/peritext/static/cscw-publication.pdf You can join future discussion sessions by supporting me on Patreon: www.patreon.com/martinkl
Automerge: a new foundation for collaboration software
Просмотров 18 тыс.2 года назад
Local-first software is an effort to make collaboration software less dependent on cloud services, and Automerge is an open-source library for realising local-first software. In this talk I explain our motivation for creating Automerge, and map out 7 years worth of research projects that are feeding into this project. Recording of a talk given at the University of Cambridge SRG Seminars on 25 N...
Distributed Systems 6.2: Raft
Просмотров 32 тыс.2 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Thinking in Events: From Databases to Distributed Collaboration Software (ACM DEBS 2021)
Просмотров 31 тыс.3 года назад
Keynote by Martin Kleppmann at the 15th ACM International Conference on Distributed and Event-based Systems (ACM DEBS 2021) Paper: dl.acm.org/doi/10.1145/3465480.3467835 Alternative paper link: martin.kleppmann.com/papers/debs21-keynote.pdf Slides: speakerdeck.com/ept/thinking-in-events-from-databases-to-distributed-collaboration-software If you found this useful, please consider becoming a sup...
Maple Leaf Rag (played by beginner)
Просмотров 6 тыс.3 года назад
My lockdown project for the last year has been to learn the piano. Thanks to my partner for teaching me. Here is my attempt at Scott Joplin's Maple Leaf Rag, with plenty of wrong notes - that's how you know it's played by human, not by computer.
Distributed Systems 8.1: Collaboration software
Просмотров 22 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 8.2: Google's Spanner
Просмотров 32 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 7.3: Eventual consistency
Просмотров 27 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 7.2: Linearizability
Просмотров 36 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 7.1: Two-phase commit
Просмотров 63 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 6.2: Raft
Просмотров 14 тыс.3 года назад
NOTE: There are some mistakes in this video. Please watch this one instead, in which the bugs are fixed: ruclips.net/video/uXEYuDwm7e4/видео.html This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2021/ConcDisSys/dist-sys-notes.pdf Full ...
Distributed Systems 6.1: Consensus
Просмотров 37 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 5.3: State machine replication
Просмотров 29 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 5.2: Quorums
Просмотров 37 тыс.3 года назад
Accompanying lecture notes: www.cl.cam.ac.uk/teaching/2122/ConcDisSys/dist-sys-notes.pdf Full lecture series: ruclips.net/p/PLeKd45zvjcDFUEv_ohr_HdUFe97RItdiB This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge. It is preceded by an 8-lecture course on concurrent systems for which videos are ...
Distributed Systems 5.1: Replication
Просмотров 44 тыс.3 года назад
Distributed Systems 5.1: Replication
Distributed Systems 4.3: Broadcast algorithms
Просмотров 41 тыс.3 года назад
Distributed Systems 4.3: Broadcast algorithms
Distributed Systems 4.2: Broadcast ordering
Просмотров 49 тыс.3 года назад
Distributed Systems 4.2: Broadcast ordering
Distributed Systems 4.1: Logical time
Просмотров 78 тыс.3 года назад
Distributed Systems 4.1: Logical time
Distributed Systems 3.3: Causality and happens-before
Просмотров 40 тыс.3 года назад
Distributed Systems 3.3: Causality and happens-before
Distributed Systems 3.2: Clock synchronisation
Просмотров 43 тыс.3 года назад
Distributed Systems 3.2: Clock synchronisation
Distributed Systems 3.1: Physical time
Просмотров 39 тыс.3 года назад
Distributed Systems 3.1: Physical time
Distributed Systems 2.4: Fault tolerance
Просмотров 38 тыс.3 года назад
Distributed Systems 2.4: Fault tolerance
Distributed Systems 2.3: System models
Просмотров 49 тыс.3 года назад
Distributed Systems 2.3: System models
Distributed Systems 2.2: The Byzantine generals problem
Просмотров 62 тыс.3 года назад
Distributed Systems 2.2: The Byzantine generals problem
Distributed Systems 2.1: The two generals problem
Просмотров 52 тыс.3 года назад
Distributed Systems 2.1: The two generals problem
Distributed Systems 1.3: RPC (Remote Procedure Call)
Просмотров 100 тыс.3 года назад
Distributed Systems 1.3: RPC (Remote Procedure Call)
Distributed Systems 1.2: Computer networking
Просмотров 64 тыс.3 года назад
Distributed Systems 1.2: Computer networking
Distributed Systems 1.1: Introduction
Просмотров 242 тыс.3 года назад
Distributed Systems 1.1: Introduction
CRDTs: The Hard Parts
Просмотров 66 тыс.4 года назад
CRDTs: The Hard Parts

Комментарии

  • @dehghanym
    @dehghanym 3 дня назад

    Amazing!!

  • @chessmaster856
    @chessmaster856 6 дней назад

    What other viewpoint is there other than clients viewm does anything work or we just keep talking and finally say I never said it would work.

  • @JohnCDSMB
    @JohnCDSMB 10 дней назад

    After watching many videos, I finally found the explanation of an understandable protocol given in a very understandable way. Thank you very, very, very much

  • @chessmaster856
    @chessmaster856 11 дней назад

    Sounds like useless talk with no solution. There needs to be verification flow assuming failures and error correction built in. Just interseted in talking with no solution.Finally did the transaction commit or not? Looks like it goes on forever. Reinventing consistency Like a new wheel? My consistency is different from yours?😊 Is anybody using 2 phase commit? Nobody uses it?it feels like if the transaction is held so long as video, it is not feasible.

  • @kzvonov
    @kzvonov 16 дней назад

    It is a gem 💎

  • @user-ou1dj7rx6o
    @user-ou1dj7rx6o 20 дней назад

    i wondering about version vector, too. !!

  • @bga_developer
    @bga_developer 26 дней назад

    Pretty much all this concepts are just confused on what to name an request standard. Let's call it RPC, no REST no gRPC, how does AJAX sound... It good that I now know the difference tho.

  • @XtremrulesO
    @XtremrulesO 27 дней назад

    This video is so clear and informative. It answered most of the questions I had.

  • @wakandavernon1412
    @wakandavernon1412 28 дней назад

    can we use this algorithm in wireless sensor networks?

  • @henrikflamm4843
    @henrikflamm4843 28 дней назад

    What an excellent video - thank you!

  • @Gogolevrai
    @Gogolevrai Месяц назад

    For me the best course for DS. Thanks Martin

  • @_sudipidus_
    @_sudipidus_ Месяц назад

    11:10 wow that's the ultimate definition of concurrency right there

  • @slowmotion2300
    @slowmotion2300 Месяц назад

    Thank you for this amazing free series, you are the best.

  • @ramjikijai
    @ramjikijai Месяц назад

    Big fan of his thought process. I wish I could do phd under him.

  • @kk-pi4hj
    @kk-pi4hj Месяц назад

    I am little confused on your statement on "logical timstamps/lamport timestamps provides total order". if they provide total order why even bother about vector clocks? you clearly say that lamport timestamp cannot distinguish concurrent events so how can you call that a "total order"? Also when I put in "does lamport timestamp gives partial order or total order ?" in chatGPT it clearly says "partial order". What am I missing?

  • @swagatamchatterjee1949
    @swagatamchatterjee1949 Месяц назад

    I have one doubt. In one of the slide , you mentioned ..in other parts of the computer science Synchronous and Asynchronous are used in other aspects or differently. Can someone please help me to understand that ? and great video series and thanks a lot Martin!

  • @humanvegetable
    @humanvegetable Месяц назад

    The moon is not actually made of cheese!

  • @jayleejw1801
    @jayleejw1801 Месяц назад

    Immediately liked and shared. Golden content for computer science folks

  • @humanvegetable
    @humanvegetable Месяц назад

    Oh no it isn't!

  • @nadaralpenidze9549
    @nadaralpenidze9549 Месяц назад

    Hi Martin, thank you for the lecture. One question regarding quorum and linearizability. In your example of non-linearizable quorum, the write was asynchronously replicated, which can technically violate the quorum safety condition, as the write wasn't acknowledgement by a quorum of nodes. What if the quorum is used with synchronous replication, such that the write is not committed before receving such acknowledgement from the quorum. In that case, a read quorum will always find the most recent write. Any thougts?

    • @nadaralpenidze9549
      @nadaralpenidze9549 Месяц назад

      Answering to myself: I figured out that the operations are happening concurrently, so client 1 is still pending an ack from the quorum.

  • @RaduOleniuc
    @RaduOleniuc Месяц назад

    Bizantine as the name come from bizantin (Greek and east europe).

  • @mg-nf1jz
    @mg-nf1jz Месяц назад

    this aged well

  • @andreip9378
    @andreip9378 Месяц назад

    Wow, I didn't know Martin has a YT channel. Instant subscribe.

  • @RamilyaYusupova-y5l
    @RamilyaYusupova-y5l Месяц назад

    Great theme tune for distributed systems

  • @moreirelsi
    @moreirelsi Месяц назад

    Great theme tune for distributed systems

  • @zaixrx
    @zaixrx Месяц назад

    Big thanks

  • @ashwint959
    @ashwint959 Месяц назад

    Excellent lectures but ads are really annoying

  • @PhuongNguyen-do9io
    @PhuongNguyen-do9io 2 месяца назад

    Thank you

  • @33galactus
    @33galactus 2 месяца назад

    You're not only a great author but also an amazing teacher. Thanks Martin.

  • @joaofurukawa
    @joaofurukawa 2 месяца назад

    u are the GOAT of DS!

  • @MitaliNeerPatel
    @MitaliNeerPatel 2 месяца назад

    Where Can I find first half of the course ?

  • @jmbrjmbr2397
    @jmbrjmbr2397 2 месяца назад

    Woow what a gem I found! Living in this day and age is amazing and gorgeous, thank you so much for uploading!

  • @Samindika1997
    @Samindika1997 3 месяца назад

    Thank you very much.

  • @utsavdahiya3729
    @utsavdahiya3729 3 месяца назад

    6:25 ruclips.net/video/_2By2ane2I4/видео.html

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    Glock. Genuinely meant block

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    Did you glock😢

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    I am sl confused rn

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    Something

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    Haha lol i made a funny

  • @donaldcarnegie3018
    @donaldcarnegie3018 3 месяца назад

    Honestly this is a really bad analogy to describe this problem.

  • @FarhadJabiyev
    @FarhadJabiyev 3 месяца назад

    I don't understand why at 09:41 you mentioned idempotencenl only for best-effort algo? All other algorithms have reliable network system model which can only be achieved with retry pattern. And if retry isnin place, then idempotence also should be, no?

  • @hamdenichamseddine8217
    @hamdenichamseddine8217 3 месяца назад

    Thank you so much for the perfect explanation

  • @alexeiionov9812
    @alexeiionov9812 3 месяца назад

    so interesting! thank you so much for posting this series : )

  • @indrajeetv8878
    @indrajeetv8878 3 месяца назад

    Sir, where is part one?

  • @bermick
    @bermick 3 месяца назад

    brilliant! thanks a lot for the content Martin!

  • @suparnaprasad8187
    @suparnaprasad8187 3 месяца назад

    Awesome video!

  • @yoyocswpg
    @yoyocswpg 3 месяца назад

    I don't understand why I am paying 2000 for a uni course as an international student when I get to learn all this sh🎉 here with much better quality

  • @harman654321
    @harman654321 3 месяца назад

    Great series for distributed systems.

  • @tysonliu2833
    @tysonliu2833 3 месяца назад

    how do we handle obtaining commit timestamp in a raft database without physical clock? just two phase commit?

  • @tysonliu2833
    @tysonliu2833 3 месяца назад

    why on slide 9 the leader need qurom to deliver while on slide 7 the follower can just commit?

    • @jl1835
      @jl1835 3 месяца назад

      because the leader is the only node that could decide which log entry is ready to be committed by checking if more than half of the nodes have already acknowledged this log entry (quorum).

    • @tysonliu2833
      @tysonliu2833 20 дней назад

      ok seems slide 7 deliver logs up to leader, while slide 9 deliver the logs for the first time