YouTube1h 10m· Feb 2026· cataloged

Turing Award Winner: Thinking Clearly, Paxos vs Raft, Working With Dijkstra | Leslie Lamport


What this covers

I interviewed Leslie Lamport, a Turing Award winner known for his contributions to distributed systems and the inventor of the Paxos algorithm. We walked through the major contributions of his career for the stories behind them and what he learned along the way.

🔸 My keyboard project: https://read.compose.llc/p/our-keyboard-design-reveal

𝗣𝗼𝗱𝗰𝗮𝘀𝘁 𝗹𝗶𝗻𝗸𝘀: • Spotify: https://open.spotify.com/episode/7JHYszhd5pB3WRpjRyQPDH?si=wt0QHvMcQsmpULLz_kRraQ • Apple: https://podcasts.apple.com/us/podcast/the-peterman-pod/id1777363835 • Transcript: https://www.developing.dev/p/turing-award-winner-on-working-with

𝗘𝗽𝗶𝘀𝗼𝗱𝗲 𝗹𝗶𝗻𝗸𝘀:

• Bakery Problem Paper: https://lamport.azurewebsites.net/pubs/bakery.pdf • Time Clocks Paper (most cited): https://lamport.azurewebsites.net/pubs/time-clocks.pdf • The Byzantine Generals Problem Paper: https://lamport.azurewebsites.net/pubs/byz.pdf • The Paxos Algorithm Paper: https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf

𝗧𝗶𝗺𝗲𝘀𝘁𝗮𝗺𝗽𝘀:

00:00:00 - Intro 00:01:25 - The Bakery Algorithm 00:08:28 - Experiences with Dijkstra 00:14:44 - His most cited paper 00:23:26 - The "Byzantine Generals" problem 00:38:05 - The Paxos Algorithm 00:46:57 - Paxos vs Raft Algorithm 00:51:26 - Building LaTeX 00:54:27 - Why writing improves your thinking 01:00:00 - Why he wasn't an academic 01:01:48 - Grand theory of concurrency 01:07:05 - Why he doesn't think he's smart 01:08:50 - Advice for his younger self 01:09:25 - Outro

𝗪𝗵𝗲𝗿𝗲 𝘁𝗼 𝗳𝗶𝗻𝗱 𝗟𝗲𝘀𝗹𝗶𝗲:

• His works: https://lamport.azurewebsites.net/pubs/pubs.html

𝗪𝗵𝗲𝗿𝗲 𝘁𝗼 𝗳𝗶𝗻𝗱 𝗥𝘆𝗮𝗻:

• Newsletter: https://www.developing.dev/ • X/Twitter: https://x.com/ryanlpeterman • LinkedIn: https://www.linkedin.com/in/ryanlpeterman/ • Threads: https://www.threads.com/@ryanlpeterman • Instagram: https://www.instagram.com/ryanlpeterman • TikTok: https://www.tiktok.com/@ryanlpeterman

Source description (no synthesized summary yet).

Sharpest takeaway

Leslie Lamport argues that rigorous mathematical thinking and proofs—not coding or formal languages—are the foundation for understanding and building correct concurrent and distributed systems, and that abstraction ability, not raw intelligence, is the key to solving hard problems.

  • Writing forces clarity; vague thinking collapses when you try to write it down, revealing errors and gaps
  • State machines and mathematical invariants are more powerful than language-based or procedural reasoning for concurrent systems
  • Lamport's success came from abstraction ability, which he didn't recognize as exceptional until late in his career

The claims · ranked50 claims · weighted by value

This asset isn't compiled yet

You're seeing its claims, ranked. Compile it to build the argument threads, weight them, and check each claim against your library — the full view.

0.86

Lamport drew the notion of 'happens before' from special relativity: just as one event can influence another via light-speed-limited signals in physics, in distributed systems one event can influence another via messages actually sent in the system; this is the fundamental notion of causality in distributed computing.

causalhigh valueestablishednovelty 3/4durability 4/4· Leslie Lamport

I happen to you know learn about you know special relativity in particular uh what's known as the it's the space-time view of of special relativity where you basically consider space and time together just one four-dimensional thing and that was Einstein wrote his paper in 1905 and and in I think it was 1909 uh somebody whose name I'm blocking on provided this four-dimensional view and that four-dimensional view has the the particular notion of what it means for one pro one event to occur before another and that notion is that one event happens before another. If a a signal uh was emitted from the first event and received by the whoever did that second event before that second event happened, but the communication could not travel faster than the speed of light because nothing can travel faster than the speed of light. Well, I realized there was an obvious analogy. Uh the notion of happens before is exactly the same as in relativity except instead of being whether something one event can influence another by things traveling at the speed of light, it's whether the first event could have affected the other by information sent over messages that were actually sent in the system.

0.85

The insight that 'happens before' could be formalized mathematically blew people away because it provided a precise definition of causality in distributed systems, whereas before the notion of what it means for one event to occur before another in a distributed system was vague and obvious to most people.

factualhigh valueestablishednovelty 4/4durability 4/4· Leslie Lamport

The thing that you know blew people away was this this definition of of happens before in a distributed system with also this was the first paper I would call like you know had a scientific result about distributed systems.

0.80

Writing an instruction manual before coding forces the developer to discover design flaws and necessary changes—when writing the LaTeX book, Lamport discovered things that were hard to explain, requiring him to revise the design.

causalhigh valueestablishednovelty 2/4durability 4/4· Leslie Lamport

it was really meant for, you know, people building computer systems. You have an idea and you think it's going to work. Uh or you have something that, you know, you think is something that somebody else will you want to use. Well, write a description of it. Uh there's an old maxim that I don't I heard uh that is you know write the instruction manual before you write the program. a great advice. Uh I did not do that uh with latte but it I definitely when I was writing the book and I discovered that something was hard to to describe hard to explain that needed to be changed and I made you know a number of uh of changes to it uh as a result of that

0.79

The bakery algorithm has the remarkable property that it does not require atomic (all-or-nothing) writes to shared memory: if one process reads a register while another is writing to it, the reader can get any arbitrary value and the algorithm still works correctly.

factualhigh valueestablishednovelty 3/4durability 4/4· Leslie Lamport

The amazing thing about the bakery algorithm was that it didn't require that assumption. It it used uh each shared memory a piece of memory was only written by a single process. So it didn't have to worry about two processes interfering with each other. The only problem that you might come is that somebody reading the uh value while it was being written might get you know some unknown value but the algorithm worked anyway. If somebody read if one process read while the registers was being written that process reading process could get absolutely any value and the algorithm still worked.

0.74

The origin of the time-sharing problem was that computers were expensive and fast, so they could be used simultaneously by multiple people whose programs would compete for shared resources like printers, requiring synchronization to prevent garbled output.

causalhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

computers were worked faster than humans and so and computers were very expensive in those days. So uh they wanted they could use a computer to simultaneously to be used simultaneously by multiple people. The program that each user was running you know was a separate program but sometimes you know there were resources that got shared. for example, a printer, two people trying to print on the same printer at the same time. Well, the result would be, you know, not very satisfactory.

0.74

The bakery algorithm was inspired by the deli ticket system, where customers take a numbered ticket and the lowest remaining number is served next, adapted to work without central control by having each process choose its own ticket number.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

I came up with the bakery algorithm which was inspired by uh the idea came from you know what now called the deli problem where you have a deli counter and that collects you know tickets a roll of tickets and every customer would come in and take a ticket and then the the next person s to to be served would be the one with the highest the lowest numbered ticket uh that hadn't been served yet. And basically that I took that idea uh but since uh there was no central server uh or at least the the problem is as specified by Dystra involved no central control. Each process basically had to choose their own ticket.

0.74

The Byzantine generals problem arose from Lamport's work on fault-tolerant state machines at SRI, where the challenge was how systems could reach agreement when some processes might fail arbitrarily (do 'anything')—including sending malicious or contradictory messages.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

distributed one reason for a distributed systems is you have multiple computers so if one fails you can you know keep going. in particular uh that was the problem that it was being solved at SRRI when I uh when I joined it but before I got to SRRI and I started working on that problem and I uh there's no notion of idea of you know what I should think about is you know what what can a failure do so I assume that you know the worst possible case that a failed process might do absolutely anything.

0.74

Lamport's initial Byzantine generals algorithm used digital signatures, which allowed it to tolerate one faulty process with three total processes, whereas algorithms without signatures required four processes—a critical difference for practical systems.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

algorithm that would uh implement a state machine uh under that assumption and that the algorithm I came out with used digital signatures. Yeah. So that it used the fact that a faulty process might do anything but it could not forge the signature of another process uh which just means that the message can be trusted that it came from a private uh right so that you can relay messages and the people know can check that the relayed message is actually the one that was originally sent

0.74

The Byzantine generals problem is practically important because computers will fly aircraft, and during the 1970s oil crisis engineers realized that fuel-efficient aircraft must be aerodynamically unstable (smaller control surfaces), which pilots cannot control—only computers can make the necessary adjustments.

causalhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

this one it was because you know the it was obvious that people were going to be building that computers were going to fly our airplane fly airplanes and the reason in fact because was was that this was during the the oil crisis in the 70s and that they knew people knew that they could build more energyefficient planes by reducing the size the the size of the control surfaces. But that made the plane aerodynamically unstable. Uh and a a pilot couldn't make the all the adjustments needed to, you know, to keep it flying, but a computer could.

0.74

There was an eight-year gap between when Lamport developed the Paxos algorithm (in the late 1970s) and when the 'Part-Time Parliament' paper was finally published (in 1998), during which the paper sat with acceptance but no publication because the original referees thought it was 'okay' but 'not terribly important.'

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

I was looking at the Paxos paper and uh some of your notes about it and I saw that um there's a there's an eight-year gap between when you came up with the algorithm and when the the paper was actually published called Part-Time Parliament is the name of the paper. Why why is there an eight-year gap? Oh, well the re the referees originally said well this paper is okay you know not terribly important but fortunately butler Lamson realized the importance of the algorithm

0.73

Lamport simplified Dijkstra's concurrent garbage collection algorithm by recognizing that the free list handling—which Dijkstra had made a special process—could be integrated into the regular data structure, requiring no special handling.

factualhigh valueestablishednovelty 2/4durability 4/4· Leslie Lamport

I looked at it and I realized that uh I could simplify the algorithm. Uh because he had some some spe the the handling of the free list was done by a special process that you know which had it to worry about its own coordination with the uh uh the processes that were using the memory. And I realized that that free list could just be made part of the regular data structure. uh so it didn't need special handling

0.73

Understanding a concurrent program requires identifying invariants—boolean-valued properties of the state that, if true at each step, guarantee the output is correct—and reasoning about invariants rather than behavioral sequences reduces complexity from exponential to quadratic in the number of processes.

causalhigh valueestablishednovelty 2/4durability 4/4· Leslie Lamport

You give it the input and then it produces the right answer. Well, but by the time you're in the middle of execution, what it was given at the beginning is ancient history. The only thing that that tells the program what to do next is its current state. And the way to understand uh a program, you know, a simple program that just, you know, takes input and produces an answer is to say what is the property of the state at each point that ensures that the answer it produces is correct is going to be correct. And that property which is mathematically a fun a boolean valued function of the state is called an invariant. And understanding the invariant is the way to understand the system.

0.73

The problem Lamport encountered in building distributed databases was that the original solution would execute actions as if they occurred in a sequence, but that sequence could be different from the actual order in which they happened—a violation of the causal consistency that Lamport's 'happens before' relation was designed to capture.

factualhigh valueestablishednovelty 2/4durability 4/4· Leslie Lamport

somebody sent me a paper on building distributed databases and so where you'll have well multiple copies of the data in different places and you need to keep them synchronized in some way. I looked at it and I realized that their solution had this problem that the se that it it had the property that things would be executed as if they occurred in subsequence but that sequence could be different from the sequence in which they actually happened.

0.70

A state machine is defined by its state and a next-state relation: each command takes the system from one state to another, with correctness determined by invariants—boolean-valued properties of the state that ensure correct output regardless of what happened in the past.

definitionhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

A state machine as as I described it then is something that has a state and process executes you know uh commands that need to be executed in order and the command simply is something that makes a change of the state and and produces a value.

0.69

At DEC (Digital Equipment Corporation), which Lamport joined in 1985, they had built one of the first distributed operating systems with all computers on an Ethernet network sharing common storage, maintaining consistency via algorithms rather than explicit code.

factualhigh valueestablishednovelty 1/4durability 3/4· Leslie Lamport

the it was the dec circ was in which I joined in 1985 and they built a uh one of the first operating systems that uh was a a distributed operating system. Uh so that um basically everybody had the they basically these are the people who had come from Xerox Park and had invented personal computing but they also had the notion of distributed personal computing and they invented the Ethernet uh you know for that. So they basically all of the uh computers in the building were on a single Ethernet network and shared a common storage uh and they had an algorithm for maintaining consistency of that storage

0.69

When Lamport first presented the Paxos paper at a lecture dressed as an archaeologist (playing up the fictional 'ancient Greek parliament' framing), the audience may have enjoyed the presentation, but they did not understand the algorithm or its significance.

factualhigh valueestablishednovelty 1/4durability 3/4· Leslie Lamport

Well, I think the the lecture may have gone well, but uh I think nobody understood the algorithm where nobody understood the significance of the algorithm.

0.68

Edsger Dijkstra invented the formal theory of concurrent programming in a 1965 paper by introducing the concept of critical sections—pieces of code that at most one process can execute at a time—as a way to structure programs as collections of semi-independent tasks that must synchronize.

factualhigh valueestablishednovelty 0/4durability 4/4· Leslie Lamport

the problem was invented or discovered by Edkar Dystra in a 1965 I think it was 1965 paper and that began I consider that really the beginning of the theory of uh concurrency concurrent programming. He was the first one who really made use of the idea of of concurrency as a way of structuring programs as a as a collection of semi-independent tasks and the processes have to uh synchronize with one another.

0.68

Much research in distributed systems theory attempts to use partial orderings and behavioral proofs, which is not the practical way to build systems; the method that reliably works is invariance proofs, though there are exceptions like the bakery algorithm where partial orderings are useful.

normativehigh valuecontestednovelty 2/4durability 3/4· Leslie Lamport

for a long time that you know people you know doing uh distributed systems theory are trying to do it uh you know develop you know methods and formalism something that are based on partial orderings and that they've you know published a lot of papers but it's just you know not the way if you want to do it in practice that's that's not the way to do it and I shouldn't say you know it's not the way uh you know there are algorithms like the bakery algorithm that you know you know thinking in partial orderings is in fact a very good way of doing it but those are the exceptions the the work the method that works you know that you can be sure will will will work is the use of invariance

0.68

Computer people and programmers are 'really hung up on languages,' inventing languages and believing they improve thinking, but for understanding and reasoning about systems, mathematics beats any programming language.

normativehigh valuecontestednovelty 2/4durability 3/4· Leslie Lamport

but computer people and computer scientists and programmers are really hung up on languages and so they are looking for you know they invent all sorts of languages and they're all describable and in fact if you want to give them a semantics you would do it in terms of a state machine and they just think that this uh you know this language ES improves your thinking. uh it doesn't you may I mean there are reasons why you use computer languages and you don't write your your programs code in math and they involve basically efficiency but for understanding you know you can't beat math and you know attempts to uh do it by something that looks like a programming language uh is is just the wrong way to to to deal when you're trying to deal with concurrency.

0.66

Dijkstra's original solution to the critical section problem had the defect that processes could be starved—an individual process might never get access to the critical section if other processes kept entering.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

there was an unsatisfactory aspect of his original solution that had the property that if there were a lot of if processes kept trying to uh enter their critical section uh an individual process might be starved. might never get access to to the critical section

0.66

The SRI team developed a simpler abstraction for the Byzantine problem: rather than getting agreement on a sequence of commands, they created an algorithm for agreement on a single command and executed it repeatedly—this was a nicer abstraction than Lamport's sequence-based approach.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

the people at SRRI didn't have that, but they also had a nicer abstraction of it. Instead of getting agreement on a sequence among the processes on a sequence of commands, uh they would agree have an algorithm for agreement on a single command and then that algorithm would be uh executed multiple times to and you know that was a nicer way of of describing uh you know what you're doing than than the than than my method.

0.66

An algorithm is more abstract than a program—it can be implemented in any programming language, whereas a program is concrete code in a specific language; thinking in terms of algorithms rather than code is crucial for concurrent systems.

definitionhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

when most people sit down and start writing programs that you know they start by thinking in terms of code and one of the things I learned fairly early in my career I don't remember exactly when that back in in the days when I started writing algorithms people talked about people were calling them programs and I was probably calling them programs too I mean I remember then at some point I realized that that wasn't wasn't talking about programs. I was talking about al interested in algorithms. Uh and an algorithm is something that's more abstract than a pro than than a program. U an algorithm can be you know a program is written in in some particular code. But an algorithm can be implemented if programs written in any any kinds of code.

0.66

Paxos has two phases: a leader-election phase (phase 1) that can be done once, then a sequence of decision phases (phase 2) that repeat as long as the same leader exists; when the leader fails, a new leader must be elected (phase 1 again) before phase 2 continues.

definitionhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

The basic idea of the what Paxos works is it's two phases and you're trying to implement a sequence of you know of decisions and it turns out you can do the first phase once for a whole it involves a leader. So um and the leader has to get elected. Uh so but it turns out that you can do the first uh phase once uh and you don't have to do it again as long as you have the same leader. Uh but it's only the second part that you have to do and then you have to elect the the new leader if a new leader fails and do the first part.

0.66

When describing algorithms, Lamport talks about variables that can hold any integer, not just finite-precision integers—a deliberate abstraction that simplifies reasoning, not a complication; infinity was introduced into mathematics to simplify arithmetic, not complicate it.

factualhigh valueestablishednovelty 1/4durability 4/4· Leslie Lamport

For example uh when I describe a uh an algorithm I will talk about you know the values of a variable you know can be any integer. Now you can implement the program where you have any integer uh but that makes the but talking about you know computer integers would complicate things unnecessarily. The people have this funny idea that you know because something is infinite it's more complicated. They got it backwards. Infinity was introduced to simplify things. You know the first thing you learn is arithmetic. You're learning arithmetic with an infinite number of integers because if you restricted to a finite set of integers, arithmetic becomes much more complicated.

0.63

LaTeX was created by Lamport because he needed macros on top of TeX to do typesetting for a book he was writing, and decided to make the macros reusable for others; he was inspired by Scribe, which emphasized logical document structure over formatting details.

factualhigh valueestablishednovelty 0/4durability 3/4· Leslie Lamport

Oh, that was uh very simple. Um, I was wanted I was in the process of starting to write a book and uh it was clear that tech was the basic uh type setting system that one had to use. But you know I felt that I would need macros uh to make tech do what I wanted it to do. And uh so I decide figured with uh been a little extra effort uh I could make the macros usable by other people. The system I had been using before tech it's called scribe and uh that really had the basic idea of scribe was that you describe the logical structure of of the document not and the and scribe will do the formatting.

0.60

Stupid people think they're smart because they're too stupid to realize they're not, whereas smart people don't realize how smart they are because things are simple to them—a corollary of cognitive bias about competence.

factualhigh valueestablishednovelty 0/4durability 4/4· Leslie Lamport

Or to put uh a little bit more concisely, stupid people think they're smart because they're too stupid to realize they're not.

0.56

If you think you know something but don't write it down, you only think you know it because writing forces you to confront gaps in reasoning that seem obvious in your head but collapse on paper.

causalhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

If you think you know something but don't write it down, you only think you know it.

0.56

In the Time, Clocks paper, Lamport described systems in terms of state machines—entities with a state that processes commands in order, where each command changes state and produces a value—and recognized this was the most important idea in the paper, but it was completely ignored by readers.

factualhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

I realized that if you had an algorithm to do that, you could use it to basically provide the the synchronization you needed for any distributed system because you could describe that system in terms of a state machine. And a state machine as as I described it then is something that has a state and process executes you know uh commands that need to be executed in order and the command simply is something that makes a change of the state and and produces a value. And so you can just describe this state machine as just you know how event how commands affect the state and and how they produce and what you know what the new state is as a function of the original state and what the value is as a function of the original state. And it turned out that this was very obvious to me, but that's really in practice the important idea in that paper because it showed that this method of building distributed systems by thinking in terms of state machine and and can thinking about concurrent systems in terms of state machines. Um but that part was completely ignored.

0.56

Raft advocates claimed the algorithm is simpler than Paxos and demonstrated this by teaching Paxos to one group of students and Raft to another; the Raft group reported better understanding, but a bug was later discovered in Raft that the students found more understandable than the correct version.

factualhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

the raft people also had this idea that you know raft is better because it's simpler and I I must say that a lot of people say that uh Paxos is hard to understand and I don't understand why. I mean, I've explained it to some people in five minutes and they understood it. At any rate, the raft people said that one of the ideas were simpler because and they even have, you know, taught, you know, Paxos to one class and and uh the raft to another and they took and then yes, the people all the students said that yes, it was more understandable. Uh the interesting thing about it though is that uh there was a bug discovered in raft and fixed but I believe that the algorithm that they found more understandable was one with that bug.

0.56

Lamport developed a hierarchical proof structure to manage complexity: a proof is a sequence of steps, each step has a proof, and that proof is either a paragraph or further steps; this enables breaking large proofs into manageable pieces while maintaining traceability.

factualhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

I realized it just didn't work because there were just so many details involved and I just couldn't keep track of them and whether I had done it. And so as a computer science know how to deal with concurrency uh it's hierarchical structure and so I devised this hierarchical structure where a proof is uh you know is a sequence of steps each of which has a proof and the proof is either a par well a proof is either a paragraph or a statement a sequence of steps each with its proof and that proof can be either a parag graph or a sequence of steps with its proof and you know so you break the whole problem up into these smaller pieces. So there's never any question of you know where is this coming from. You know you're stating that this step follows from you know this step this step this step this step and if it does not follow from that step your proof is wrong.

0.52

Lamport's hierarchical proof structure works for ordinary mathematics as well as computer science proofs, demonstrating its generality; when he tried to convince mathematicians to adopt it, their reaction was angry—they feared being forced to write proofs for computer verification.

factualhigh valuespeaker onlynovelty 2/4durability 3/4· Leslie Lamport

I also write proofs of theorems you know you know uh you know think proofs that are things that are you know more like ordinary math and I started trying that on them and I discovered it worked beautifully. So when I started to to try to convince mathematicians to write these proofs uh I started in one small seminar I went you know won't describe what it was about but uh and I I described this this proof through maybe uh 20 mathematicians or something their reaction shocked me they became angry I really thought that they might physically attack me.

0.52

Lamport submitted a simple two-process algorithm to CACM in 1972, received a letter pointing out a bug, and realized that concurrent programs are hard to get right and require proofs of correctness—this rejection motivated him to develop the bakery algorithm.

factualhigh valuespeaker onlynovelty 1/4durability 4/4· Leslie Lamport

it was in 1972 that I learned about the problem because there was an article giving a solution to it um in the CACM communications of the ACM and uh I mean I used to program and I liked little programming problems you know uh and this was just a very nice little programming problem. And so I looked at the solution, which is fairly complicated, and I said, 'Oh, gee, that shouldn't be so hard.' And so I whipped off a very simple uh algorithm for two processes and submitted it to CACM. And a couple of weeks later, I received uh a letter from the editor uh pointing out the bug in my program. So that had two effects. The first was that I realized that concurrent programs were hard to get right and that you needed a proof that they were correct. And second uh was that made me feel I'm gonna solve that damn problem.

0.51

Dijkstra told Lamport late in his career that he had 'a remarkable ability at abstraction,' which Lamport only recently (after winning the Turing Award) realized was the core reason for his success—not raw intelligence, but exceptional abstraction ability.

factualhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

Dystra was smart enough to realize that I had uh a remarkable ability at abstraction only in very recent years I mean Maybe maybe after I got the touring award that I realized that the reason for my success and the reason I got it wind up wound up getting a touring award was not that I was particularly that smart but that I had this gift of abstraction

0.51

State machines are more powerful than Turing machines because they can describe impossible or nondeterministic systems, whereas Turing machines only describe feasible computations—a feature, not a bug.

factualhigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

but it uh it it doesn't have the function that that touring machines offer because it it doesn't what touring machines do is uh describe what's you know what's possible uh and state machines can describe anything including things that are not possible. Uh and and in fact uh the there's a good reason for that.

0.51

When asked what advice he would give his younger self, Lamport says he shouldn't waste time answering questions he doesn't have to answer—like 'what should I have done'—because that's a question he doesn't need to solve.

normativehigh valuespeaker onlynovelty 2/4durability 4/4· Leslie Lamport

One thing I've learned fairly early in my life is that I shouldn't waste time trying to answer questions that I don't have to answer. I don't think about, you know, what I should have done because uh that's a question that I don't have to answer.

0.48

When Lamport shared the bakery algorithm proof with colleague Anatol Hol, the result was so remarkable that Hol didn't believe it, took it home to find the error, but never found anything wrong with it.

factualhigh valuespeaker onlynovelty 1/4durability 3/4· Leslie Lamport

you shared it with a colleague named Anatol Hol and the proof was so remarkable that uh they didn't believe it and uh you know I wrote the proof on the on the whiteboard for him and you know he couldn't find it but he went home and saying there must be something wrong with it and uh he obviously never found anything wrong with it.

0.48

At the time (1975) Lamport developed his Byzantine algorithm, very few people knew about digital signatures; he learned about them from Whitfield Diffie, a friend, who described the unsolved problem of how to sign messages; Lamport sat down and sketched out the first digital signature algorithm on a napkin.

factualhigh valuespeaker onlynovelty 1/4durability 3/4· Leslie Lamport

very few people know knew about digital signatures and in fact I don't remember when the Diffy Helman paper was published but it was around 1975 and I happen to know about digital signatures because Whit Diffy who was one of the author two authors of that paper uh was a friend of mine and in fact at one point we were at a coffee house uh and he was describing these things that he said we have this problem of building digital signatures uh you know we haven't solved and I said oh that seems easy enough and uh and I sat down and literally on a napkin I wrote out a a you know the first digital signature algorithm.

0.48

Lamport chose to emphasize the Byzantine generals problem with a catchy story (following Dijkstra's example with the dining philosophers) because he believed the problem's importance wasn't obvious and a narrative would make it memorable and widely understood.

normativehigh valuespeaker onlynovelty 1/4durability 3/4· Leslie Lamport

I learned one thing from Dystra. uh Dy, you know, one of the things I learned from Dystra, he wrote this paper called the the dining philosophers problem. And that paper got a lot of attention, but the dining philosophers problem, I won't go into what it is, but I think the basic problem uh was not particularly interesting, but it had a cute story to it. It involved a bunch of philosophers sitting around a table with uh some funny kind of spaghetti that it required two forks and there was one fork between you know each fork would be shared with two people and uh but and I think realized it was because of that cute story that that problem was was popular. And so I decided that you know this this our work needed a cute story you know a nice story and I in invented Byzantine generals with the idea being that you have a group of you know for the for the one failure case you have four generals who have to agree whether or not to attack.

0.46

Lamport never seriously considered an academic career in computer science, preferring to work in industry; he initially didn't realize that computer science was an academic field and didn't see it as something people needed to study at a university.

factualhigh valuespeaker onlynovelty 1/4durability 4/4· Leslie Lamport

Throughout my career, I worked for private companies, you know, not, you know, not in academia or or for the government. Uh, and so some problems arose because of, you know, sometimes, you know, an engineer would have a problem and come come to me. And so, uh, you know, DIS Paxos, for example, was was a case of that that somebody actually wanted an algorithm to do what it did. You mentioned earlier Paxos and I know that's one of your your most famous uh works. Curious about the story behind maybe that paper and the problem you're solving.

0.46

Lamport wanted to develop a grand unified theory of concurrency (like the Turing machine for sequential computing) but never found it, which made him feel like a failure; many other researchers pursued the same goal via Petri nets and other approaches, all unsuccessfully.

factualhigh valuespeaker onlynovelty 1/4durability 4/4· Leslie Lamport

lots of people who you know a large percentage of the people who were doing things like I was doing which is not a large number of people uh there's this notion that uh they're looking for the touring machine of concurrency you know the touring machine was this abstraction which really captured what computing was uh and they were looking for something that would be the you know the touring machine of of concurrent computing and you know nobody succeeded. I mean there are some people who think they've succeeded. Uh the patronets are are something that uh I guess I don't have time to to explain but uh there was a big it was big in the 70s. Uh, and I was actually surprised to think that there's still a large community of people doing uh, patriets.

0.46

Lamport now believes that state machines (described not with commands and values but simply as a state and a next-state relation) are the 'Turing machine of concurrency'—the foundational abstraction for concurrent computing.

factualhigh valuespeaker onlynovelty 1/4durability 4/4· Leslie Lamport

I realized in some sense you know maybe I've realized what the touring machine of of of computing is state machines. Uh state machines are a little bit different the way I now describe them. They don't have commands. They just have a state and a and a next state relation.

0.37

Dijkstra's EWDs (Edsger W. Dijkstra's notes) were informal papers he would write when he had an idea and send out to colleagues and mentees—a network-based mode of knowledge sharing predating email.

definitionestablishednovelty 0/4durability 3/4· Leslie Lamport

Dyster used to had the things they're called EWDs his initials. little papers, things that when he he thought of something, had some idea, he would write it down and send it out to people.

0.37

Petri nets were a major candidate for the 'Turing machine of concurrency' and were very popular in the 1970s, but Lamport notes there is still a large community working on Petri nets today.

factualestablishednovelty 0/4durability 3/4· Leslie Lamport

The patronets are are something that uh I guess I don't have time to to explain but uh there was a big it was big in the 70s. Uh, and I was actually surprised to think that there's still a large community of people doing uh, patriets.

0.29

Lamport's initial digital signature algorithm was impractical because it required roughly 128 bits to sign a single bit of data; however, by hashing documents first (using a one-way hash that cannot be forged or reversed), the overhead becomes manageable.

factualestablishednovelty 0/4durability 3/4· Leslie Lamport

It was not practical at the time because it it required basically something like uh you know 128 bits to sign one bit of the you know of of the thing they're signing. It's not quite that bad because you know as you might think because you could use sign not a the entire dent document but a hash of that document which you assume you know people cannot forge uh the hash they can't reverse

0.29

Butler Lampson deserved his Turing Award for his contributions to distributed personal computing and systems building; he was one of the two senior figures at Xerox Park (along with Chuck Thacker) who pioneered the field.

factualestablishednovelty 0/4durability 3/4· Leslie Lamport

Well, he had a good understanding of building systems, you know, he really deserved his touring award. He was one of the original people at Xerox Park who were building distributed uh personal computing. He and Chuck Thacker, I think, were probably the two senior people, you know, in that lab.

0.26

In 1976, Lamport visited the Netherlands and worked with Carl Holt (not Dijkstra directly) for a month, meeting with Dijkstra once a week, and produced one published paper—a variant of the bakery algorithm—as the only tangible result.

factualspeaker onlynovelty 0/4durability 3/4· Leslie Lamport

I was invited to uh spend a month uh but not with Dysterra, with a colleague of his, Carl Carl Holton. Only one thing that was ever published came out of that. Carl and I would uh meet with Dystra once a week. Uh in the in the course of that discussion, the idea somehow came up that led to uh a variant of the bakery algorithm that I wrote up and published. Uh so that was the the one tangible result that that came from my month in uh the Netherlands.

0.26

Lamport created LaTeX in his 'spare time' over six or nine months, but admits he was 'allegedly billing the time to some project that had nothing to do with it'—suggesting he worked on it while officially assigned elsewhere.

factualspeaker onlynovelty 0/4durability 3/4· Leslie Lamport

You know, basically I just did that in my quote spare time. You know, took me six or nine months or so. I I suppose the uh statute of limitations has run out, but I was really, you know, spent some time working on that when I was allegedly, you know, billing the time to some project that had nothing to do with it.

0.20

Lamport named the problem 'Byzantine generals' instead of 'Albanian generals' (his initial idea) because his boss objected that Albanians exist in the world; 'Byzantine' was perfect because Byzantines no longer exist, making the fictional scenario clearly abstract.

factualspeaker onlynovelty 0/4durability 3/4· Leslie Lamport

I actually initially thought of the idea of Albanian generals because at that time Albania was a black hole as far as the rest of the world was concerned. It was a communist regime, a part of the the Soviet uh block, but it was even more Soviet than the Soviet Republic and and and you know, more restrictive. So someone uh my boss said, 'Well, you know, there are Albanians in the world, so shouldn't that so should have a different name?' And then I I realized that Byzantine there aren't any Byzantiums Byzantines around and that was the perfect name.

0.20

Raft is described as 'basically Paxos but with some of the tales left unfinished by the Paxos paper filled in,' presenting the same concepts but in a different order that appeals more to engineers.

factualspeaker onlynovelty 0/4durability 3/4· Leslie Lamport

someone whose judgment I value said you know had read it and said that it's basically it's it's the Paxos paper but no but with some of the tales left unfinished by the Paxos paper uh by uh you know filled some of the tales filled in but they you know described it in a in a very different

0.20

Peter Gordon from Addison-Wesley convinced Lamport to write a book about LaTeX, introducing him to a typographic designer whose work defined the standard LaTeX typographic design.

factualspeaker onlynovelty 0/4durability 3/4· Leslie Lamport

I actually at some point, uh, I met Peter Gordon, Addison Wesley, uh, I'm not sure what what you would call him, but he looks for, you know, books to publish. And, uh, he convinced me that I should write a book on it. And those days, it never occurred to me people would actually spend money for a book about software. But you know what the hell? And what he did was he introduced me to uh a typographic designer at uh Addison Wesley who was responsible for really for the typographic design that's in the standard uh latex styles.