Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Get Your Patch Accepted
Search
Lorna Mitchell
August 22, 2015
Technology
1
1k
Get Your Patch Accepted
Code reviews and how to survive them (from Froscon 2015)
Lorna Mitchell
August 22, 2015
Tweet
Share
More Decks by Lorna Mitchell
See All by Lorna Mitchell
Introduction to OpenAPI Specification
lornajane
1
770
Create PDFs from markup with rst2pdf
lornajane
3
810
Serverless Microservices are the New Black
lornajane
3
130
Serverless Computing with Apache OpenWhisk
lornajane
0
110
Build A Serverless Data Pipeline
lornajane
1
770
SQL, NoSQL and Beyond
lornajane
0
1.1k
Build a Serverless Data Pipeline
lornajane
1
1.1k
Road Trip Through Database Country
lornajane
1
970
Serverless Microservices Are The New Black
lornajane
1
140
Other Decks in Technology
See All in Technology
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
440
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
1
200
エラーとアクセシビリティ
schktjm
1
1.2k
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
210
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.1k
S3アクセス制御の設計ポイント
tommy0124
2
190
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
220
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
260
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
150
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
190
生成AIでセキュリティ運用を効率化する話
sakaitakeshi
0
500
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
1
230
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Building Applications with DynamoDB
mza
96
6.6k
How STYLIGHT went responsive
nonsquared
100
5.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Documentation Writing (for coders)
carmenintech
74
5k
We Have a Design System, Now What?
morganepeng
53
7.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Embracing the Ebb and Flow
colly
87
4.8k
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)