S01 E20
1 Nov 2021/01:30:54

On Code Review


Oxide and Friends Twitter Space: November 1st, 2021

On Code Review
We’ve been holding a Twitter Space weekly on Mondays at 5p for about an hour. Even though it’s not (yet?) a feature of Twitter Spaces, we have been recording them all; here is the recording for our Twitter Space for November 1st, 2021.
In addition to Bryan Cantrill and Adam Leventhal, speakers on November 1st included Kendall Morgan, Edwin Peer, Ryan Zezeski, Ian, Joshua Hoeflich, ZK Miyavi, Jason Ozolins, Nick Sherron and Austin Wise. (Did we miss your name and/or get it wrong? Drop a PR!)
Some of the topics we hit on, in the order that we hit them:
  • Context tweet
  • Kendall Morgan (2021) “Thoughts on Code Review” essay
  • [@3:57](https://youtu.be/JZdXDyeSvtc?t=237) Adam’s story, first code review at Sun
  • [@6:32](https://youtu.be/JZdXDyeSvtc?t=392) Choosing a reviewer
  • [@9:43](https://youtu.be/JZdXDyeSvtc?t=583) Unblocking others. Empathy in feedback. Asking questions, learning.
  • [@15:43](https://youtu.be/JZdXDyeSvtc?t=943) Bryan reviewing Jeff Bonwick’s code at Sun 
    • Odd working hours
    • Screaming Red Chairs
  • [@19:47](https://youtu.be/JZdXDyeSvtc?t=1187) In-person code review vs digitized. Tools
  • [@24:29](https://youtu.be/JZdXDyeSvtc?t=1469) Not just finding bugs. Darin’s Law
  • [@25:59](https://youtu.be/JZdXDyeSvtc?t=1559) Adam’s story around a bug in a big diff, tracepoints in the kernel
  • [@32:28](https://youtu.be/JZdXDyeSvtc?t=1948) Adam’s favorite useless code review comment 
    • Marginally useful changes, what to do with multiple good alternatives
    • Matters of style and taste > Joe Kowalski: Is there a problem with this code, or is it not > implemented the way you would implement it?
  • [@38:41](https://youtu.be/JZdXDyeSvtc?t=2321) Ian on tools. Different languages, mediums. loom for short video messages
  • [@44:37](https://youtu.be/JZdXDyeSvtc?t=2677) Tools designed for specific tasks. 
  • [@49:31](https://youtu.be/JZdXDyeSvtc?t=2971) Jason’s story about HPE project with SCSI bug. Patch submitted to kernel group
  • [@54:59](https://youtu.be/JZdXDyeSvtc?t=3299) Bryan’s story about an n^3 algorithm in SCSI target code
  • [@56:55](https://youtu.be/JZdXDyeSvtc?t=3415) Rust compiler, resource awareness, error paths 
    • Often more modular than C code
    • rust-analyzer, seeing inferred types
  • [@1:01:15](https://youtu.be/JZdXDyeSvtc?t=3675) Joshua’s experience with in-person reviews, whiteboarding 
    • Working arm-in-arm with people
    • Sourcegraph Dev Tool Time videos
  • [@1:05:21](https://youtu.be/JZdXDyeSvtc?t=3921) How do you scale quality code review in bigger teams? 
    • Culture of code review at a company
  • [@1:07:15](https://youtu.be/JZdXDyeSvtc?t=4035) How to convince your team of the value of code review? 
    • Review can catch bugs
    • Cross team knowledge, bus factor
    • Speed in the short term vs speed in the long term
  • [@1:14:39](https://youtu.be/JZdXDyeSvtc?t=4479) Ian on cultivating organizational review practices
  • [@1:16:32](https://youtu.be/JZdXDyeSvtc?t=4592) Austin’s story on assuaging management fears around new practices 
    • Joshua: communication, writing, and accountability
    • What code don’t we review?
  • Code review as quality check
  • [@1:23:55](https://youtu.be/JZdXDyeSvtc?t=5035) Engineering product quality, not always obviously of benefit to the business 
    • Skipping code reviews to show quality consequences
  • Adopting code review practices, incrementally
If we got something wrong or missed something, please file a PR! Our next Twitter space will likely be on Monday at 5p Pacific Time; stay tuned to our Twitter feeds for details. We’d love to have you join us, as we always love to hear from new speakers!