Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

How reviewing code makes me a better programmer!

1,317 views

Published on

PyGotham 2015

Many developers see code review as a way to keep code compliant and to reduce bugs, but code review can be so much more than that! In this talk, I’ll share how reviewing code became one of the most valuable ways for me to become a better programmer. I’ll cover how you can learn more from code review, how you can improve your skills as a reviewer, and how to influence your colleagues to give you better code review.

https://pygotham.org/2015/talks/215/how-reviewing-code-makes/

Published in: Technology
  • Be the first to comment

  • Be the first to like this

How reviewing code makes me a better programmer!

  1. 1. How$reviewing$code makes&me&a&be(er&programmer! Amy$Hanlon @amygdalama
  2. 2. receive&be(er&reviews become&a&be(er&reviewer get$more$value$out$of$code$review
  3. 3. Responsibili*es+of+the+reviewer 1. understand+the+change 2. keep+code+compliant 3. find+bugs 4. ✨+ask+clarifying+ques=ons+✨ 5. ✨+offer+sugges=ons+✨
  4. 4. Responsibili*es+of+the+reviewer 1. understand+the+change 2. keep+code+compliant 3. find+bugs 4. ✨+ask+clarifying+ques=ons+✨ 5. ✨+offer+sugges=ons+✨
  5. 5. give%context
  6. 6. make%small%changes
  7. 7. Responsibili*es+of+the+reviewer 1. understand+the+change 2. keep+code+compliant 3. find+bugs 4. ✨+ask+clarifying+ques=ons+✨ 5. ✨+offer+sugges=ons+✨
  8. 8. use$lin(ng$tools
  9. 9. Responsibili*es+of+the+reviewer 1. understand+the+change 2. keep+code+compliant 3. find+bugs 4. ✨+ask+clarifying+ques=ons+✨ 5. ✨+offer+sugges=ons+✨
  10. 10. write&tests
  11. 11. QA#your#changes
  12. 12. Recap:'authors 1.#give#context 2.#make#small#changes 3.#use#lin*ng#tools 4.#write#tests 5.#QA#your#changes
  13. 13. Authors
  14. 14. say$how$done$you$are
  15. 15. ask$for$specific$feedback
  16. 16. get$feedback$early$and$o0en
  17. 17. but$don't$work$too$far$upstream
  18. 18. get$a$micro+yes
  19. 19. welcome'ques+ons
  20. 20. Recap:'authors 1.#say#how#done#you#are 2.#ask#for#specific#feedback 3.#get#feedback#early#and#o2en 4.#but#don't#work#too#far#upstream 5.#get#a#micro-yes 6.#welcome#ques-ons
  21. 21. Reviewers
  22. 22. review&at&the&right&level&of&detail
  23. 23. if#the#code#is#confusing, it's%a%problem%with%the%code ...or$an$opportunity$to$learn!
  24. 24. beta%test'your'feedback
  25. 25. communicate*the*why, not$the$how
  26. 26. Recap:'reviewers 1.#review#at#the#right#level#of#detail 2.#if#the#code#is#confusing,#it's#a#problem#with#the#code ...or$an$opportunity$to$learn! 3.#beta(test#your#feedback 4.#communicate#the#why,#not#the#how
  27. 27. receive&be(er&reviews become&a&be(er&reviewer get$more$value$out$of$code$review
  28. 28. Thanks! Julia&Evans Kamal%Marhubi Sasha%Laundy Tania%Luna A.#Jesse#Jiryu#Davis
  29. 29. Thank&you! Amy$Hanlon @amygdalama
  30. 30. Resources(&(Related(Reading • Death'to'the'Rubber'Stamp'(or:'ques4ons'I'ask'myself'when' reviewing)'h@p://mathamy.com/deathEtoEtheErubberEstamp.html • The'Gentle'Art'of'Patch'Review'h@p://sarah.thesharps.us/ 2014/09/01/theEgentleEartEofEpatchEreview/ • Your'Brain's'API:'Giving'and'GeRng'Technical'Help'h@p:// blog.sashalaundy.com/talks/askingEhelping/ • Rebecca's'Rules'for'Contruc4ve'Code'Reviews'h@ps:// storify.com/ReBeccaOrg/rebeccaEsErulesEforEconstruc4veEcodeE
  31. 31. Photos h"p://media.wizards.com/images/magic/daily/li/li102_mindRot.jpg h"p://www.magic=ville.com/fr/carteart?ref=cmd056 h/p://archive.wizards.com/mtg/images/daily/boab/ boab85iugh576f8ghadsd.jpg h"p://getwallpapers.net/magic=the=gathering=artwork=mtg=jason= chan=wallpaper=33527/ h"p://teresenielsen.typepad.com/.a/ 6a00e54fd89cec88340147e233f3ca970b=500wi

×