The Two Generals’ Problem


Comments • 2 144

  • 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  5 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  5 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  5 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  5 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  5 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

  • AnotherTargaryen
    AnotherTargaryen  52 minutes back

    “This guy is such a nerd”

    • Caleb Conner
      Caleb Conner  3 hours back

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

      • KidUKnott
        KidUKnott  11 hours back

        A top video.

        • Derick Mungai
          Derick Mungai  12 hours back

          Enjoying the concept.

          • Kevin Chiu
            Kevin Chiu  13 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  14 hours back

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

              • fixedG
                fixedG  15 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  16 hours back

                  "The two genders"

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

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

                    • MadSam !
                      MadSam !  21 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  3 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  6 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.