David Ashby on Understanding Real-World Concurrency Bugs in Go


Details
Greetings Papers We Love NYC and welcome to our first remote meetup!
This month we have a talk by David Ashby on Understanding Real-World Concurrency Bugs in Go. Check below for the details and links to the papers!
***
PLEASE NOTE: Even though this is a remote event, the Papers We Love code of conduct is still in effect in any chatrooms or forums associated with the meetup. Breaching the CoC is grounds to be ejected from the meetup at the organizers' discretion.
***
***
Understanding Real-World Concurrency Bugs in Go.
***
Authors: Tengfei Tu, Xiaoyu Liu, Linhai Song, and Yiying Zhang
This paper investigates whether go’s message-passing channel model leads to programmers making fewer concurrency mistakes by examining six real-world large-scale go code bases to see what sort of bugs they have to fix in practice. We’ll review the paper’s research and conclusions, dig into some of the code examples to make sure we understand how the various classes of bugs work, and take some side journeys into the history and influence of Hoare’s Communicating Sequential Processes, what happens when empirical research falls into the hands of its subjects, and the cutest little bunny mascot ever.
Paper: https://songlh.github.io/paper/go-study.pdf
Communicating Sequential Processes: https://www.cs.cmu.edu/~crary/819-f09/Hoare78.pdf
***
Speaker Bio
***
David Ashby is a “Senior Systems Engineer” at SageSure Insurance, which means he works on distributed authentication and authorization services all day. Lucky him! He’s also an organizer of Papers We Love NYC and PWLConf and previously gave a lightning talk at PWLNYC on implementing toy versions of SHA1 and SHA256 in Ruby (https://www.youtube.com/watch?v=KWH7HmvmQ6o). Not bad for an English major who dropped out of his first college. When not fighting with computers, he posts pictures of his cat Cricket on Instagram.

David Ashby on Understanding Real-World Concurrency Bugs in Go