$30 off During Our Annual Pro Sale. View Details »

Code Reviewing Like a Champion - DevopsDays Nashville

Code Reviewing Like a Champion - DevopsDays Nashville

These are the slides from my Devops Days Nashville presentation on code review.

External Links:

Yelp's Code Review Guidelines: https://engineeringblog.yelp.com/2017/11/code-review-guidelines.html
How to Use Code Review To Execute Someone's Soul: https://www.daedtech.com/how-to-use-a-code-review-to-execute-someones-soul/
Creating a Strong Code Review Culture: https://www.youtube.com/watch?v=PJjmw9TRB7s
Honesty, Kindness, Inspiration: Pick Three: https://www.youtube.com/watch?v=hP_2XKYia9I
bettercode.reviews: http://www.bettercode.reviews/
Giving and Getting Technical Help: https://www.youtube.com/watch?v=hY14Er6JX2s
Crucial Conversations: https://www.amazon.com/Crucial-Conversations-Talking-Stakes-Second/dp/0071771328/ref=sr_1_3?ie=UTF8&qid=1521932464&sr=8-3&keywords=crucial+conversations

maltzj

May 09, 2019
Tweet

More Decks by maltzj

Other Decks in Programming

Transcript

  1. Nuna | Confidential
    @maltzj
    Code Reviewing Like
    A Champion
    Jonathan Maltz
    @maltzj
    5-10-19
    AUTHOR DATE

    View Slide

  2. Nuna | Confidential
    @maltzj
    Why do code review?

    View Slide

  3. Nuna | Confidential
    @maltzj
    3
    Ensure Correctness

    View Slide

  4. Nuna | Confidential
    @maltzj
    4
    Improve Design

    View Slide

  5. Nuna | Confidential
    @maltzj
    5
    Share Knowledge

    View Slide

  6. Nuna | Confidential
    @maltzj
    How to do that?

    View Slide

  7. Nuna | Confidential
    @maltzj
    7
    Psychological Safety

    View Slide

  8. Nuna | Confidential
    @maltzj
    8
    Psychological safety is a shared belief that the team is
    safe for interpersonal risk taking. It can be defined as
    "being able to show and employ one's self without fear of
    negative consequences of self-image, status or career"
    (Kahn 1990, p. 708). In psychologically safe teams, team
    members feel accepted and respected.

    View Slide

  9. Nuna | Confidential
    @maltzj
    9
    Make People Feel
    Worse

    View Slide

  10. Nuna | Confidential
    @maltzj
    ● "Your code style here is inconsistent. Bring your code
    in line with our style guidelines."
    ● "This Dockerfile will take forever to build. Re-order it to
    make it faster"
    ● "Why did you do this refactor? The code was better in
    its previous form"
    How does that Manifest?
    10

    View Slide

  11. Nuna | Confidential
    @maltzj
    11

    View Slide

  12. Nuna | Confidential
    @maltzj
    12
    "This code is good, let's
    make it even better"

    View Slide

  13. Nuna | Confidential
    @maltzj
    3 Step Process

    View Slide

  14. Nuna | Confidential
    @maltzj
    14
    1. Start with Neutral
    Facts

    View Slide

  15. Nuna | Confidential
    @maltzj
    15
    This change uses Jenkins' scripted
    syntax rather than it's declarative
    syntax, which is being more widely
    adopted. Change it to use the
    declarative syntax.

    View Slide

  16. Nuna | Confidential
    @maltzj
    16
    Link to External
    Resources

    View Slide

  17. Nuna | Confidential
    @maltzj
    17

    View Slide

  18. Nuna | Confidential
    @maltzj
    18
    Opinions == Facts

    View Slide

  19. Nuna | Confidential
    @maltzj
    19
    ✅ You can do
    blue-green deploys
    using Docker
    containers and an ELB.

    View Slide

  20. Nuna | Confidential
    @maltzj
    20
    Docker containers
    and an ELB are the
    best way to do
    blue-green deploys.

    View Slide

  21. Nuna | Confidential
    @maltzj
    21
    2. Invite a Discussion

    View Slide

  22. Nuna | Confidential
    @maltzj
    22
    This change uses Jenkins' scripted
    syntax rather than it's declarative
    syntax, which is being more widely
    adopted. Can you change it to use
    the declarative syntax?

    View Slide

  23. Nuna | Confidential
    @maltzj
    23
    3. Replace "you" with
    "we" or "us"

    View Slide

  24. Nuna | Confidential
    @maltzj
    24
    This change uses Jenkins' scripted
    syntax rather than it's declarative
    syntax, which is being more widely
    adopted. Can we change it to use
    the declarative syntax?

    View Slide

  25. Nuna | Confidential
    @maltzj
    25

    View Slide

  26. Nuna | Confidential
    @maltzj
    26

    View Slide

  27. Nuna | Confidential
    @maltzj
    27
    Rule of 3

    View Slide

  28. Nuna | Confidential
    @maltzj
    ● Start with neutral facts
    ● Invite a discussion
    ● Replace "You" with "We" or "Us"
    ● Rule of 3
    Summary
    28

    View Slide

  29. Nuna | Confidential
    @maltzj
    ● Yelp's Code Review Guidelines
    ● How to Use Code Review To Execute Someone's Soul
    ● Creating a Strong Code Review Culture
    ● Honesty, Kindness, Inspiration: Pick Three
    ● Bettercode.reviews
    ● Giving and Getting Technical Help
    ● Crucial Conversations
    External Links
    29

    View Slide

  30. @maltzj
    @maltzj
    https://boards.greenhouse.io/nuna/
    https://boards.greenhouse.io/nuna/

    View Slide