effective code review (or how to alienate your coworkers)

18
# Effective Code Review (Or How To Alienate Your Coworkers) Geoff Nicol Security Architect Stewart Lord Principal Architect

Upload: perforce

Post on 17-Nov-2014

1.451 views

Category:

Technology


1 download

DESCRIPTION

In this talk, the architects of Perforce Swarm will guide you through the process of starting and updating a code review. They will also share some of their secrets for performing effective reviews. Learn how to start and update code reviews using Swarm, best practices for performing effective review, and the benefits of pre-commit automated testing and deployment.

TRANSCRIPT

Page 1: Effective Code Review (Or How To Alienate Your Coworkers)

#

Effective Code Review (Or How To Alienate Your Coworkers)

Geoff NicolSecurity Architect

Stewart LordPrincipal Architect

Page 2: Effective Code Review (Or How To Alienate Your Coworkers)

#

Geoff NicolPerforce Software

Stewart LordPerforce Software

Page 3: Effective Code Review (Or How To Alienate Your Coworkers)

#

1. Why do Code Review?2. Our Philosophy3. The 3 Key Steps4. Bonus Round!5. Questions

Overview

Page 4: Effective Code Review (Or How To Alienate Your Coworkers)

#

Why Do Code Review?

Page 5: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Bugs happen• Hard to fix when shipped• Builds a stronger team• Bottom line: cheap, good and fast!

Why Do Code Review?

Page 6: Effective Code Review (Or How To Alienate Your Coworkers)

#

• JPL estimates $25,000 saved per inspection• 55-60% defect detection rate• 14% more productivity, 90% fewer defects

Source: Code Complete by Steve McConnell

Why Do Code Review?

Page 7: Effective Code Review (Or How To Alienate Your Coworkers)

#

Our Philosophy

Page 8: Effective Code Review (Or How To Alienate Your Coworkers)

#

"Optimize user happiness to lines of code ratio"- Thomas Fuchs

• Quality before commit• Best UX possible• Learn from each other

Philosophy

Page 9: Effective Code Review (Or How To Alienate Your Coworkers)

#

The 3 Key Steps

Page 10: Effective Code Review (Or How To Alienate Your Coworkers)

#

1. Step away from the code2. Don’t look at the code3. Stare deeply into the code

The 3 Key Steps

Page 11: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Do we know enough?• Is it too big?• Side effects?• Roadmap?• Release cycle?

1. Step Away

Page 12: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Start with UX• Can UX be simplified?• Does it look good?• Look at API• Look at the context

2. Don’t Look

Page 13: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Inspect line by line• Simplify, simplify, simplify• Consider edge cases• Put your evil hat on

3. Stare Deeply (Logic)

Page 14: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Balance for readability• Ensure code is well commented• Would a var by any other name smell as sweet?

3. Stare Deeply (Finesse)

Page 15: Effective Code Review (Or How To Alienate Your Coworkers)

#

Bonus Round!

Page 16: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Ensure code has tests• Integrate tests with reviews• Integrate staging with reviews• Pair programming• Look at contributor guidelines

Much Bonus, So Round!

Page 17: Effective Code Review (Or How To Alienate Your Coworkers)

#

• Check your ego• Ask why• Iterate• Try try again• GIFs, Emojis, Memes, Youtube

With Coworkers Like These…

Page 18: Effective Code Review (Or How To Alienate Your Coworkers)

##

Thank you!Geoff [email protected]

Stewart [email protected]