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
okuzawats
November 29, 2023
Programming
0
250
「勉強になった」で終わらせない、ストロングスタイルの勉強会
社内勉強会のノウハウ、公開しちゃいます!LT会
https://yumenosora.connpass.com/event/300021/
での発表資料です。
okuzawats
November 29, 2023
Tweet
Share
More Decks by okuzawats
See All by okuzawats
10年モノのAndroidアプリのコード品質を改善していく、3つの取り組み
okuzawats
0
1k
Androidアプリ開発におけるSonarCloudの活用
okuzawats
0
750
何故、UseCaseは1メソッドなのか
okuzawats
3
1.3k
例外を投げるな、値を返せ
okuzawats
9
7.4k
GitHub ActionsでAndroidアプリのテストを回しまくってたら全プロジェクトのCI/CDが完全停止する寸前だった件
okuzawats
0
350
Kotlinのifを愛でる
okuzawats
0
260
Say good-bye to Kotlin Android Extensions
okuzawats
0
190
KDoc in a nutshell
okuzawats
0
260
Other Decks in Programming
See All in Programming
【Go言語】golangci-lintの使い方
tomo1227
0
270
CSC307 Lecture 14
javiergs
PRO
0
220
英語
s_shimotori
1
220
入社1ヶ月でここまでやった!Findy Toolsインフラ支援の最適化
rvirus0817
6
1.4k
継続的な活動で築く地方エンジニアの道
myamashii
2
350
Javaの現状2024夏 / Java current status 2024 summer
kishida
4
1.4k
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Berlin
prof18
0
110
CSC307 Lecture 05
javiergs
PRO
0
210
12年前の『型システム入門』翻訳の思い出話
mame
11
1.2k
ドメイン駆動設計の実践
masuda220
PRO
17
5.1k
Mastering Developer Experience: A Roadmap for Success 【開発生産性Conference 2024】
findyinc
1
380
生成AIをkintoneに連携してみた
hideg
0
230
Featured
See All Featured
How GitHub Uses GitHub to Build GitHub
holman
471
290k
Testing 201, or: Great Expectations
jmmastey
33
6.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
28
2.2k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
Large-scale JavaScript Application Architecture
addyosmani
506
110k
The Language of Interfaces
destraynor
151
23k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
It's Worth the Effort
3n
181
27k
Into the Great Unknown - MozCon
thekraken
20
1.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
23
1.9k
Bash Introduction
62gerente
607
210k
Agile that works and the tools we love
rasmusluckow
325
20k
Transcript
「勉強になった」で終わらせない、ストロングスタイルの勉強会 社内勉強会のノウハウ、公開しちゃいます!LT会(2023/11/29) 奥澤 俊樹@Chatwork株式会社
自己紹介 • 奥澤 俊樹(@okuzawats) • Chatwork株式会社 ◦ 2022/09〜 • Androidアプリエンジニア
◦ モバイルアプリケーションアーキテクト ◦ Chatwork Android版アプリのアーキテクチャの改善と技術負債解消に取り組んでいます。
社内勉強会を開催した背景
何の勉強会を開催したか? 概要 「コードの読みやすさ」について学ぶ勉強会 目的 Chatwork Android版アプリは、10年を超える歴史のあるコードベースに、様々なバックグラウンドのメンバーがコミットしている中で、「コードの読みやすさ」について共通認識を育むことが今後の開発生産性の維持・向上につながると考えたため 対象 モバイルアプリ開発(特にAndroid)に関わるエンジニア(任意参加)
勉強会のきっかけ
勉強会のきっかけ
勉強会のきっかけ Chatwork Androidのリポジトリには生粋のAndroidアプリエンジニアもコミットするし、それ以外の多種多様なバックグラウンドを持ったエンジニアもコミットする。 各チーム・各人が好きなようにコードを書いてしまうと、特に他チームが書いたコードを読むための時間が増えていき、開発速度が低下していく懸念がある。 そのため、「コードの読みやすさ」についての認識を揃えた上で、コードベースの読みやすさを改善していきたい。
ここまでのまとめ コードの読みやすさに関する課題を解決し、開発速度を維持・向上していくため、「コードの読みやすさ」に関する勉強会を開催した。
社内勉強会で何をやったのか
勉強会の内容 「読みやすいコードのガイドライン」の著者・石川宗寿さんをお招きして、コードの読みやすさについての勉強会を開催しました - Chatwork Creator's Note https://creators-note.chatwork.com/entry/code-readability
勉強会の内容 石川宗寿, (2022), “読みやすいコードのガイドライン 持続的なソフトウェア開発のために”, 技術評論社
社内勉強会のスケジュール
勉強会のスケジュール - 1週間に1回 - 全4回 - 1回あたり2時間 - なるべく多くのメンバーが参加できるように配慮した結果、17:00〜19:00に開催した。 -
合計8時間
勉強会のスケジュール 前日まで 特に準備は必要なし。勉強会の中で考える時間を設けたいため。 当日 Miroを使ってリアルタイムで感想・質問を共有。 翌日 学んだこと、実践したいこと(アクション)を各自書き出して、共有。
None
None
None
勉強会開催後のふりかえり 終了後 参加者を集めて、ふりかえり。1回目〜4回目の勉強会開催後に書いた「学んだこと、実践したいこと」を思い出しながら、各自が実践していきたいことを共有する。
None
None
None
ふりかえり 1回1回の勉強会、勉強会全体でふりかえり、理解の促進と記憶の定着を図っている。 同様に、アクションの抽出も1回1回の勉強会と勉強会全体でそれぞれ行い、実践につながるようにしている。 「勉強になった」で終わらせず、組織の目標達成に繋がって、はじめてゴール。
今後の展望 実践から得られる知見を持ち寄ったり、新メンバー加入を経たりし ながら、同じテーマで勉強会自体もイテレーションしていけるとよ り実践的になると思ってます(まだ思ってるだけ)。
勉強会をやった結果
勉強会をやった結果 - コードレビューやペアプロの時に、「読みやすさ」の観点からのフィードバックが増えた(ような気がする)。自分がコードレビューする時も「読みやすさ」の観点 からレビューコメントを入れやすくなった。 - スタイルガイドの整備が重要という認識が得られ、「スタイルガイドの整備」というアクションを抽出した(WIP)。 - 大きなPull Requestがレビュー精度に与える影響を認識し、PRのサイズに気を配る用になった。Big PRには警告を出すようにした。
まとめ
まとめ - Chatwork Android版アプリに関わるチーム・メンバーが増えていく中で、開発生産性を維持・向上していくために「コードの読みやすさ」が課題になると感じ、勉 強会を開催した。 - 1回ごとに学んだことをふりかえり、記憶の定着と、アクションの抽出を図った。 - 全4回の勉強会終了後に勉強会全体をふりかえり、さらなる記憶の定着と、個人・チームのアクションの抽出を図った。 -
「勉強になった」で終わらせず、組織の目標達成につなげるような勉強会の設計を意識した。 - 勉強会もイテレーションしていきたい(今後の展望)。 - We Are Hiring! カジュアル面談で待ってます!
参考文献 - 「読みやすいコードのガイドライン」の著者・石川宗寿さんをお招きして、コードの読みやすさについての勉強会を開催しました - Chatwork Creator's Note, https://creators-note.chatwork.com/entry/code-readability (最終アクセス日:2023/11/07) -
石川宗寿, (2022), “読みやすいコードのガイドライン 持続的なソフトウェア開発のために”, 技術評論社