David Ashby on Understanding Real-World Concurrency Bugs in Go [PWL NYC]

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.