I just liked the way of explaining it to laypeople. Leaving all mathematics behind, taking a model that everyone understands (and yes, some commentators are missing the point, discussing how it is possible to un-mix colors).
For example, it hadn't explicitly occurred to me that it would be easier to separate the colors than it would the numbers. Before reading these comments I was assuming that the factor I was missing had to do with separating the numbers becoming exponentially harder of a problem as the numbers grew larger. Reading about the discussion of this metaphor in the comments helped me realize that I was missing a deeper and essential part of this puzzle that I've been yearning to understand concretely for years.
Totally agree that the metaphor is an excellent start for the layperson.
The only way around it? Some other method of verifying the key, which isn't vulnerable to a MITM, like meeting in person, or using Certificate Authorities.
edit: I realize the salient point is that this gives you assurance that the encryption handshake hasn't be intercepted but no guarantee as to the identity of the person you've connected to. With real-time VoIP this potentially isn't a problem (yet) as it's relatively obvious who you're chatting to on the phone.
if you are saying that you plan to trust the MITM to give you the common color, then it's not a common color, it's not something you have in common with the party you wish to perform a key exchange with.
or to put it another way, notice that the protocol does not start out with "exchange a common color"
Hacker News is an English-language site. Obviously, content in other languages is often just as good or better. But it is what this site is. Machine translation is surprisingly not bad these days, but I don't think it's a general solution here.
I hadn't come across this kind of explanation and didn't think of checking Wikipedia.
I thought it was an original idea by the author.