Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Get Your Patch Accepted
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Lorna Mitchell
August 22, 2015
Technology
1.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Get Your Patch Accepted
Code reviews and how to survive them (from Froscon 2015)
Lorna Mitchell
August 22, 2015
More Decks by Lorna Mitchell
See All by Lorna Mitchell
Introduction to OpenAPI Specification
lornajane
1
860
Create PDFs from markup with rst2pdf
lornajane
3
960
Serverless Microservices are the New Black
lornajane
3
180
Serverless Computing with Apache OpenWhisk
lornajane
0
170
Build A Serverless Data Pipeline
lornajane
1
890
SQL, NoSQL and Beyond
lornajane
0
1.2k
Build a Serverless Data Pipeline
lornajane
1
1.2k
Road Trip Through Database Country
lornajane
1
1.1k
Serverless Microservices Are The New Black
lornajane
1
190
Other Decks in Technology
See All in Technology
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
1
190
継続的なAIコスト最適化
bgpat
1
340
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.8k
夫婦で子育てするための育児標準化
codmoninc
PRO
0
340
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
200
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
110
Kiro Crewをはじめよう
kizawa2020
1
160
Local CI × GitHub Actions
gogutan
2
190
Rust で関数型ドメインモデリング
takonda
0
140
Running Kotlin + Quarkus with Lambda
nealle
1
3.7k
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
870
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
740
How to build a perfect <img>
jonoalderson
1
6.1k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Thoughts on Productivity
jonyablonski
76
5.4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Facilitating Awesome Meetings
lara
57
7.2k
A Modern Web Designer's Workflow
chriscoyier
699
190k
Building Adaptive Systems
keathley
44
3.2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
How to get your patch accepted Lorna Mitchell, August 2015
maintainer and team lead
unsolicited advice
stories
3 ingredients
code
words
perspective
what does it do?
feature/bug
ticket(s)?
If there aren't any acceptance criteria for your patch, invent
some
all the code
git diff master
git diff master...HEAD
tools
TOO BIG
common code mistakes
exotic code, no comments
Leaving commented code in your codebase is like leaving litter
on a campsite
variable named $x
contributing.md
can you break your code?
I can
missing data
permissions
user is an idiot
tests
coding standards
syntax check
The commit history in your branch will be part of
my project until the end of time
git reset --soft $(git merge-base master HEAD)
more info than diff
accurate
sane format
http://chris.beams.io/posts/git-commit/
SFW
apologies
will it merge?
git merge --no-commit --no-ff feature git merge --abort
fix it
rebase
A pull request is the opening line in a conversation
about a feature
source/target
diff
title
description
what does it do?
what will I observe?
why do I care?
code review
"review" vs "merge"
anyone
peer review vs gatekeepers
key skills
Being able to see what you're NOT looking at is
a reviewer's superpower
documentation
tests
database patch
deployability
template
email
report
monitoring
cron job
and if not ...
reject
automated build
constructive feedback
colleagues vs contributors
too much feedback
sandwich technique
harsh feedback
Pull requests have a lifecycle, be prepared to champion them
to the end
3 ingredients
code
words
perspective
Thankyou http://lornajane.net (also speaking about PHP7 tomorrow)