The Two Generals’ Problem


Comments • 2 143

  • Tom Scott
    Tom Scott   1 months back

    Yes, I had help with the graphics for this series. There's no way I'd have animated that myself! On that note, thanks to Dashlane for sponsoring and helping me hire an animator: their free trial link is

    • Sweet's Channel
      Sweet's Channel  4 days back

      @Masked Death True... I admit that the reply was a bit aggressive. I Should have been more polite from the start. Have a nice day 😊👌

    • Masked Death
      Masked Death  4 days back

      @Sweet's Channel no problem, mistakes happen, sorry for lashing out - your reply was a bit aggressive and it caught me off guard. My bad.

    • Sweet's Channel
      Sweet's Channel  4 days back

      @Masked Death oh... now I understand. your talking about the sponsor of the video. I'm sorry 😔

    • Sweet's Channel
      Sweet's Channel  4 days back

      @Masked Death No it doesn't. the issue talked about in the video... starting at 3:00 it has to do with the implementation of Fetch/Ajax/Json

      the coder should have made sure that communication works as it should with some sort of REST API Tester example with Restlet Client or postman

      I'm not aggressive but frustrated because the app you are talking about is app for end user and not a coders broblem

    • Masked Death
      Masked Death  4 days back

      @Sweet's Channel yes it does, it's an alternative to Dashlane except you don't have to pay for it. Not sure why your response is so aggressive unless you're shilling for Dashlane tho

  • Caleb Conner
    Caleb Conner  56 minutes back

    Send 1messenger from each side. They agree, they then return to their generals and then deliver message

    • KidUKnott
      KidUKnott  9 hours back

      A top video.

      • Derick Mungai
        Derick Mungai  11 hours back

        Enjoying the concept.

        • Kevin Chiu
          Kevin Chiu  11 hours back

          why can't messenger A go back the same path with messenger B, or go back alone to verify the acknowledgement?

          • On Sonority
            On Sonority  12 hours back

            Simple solution.....walk down to the take away

            • fixedG
              fixedG  14 hours back

              Fun fact: I work in the payments industry and your card authorization for each of those orders also represents another two generals problem between the app and your bank to approve or deny the charge. That's why money doesn't move until the transaction settles later.

              • Luso1221
                Luso1221  14 hours back

                "The two genders"

                • Dank memes in my dreams
                  Dank memes in my dreams  19 hours back

                  The two Generals could send a messeanger to meet at the middel, and turn back with their message.

                  • MadSam !
                    MadSam !  19 hours back

                    And if after they meet, one gets spotted and killed??

                • Andrew Blucher
                  Andrew Blucher  1 days back

                  "A single human error is never the root cause"

                  This applies to almost everything.

                  • Netbattler11
                    Netbattler11  1 days back

                    you know this really seems like something which should have been at least mentioned in passing in my CS curriculum

                    • Jeff Sergeant
                      Jeff Sergeant  2 days back

                      If Dashlane is compromised, an unauthorised update to the App could be sent which takes your master password and sends it in plaintext to the attacker; it’s much easier to break than you imply... that’s just one attack I thought up in about 5 seconds! you know no system is perfectly secure, such a sell-out move... to imply it is just because they’re sponsoring you

                      • Bibi Mizrah
                        Bibi Mizrah  2 days back

                        Dash Lane is good. If you want self hosted multi device password manager that’s open source I recommend Bitwarden

                        • deka W
                          deka W  2 days back

                          Are you sure you want to send this form again?

                          • 607
                            607  3 days back

                            Ah! When I was in Rome in 2016 with school (a Dutch school), a few text messages sent to me on one of the days, from two different people, arrived 3-6 times each, with an interval between each time that seemed to increase. Maybe that could have been solved by such an idempotency key system! In fact, maybe the messages _do_ have one, but my phone simply doesn't do anything with it.

                            • blooDDragoNNetwork
                              blooDDragoNNetwork  3 days back

                              This guy is something between 20 and 60 years old i cant tell

                              • ben brunyee
                                ben brunyee  3 days back

                                Try IBM MQ

                                • Burning Wang
                                  Burning Wang  3 days back

                                  I use just eat, never used Deliveroo so I’m reet

                                  • Bernd Knauer
                                    Bernd Knauer  3 days back

                                    Send smoke signals, PrObLeM SoLvEd

                                    • Christian Rasmussen
                                      Christian Rasmussen  3 days back

                                      Neat. I'll float this to pupils who might appreciate this kind of problem. :)

                                      • Stephen Cooper
                                        Stephen Cooper  3 days back

                                        There is a fix though, General A just sends the messenger over and over again until they receive a reply?! General B knows that as long as the message keeps arriving then his own messenger hasn't gotten through?!

                                        • Twisted Tachyon
                                          Twisted Tachyon  2 days back

                                          Huh. That's idempotency for generals, isn't it? Neat.

                                      • Lysergesaure1
                                        Lysergesaure1  3 days back

                                        7:40 you can definitely bribe the company to make the app send the master pasword to their servers, and none would be the wiser. Use something open source, and audited.

                                        • Guinness
                                          Guinness  3 days back

                                          What you're saying is use the order, user and date but not the time add the key?

                                          • Guinness
                                            Guinness  3 days back

                                            Easy way to run a scam

                                            • Dominic Quick
                                              Dominic Quick  3 days back

                                              Make sure the same soldier gets back?

                                              • Ahmad Pujianto
                                                Ahmad Pujianto  4 days back

                                                This is quiet a basic thing for payment gateway.. System should consider multiple order as a sign of failure, either in user device or on any infrastructure within the system itself.

                                                • فاء بن ألف'
                                                  فاء بن ألف'  4 days back

                                                  Can’t just 1 red messenger send the message then come back?

                                                  • فاء بن ألف'
                                                    فاء بن ألف'  4 days back

                                                    And if they want confirmation the blue’s would send one and verify it then go back, it doesn’t have to arrive even; both of them would attack anyway and they’ll win

                                                • Souvik Aswad
                                                  Souvik Aswad  4 days back

                                                  Great video!

                                                  • J Espinola
                                                    J Espinola  4 days back

                                                    How did this not happen sooner?

                                                    • Yasir Arshad
                                                      Yasir Arshad  4 days back

                                                      So like free food?

                                                      • Silverwolf0080
                                                        Silverwolf0080  4 days back

                                                        So what would be the equivalent of the idempotency for the two generals. Damn it, now I'm gonna be thinking about that all day.

                                                        • Brian Bacc
                                                          Brian Bacc  4 days back

                                                          you're awesome subbed and liked

                                                          • gepisar
                                                            gepisar  5 days back

                                                            !! I just came from another one of your videos that warns us not say "Tired and Emotional"... i think i know what you mean by "Tired and Exhausted" AND "Tired and Hungry"... is this self-libel?

                                                            • Autotrope
                                                              Autotrope  5 days back

                                                              By your own description of the two generals problem, an idempotency token does not solve the problem.

                                                              • alex chamber
                                                                alex chamber  5 days back

                                                                Why don't you keep acknowledging until everyone has more than 3 ack-ah...

                                                                Why don't you send 20 messengers at once? One will get through.... Ah, that too.

                                                                Right time to watch the solution.

                                                                • jammin023
                                                                  jammin023  5 days back

                                                                  I wish these videos had been around back when I was doing Soft Eng at uni... your explanations are so much clearer than my lecturers could manage!

                                                                  • Orion Red
                                                                    Orion Red  5 days back

                                                                    This is exactly how I ended up with two gallons of milk in my fridge and two loaves of bread in my cupboard last week. It's also how I ended up with a gallon of spoiled milk and a loaf of stale bread this week.

                                                                    • ruwiki
                                                                      ruwiki  5 days back

                                                                      "it's unsolveable"

                                                                      me at 2 am: well, there must be a way ...

                                                                      • Stephen Cooper
                                                                        Stephen Cooper  3 days back

                                                                        General A just sends the messenger over and over again until they receive a reply?! General B knows that as long as the message keeps arriving then his own messenger hasn't gotten through?

                                                                    • Oz El Coskuner
                                                                      Oz El Coskuner  5 days back

                                                                      Just giving thumbs down for showing 2 long (unskippable) ads. I hope creators puts some pressure on YouTube. Because YouTube literally don't give a damn about feelings of customers who are not paying. WHY WE STARTED WATCHING YOUTUBE? The biggest argument was "so that you don't have to watch long commercials of TV and get brainwashed". Now average ad on YouTube is surpassing TV. Anyway, since I got Amazon prime, I reduced YouTube time to 2 hours a week. Much happier. And I will never pay for YouTube, just because their approach. You cannot shove your will down to people's throat and expect success. When I see YouTube logo, I see a RABID DOG with dollar symbols on his red eyes. Disgusting.

                                                                      • John Dean
                                                                        John Dean  5 days back

                                                                        There IS answer to the Two Generals' Problem: go to your local chippie.

                                                                        • Airpolygon
                                                                          Airpolygon  5 days back

                                                                          Very interesting!

                                                                          • Rens Breur
                                                                            Rens Breur  5 days back

                                                                            But this anecdote isn't REALLY an example of the two generals problem right? The only 'attacker' is the server processing the order request. The two generals problem can't be solved by using a unique key.

                                                                            • Joseph Thomas
                                                                              Joseph Thomas  5 days back

                                                                              Can you find a different shirt?

                                                                              • iammaxhailme
                                                                                iammaxhailme  6 days back

                                                                                "Next time, I'll just cook for myself"

                                                                                Or, you can just call the restaurant and place your order verbally. Magic!

                                                                                I don't know how it is in the UK, but in NYC you sometimes get it a bit cheaper this way becuase apps take a cut

                                                                                • Jonathan Tikhonoff
                                                                                  Jonathan Tikhonoff  6 days back

                                                                                  Actually the two general story is already solved through encryption system. I know of one encryption system that can confirm to both users at same time that each other got the message. I assume that Deliveroo didn't use such encryption because it might be thought of as a bit too complicated and too costly for such simple service.

                                                                                  Source: I took cryptography class few years ago so my memory are a bit shaky on details but I clearly remembered Bob, Alice, and Oscar model system about this problem.

                                                                                  • Nubby Tope
                                                                                    Nubby Tope  6 days back

                                                                                    The main problem is that they built a castle in a valley.

                                                                                    • ruwiki
                                                                                      ruwiki  5 days back

                                                                                      @Nubby Tope as well

                                                                                    • Nubby Tope
                                                                                      Nubby Tope  5 days back

                                                                                      ruwiki - fortifications like castles are built on high ground.

                                                                                    • ruwiki
                                                                                      ruwiki  5 days back

                                                                                      why? to protect an important river crossing, for example.

                                                                                  • Zen Lucas-Divers
                                                                                    Zen Lucas-Divers  6 days back

                                                                                    wouldn't the best option to just meet somewhere else, send a message to one side and keep doing so until a messenger gets through and tell them to meet a one point so that you can attack together.

                                                                                    • M
                                                                                      M  6 days back

                                                                                      And then that "idempotency key" resets when you hit "try again" :D

                                                                                      • less kiss
                                                                                        less kiss  6 days back

                                                                                        The fact you spent £1,795 inc vat per minute of this videos graphics is beyond me