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
Shingo Tomioka
July 29, 2023
Programming
600
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モデルの説明コメントを書く文化が会社に浸透してきた話
TokyuRuby会議14 の LT (5分) で話したスライドです。
https://tokyurubykaigi.github.io/tokyu14/
Shingo Tomioka
July 29, 2023
More Decks by Shingo Tomioka
See All by Shingo Tomioka
Perk アプリの技術選定とリリースから1年弱経ってのふりかえり
stomk
0
590
Engagement 事業チーム の開発事情
stomk
0
200
7年間開発を続けるサービスを支える 負債返済日の取り組み
stomk
3
2.5k
A/Bテストをやるときに 気をつけていること
stomk
3
1.7k
Other Decks in Programming
See All in Programming
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
280
「人を評価する AI」の設計と実装
ryoyanara
0
220
プロポーザルを書いてもらう
pvcresin
0
560
Cloudflare is Agents
chimame
0
170
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
330
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
250
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
150
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
340
20260722_microCMSで考える、AI時代のコンテンツ運用設計
yosh1
0
430
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
310
仕様駆動開発の消費期限
watany
20
8.7k
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
550
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
410
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
What's in a price? How to price your products and services
michaelherold
247
13k
We Are The Robots
honzajavorek
0
300
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
The SEO identity crisis: Don't let AI make you average
varn
0
530
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
390
Into the Great Unknown - MozCon
thekraken
41
2.7k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
660
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
800
Transcript
© 2023 Wantedly, Inc. モデルの説明コメントを書く文化 が会社に浸透してきた話 TokyuRuby会議14 LT Jul. 29
2023 - 富岡 真悟
自己紹介 © 2023 Wantedly, Inc. 富岡 真悟 Wantedly, Inc. (2017~)
3~4年くらい前から顕著になってきた課題 モデルに関するドメイン知識がわからなくて 開発やデータ分析の効率が下がる • コードベースの大規模化 ◦ → 各メンバーが触ったことがない領域が増加 ◦ メインの
Rails アプリのモデル数が 400くらい • メンバーの入れ替わりの増加 ◦ 初期の土台を作ったメンバーの退職 ◦ 専門の PdM、データサイエンティスト、データアナリストなどもジョイン • コロナによるリモートワークの開始 ◦ → 詳しい人にさっと聞きにいく、がやりにくくなった © 2023 Wantedly, Inc. 背景 例:「このモデル何?」「このカラム何?」「このカラムが NULL になるのってどういうとき?」 ...
解決策 各モデルのソースコードの先頭に、 モデルの概要と各カラムの説明をコメントで書く © 2023 Wantedly, Inc. ⁝ 例: app/models/candidacy.rb
の先頭に...
解決策 © 2023 Wantedly, Inc. ① モデル名と日本語名 ② モデルの概要 •
どういう役割を持つのか • どういうときに作成/更新/ 削除されるのか • 外部ドキュメントのリンク • etc. ⁝
③ 各カラムの説明 解決策 © 2023 Wantedly, Inc. ⁝ ④ 今は使われてないカラム
の説明
• 実装に近い場所にあるので、 ◦ 参照しやすい ◦ 更新されやすい = 風化しにくい ソースコードにコメントで書くことの利点 -
外部ドキュメントに書く場合と比較して © 2023 Wantedly, Inc.
ただし モデルの数が膨大 (400くらい)。 一つ一つ調べて書いていくのは 手間がかかる... © 2023 Wantedly, Inc.
どのように増やしてきたか • 毎月の負債返済日に書く • 調べたときについでに書く • 詳しくない領域を触ることになったときに調べて書く • 退職する人に詳しいところを書いていってもらう •
etc. © 2023 Wantedly, Inc.
取り組みを開始してから約3年 - 今どれくらいになったか • 重要度の高いモデルはおおよそカバーされてきた • 割合で言うと2割くらい ◦ 100% にならなくてもいい
© 2023 Wantedly, Inc.
結果 開発もデータ分析も一定効率が上がった © 2023 Wantedly, Inc.
社内の声を抜粋 ① © 2023 Wantedly, Inc.
社内の声を抜粋 ② © 2023 Wantedly, Inc.
• あんまり詳しくない領域を触ることになったときにばっと調 べて書く、というムーブが自然に起きるようになってきた ◦ 「◯◯機能のリニューアルをするので、土台作りに、モデルを調べ てコメント書きます」 ◦ 書くということが文化して根付いてきた 個人的によかったと思っていること ©
2023 Wantedly, Inc.
なぜ自然に書くムーブが起きるようになってきたか © 2023 Wantedly, Inc.
まとめ © 2023 Wantedly, Inc. • 開発やデータ分析をしやすくするために、モデルのソースコードにコメント で説明を書く取り組みを始めた • 2~3年かけて、皆が恩恵を感じるようになり、書くことが文化として浸透し
てきた