PWL #67: Kademlia: A Peer-to-Peer Information System Based on the XOR Metric

Details
Details
• What we'll do
PWL Mini: Krishnamoorthy Venkatraman will be leading a discussion about Here We Go Again: Why Is It Difficult for Developers to Learn
Another Programming Language? (https://www.microsoft.com/en-us/research/uploads/prod/2020/05/herewegoagain_icse2020.pdf)
Once a programmer knows one language, they can leverage concepts and knowledge already learned, and easily pick up another programming language. But is that always the case? To understand if programmers have difficulty learning additional programming languages, we conducted an empirical study of Stack Overflow questions across 18 different programming languages. We hypothesized that previous knowledge could potentially interfere with learning a new programming language. From our inspection of 450 Stack Overflow questions, we found 276 instances of interference that occurred due to faulty assumptions originating from knowledge about a different language. To understand why these difficulties occurred, we conducted semi-structured interviews with 16 professional programmers. The interviews revealed that programmers make failed attempts to relate a new programming language with what they already know. Our findings inform design implications for technical authors, toolsmiths, and language designers, such as designing documentation and automated tools that reduce interference, anticipating uncommon language transitions during language design, and welcoming programmers not just into a language, but its entire ecosystem.
Main Event: Aaron David Goldman leading a discussion about Kademlia: A Peer-to-Peer Information System Based on the XOR Metric
Abstract:
We describe a peer-to-peer distributed hash table with provable consistency and performance in a fault-prone environment. Our system routes queries and locates nodes using a novel XOR-based metric topology that simplifies the algorithm and facilitates our proof. The topology has the property that every message exchanged conveys or reinforces useful contact information. The system exploits this information to send parallel, asynchronous query messages that tolerate node failures without imposing timeout delays on users.
Read the paper at https://link.springer.com/chapter/10.1007/3-540-45748-8_5
Keywords:
Distribute Hash Table, Replacement Cache, Close Node, Close Leaf, Empty Bucket
• Important to know:
As a chapter of Papers We Love we abide by and enforce the PWL Code of Conduct (https://github.com/papers-we-love/seattle/blob/master/code-of-conduct.md) at our events. Please give it a read, plan on acting like an adult, and involve one of the organizers if you need help.
Stop slacking and join us in the #seattle channel at https://papersweloveslack.herokuapp.com!
If you have a paper you'd like to present, or even just a mini, please hit up one of the organizers :) We're always looking for more presenters.

PWL #67: Kademlia: A Peer-to-Peer Information System Based on the XOR Metric