Slide 1

Slide 1 text

教育的コードレビュー されてみた / してみた 白栁隆司 2021年12月1日 コードレビュー LT会 #codereviewlt

Slide 2

Slide 2 text

自己紹介 エンジニアカウンセラー 白栁 隆司 Youtubeに動画投稿中! コレざまTVチャンネル or 白栁隆司 で検索! @IT 自分戦略研究所 エンジニアライフにて「コレがワタシの生きる様」連載中(木曜日) ITエンジニアが永く活動する為のサポート活動 主に4つのことを、ITエンジニアに勧めています 1. 傾聴ベースのコミュニケーション 2. メンタルヘルス(セルフケア) 3. セルフマネジメント 4. 日々の生活の中からエンジニアリングを学ぶ

Slide 3

Slide 3 text

お品書き ● 前半: 教育的コードレビューをされてみた話(20年前) ● 後半: 教育的コードレビューをしてみた話(最近) ● まとめ

Slide 4

Slide 4 text

「教育的コードレビュー」とは ● 新人研修やOTJの一環として行われるコードレビュー ○ この場における造語 ○ 一般的なコードレビューと区別したかった ● 先輩や上位役職者による指導・改善・ノウハウ の伝授を目的としたコードレビュー

Slide 5

Slide 5 text

教育的コードレビュー をされてみた話

Slide 6

Slide 6 text

ある日、突然コードレビューを受けた ● 若手に向けて唐突にコードレビューが始まった ● コードには自信があるマン、俺(当時・2000年頃) ○ コードは短い方が素晴らしい主義 ○ 効率的なコード書ける俺、素晴らしい! ○ コメント?コード読んで判るだろ??

Slide 7

Slide 7 text

結果、フルボッコ ● コードを圧縮するのは1世代前の考え方(当時) ○ 汎用機や古いPCでリソースに限りがあるケース ○ Windowsプログラミングなら、読みやすさ優先 ■ 潤沢なリソースなら意識を下げていい ■ 「メンテナンス性重視」という考え方

Slide 8

Slide 8 text

教育的レビューを受けて良かったこと ● コードの書き方の価値観が増えた ○ 独学だと「効率的なコード=善」になりがち ○ 短いコードが必ずしも良いわけではない ● コードを書く際に取れる手段が増えた ○ その後のSES生活でとても役立った

Slide 9

Slide 9 text

教育的コードレビュー をしてみた話

Slide 10

Slide 10 text

新人からコードレビューを依頼された ● お世話になっている現場で別の会社の新人さんに コードレビューを依頼された(関係者許可済) ○ そこそこ自分で考えてコードを書ける人 ○ 実務のコードではなく研修課題のコード ○ 課題文とコードを見ながらのレビュー

Slide 11

Slide 11 text

レビューの際に意識をしたこと ● コードレビューにおいて何をすべきかの確認 ○ 当人、当人の上司との意識合わせ ● マウントを取って貶そうと思えばいくらでも…… ○ それをして意味があるのか? ● 褒めるべきところはしっかりと褒める!←大事

Slide 12

Slide 12 text

レビューの際にしたこと(1/2) ● 時間を区切ってレビューを行う ○ だらだら全てのコードをレビューする必要性→無 ● オブザーバーを1人置く ○ やり過ぎ防止 ※特に他社の新人には… ○ 指摘事項の共有 → 今後のOJTにも役立つ

Slide 13

Slide 13 text

レビューの際にしたこと(2/2) ● 最初に当人からコードの説明をさせる ○ 「なんとなく」で書いていないことの確認 ○ 自身の作業を振り返る時間となる ● 指摘のレベルを提示 ※当然、理由も! ○ 絶対直す・直した方が好ましい・個人の趣味

Slide 14

Slide 14 text

レビューの成果 その後、白栁がその現場から抜けてしまったので     結果が伴わない共有でごめんなさい! 分かりません!

Slide 15

Slide 15 text

まとめ ● 学習初期に行う教育的コードレビューには、 とても効果がある(はず)!※白栁の体験より ○ 変な癖が付く前にやった方がいい ● なんの為にするのか、意識合わせをしよう ● 褒めるの大事!貶し合いに意味はありません

Slide 16

Slide 16 text

ご清聴ありがとうございました エンジニアカウンセラー 白栁隆司 @ShirayanagiRyuj 心当たりのある方の「その後」の連絡、お待ちしています