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
コードを見る!書く!見てもらう!で爆速ステップアップ!!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Sho Nagata
July 06, 2019
Programming
2.8k
1
Share
コードを見る!書く!見てもらう!で爆速ステップアップ!!
Sho Nagata
July 06, 2019
More Decks by Sho Nagata
See All by Sho Nagata
速く作れるかではなく、速く学べるか ― 学習ループを回すパイロットの途中報告
nagata03
0
370
30→150人のエンジニア組織拡大に伴うアジャイル文化を醸成する役割と取り組みの変化
nagata03
0
900
チームスローガンとその設計意図
nagata03
0
480
0→1フェーズのプロダクト開発のリアル
nagata03
0
320
スクラムマスターの悩みどころを赤裸々に告白します
nagata03
1
1.9k
SmartHRにおけるスクラムマスターへの道
nagata03
0
420
競技プログラミングにチャレンジ!
nagata03
0
460
1年間Rubyを使って印象的だったあれこれ
nagata03
0
490
Railsのコードを読んでみる vol.1
nagata03
0
460
Other Decks in Programming
See All in Programming
Sans tests, vos agents ne sont pas fiables
nabondance
0
150
AI Agent と正しく分析するための環境作り
yoshyum
2
580
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
300
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
1
910
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
250
Cloudflare で始める Data Platform
ta93abe
0
240
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
120
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
210
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
rio432
0
170
Are We Really Coding 10× Faster with AI?
kohzas
0
220
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
110
AIエージェントの隔離技術の徹底比較
kawayu
0
420
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
[SF Ruby Conf 2025] Rails X
palkan
2
1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
91
From π to Pie charts
rasagy
0
190
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
750
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
570
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
The Invisible Side of Design
smashingmag
302
52k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
コードを見る!書く!見てもらう! で爆速ステップアップ!! 2019.7.6 (Sat) Tama Ruby会議01 @s_naga03
コードレビューしてますか?
自分一人で出せる成長速度には限界がある
コードレビューは 自分が至っていないレベルへ “ジャンプ” できるチャンス
• 自分が持っていない知識、技術、経験を踏まえての指摘やアドバイス • 自分と他者との思考の共有
case1:ネストを作らない / 戻り値を明確に • 指摘 • 自分ならこんな風に書く → return nil
unless review_id.present? • ネストができない • nilが返ることが明記できる
case1:ネストを作らない / 戻り値を明確に レビュー前 レビュー後
case1:ネストを作らない / 戻り値を明確に • 教訓 • ネストは悪。フラットこそが正義! • 早めの return
で戻り値をわかりやすく!
case2:TPOに合わせよう • 指摘 • whereの引数が異なるだけなら2行書くのは冗長じゃない? • return もやや可読性を下げている気がする
case2:TPOに合わせよう レビュー前 レビュー後
case2:TPOに合わせよう • 教訓 • 良い悪いはケースバイケース • 大事なのは “読みやすいか” “メンテしやすいか”
case3:既存コードが最適解とは限らない • 指摘 • match マッチャ使おうぜ!
case3:既存コードが最適解とは限らない レビュー後 レビュー前
case3:既存コードが最適解とは限らない • 教訓 • 既存コードが最適解とは限らない • より良い書き方がないか常に追求せよ
RSpecといえば… ※ࣸਅຊਓͷྃঝΛಘͯ༻͍ͯ͠·͢
より “たくさん” の “効果的な” レビューのために
コードを見る! • 他の人はどんな書き方をしているのかな? • 会社 / システムのコーディング文化、作法 • 解答例の一つがそこにある
コードを書く! • 思いついたらまず書いてみる • とりあえず動くものをアウトプット • ブラッシュアップ
コードを見てもらう! • 恥を捨てる • 気になっている箇所はあらかじめコメントしておこう • 思考を言語化できるか
まとめ • 自分一人で出せる成長速度には限界がある • 周りの力を借りて爆速でステップアップしよう • 今回はレビューイの視点だったが、レビュアーもステップアップのチャンス
Who am I? • Sho Nagata • Backend Engineer@カカクコム •
食べログのマイクロサービス化を推進中 • Ruby / Rails(歴は10ヶ月) ˏs_naga03 Sho Nagata nagata03
Thank you!!