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
8年目のプロジェクトにRuboCopを導入した話/Introduce RuboCop In 8...
Search
Yuta Kamezezaki
May 30, 2019
Technology
3
1.8k
8年目のプロジェクトにRuboCopを導入した話/Introduce RuboCop In 8-year-old project
8年の歴史があるプロジェクトにRuboCopを導入した話です。
Yuta Kamezezaki
May 30, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
AWSでRAGを実現する上で感じた3つの大事なこと
ymae
3
770
[JAWS-UG栃木]地方だからできたクラウドネイティブ事例大公開! / jawsug_tochigi_tachibana
biatunky
0
170
Postman Vaultを使った秘密情報の安全な管理
nagix
3
200
Agentic AI時代のプロダクトマネジメントことはじめ〜仮説検証編〜
masakazu178
3
450
Grid表示のレイアウトで Flow layoutsを使う
cffyoha
1
160
クラウドネイティブ時代を乗り越えるためのオブザーバビリティ(可観測性)ことはじめ_CloudNative-Observability
tkhresk
0
110
パフォーマンスとコスト改善のために法人データ分析基盤をBigQueryに移行した話
seiya303
1
110
[2024年10月版] Notebook 2.0のご紹介 / Notebook2.0
databricksjapan
0
1.7k
extensionとschema
yahonda
1
150
これからSREになる人と、これからもSREをやっていく人へ
masayoshi
3
3k
BLEAでAWSアカウントのセキュリティレベルを向上させよう
koheiyoshikawa
0
170
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
240
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
A designer walks into a library…
pauljervisheath
205
24k
Statistics for Hackers
jakevdp
797
220k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Become a Pro
speakerdeck
PRO
26
5.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
Thoughts on Productivity
jonyablonski
69
4.4k
Making Projects Easy
brettharned
116
6k
Scaling GitHub
holman
459
140k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Transcript
©2019 Wantedly, Inc. Introduce RuboCop In 8-year-old project May 30,
2019 - Yuta Kamezaki Meguro.rb #27
©2019 Wantedly, Inc. Yuta Kamezaki @ykamez About me Twitter: @ykamez_
2 Wantedly. Inc. / Engineer 2019ೖࣾɻ Wantedly VisitͷάϩʔενʔϜॴଐ ੳ͔ΒࢪࡦఏҊɺ࣮(αʔόʔ)·ͰΛ୲ɻ
©2019 Wantedly, Inc. 3VCP$PQΛೖΕ͍ͨਓ ಛʹɺطଘͷϓϩδΣΫτʹೖΕΔέʔε ର
©2019 Wantedly, Inc. େมͩͬͨ͜ͱ ͨ͜͠ͱ ࠓ͢͜ͱ ࡀͷϓϩδΣΫτʹ3VCP$PQΛಋೖ͢Δ·Ͱ
©2019 Wantedly, Inc. w ͲͷϧʔϧΛ࠾༻͢Δ͔ w ͲͷΑ͏ʹͬͯΒ͏͔ w Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ େมͩͬͨ͜ͱ
Ұൠతͳ
©2019 Wantedly, Inc. ྺ࢙͕ͯ͘ڊେ ੜ·Ε ߦ: 166,566 େมͩͬͨ͜ͱ 8BOUFEMZͳΒͰͷ
©2019 Wantedly, Inc. w ؒΈΜͳࣗ༝ͳελΠϧͰॻ͍͖ͯͨ w طଘίʔυͷमਖ਼͕େม w ؔऀ͕ଟ͍ˠίϯηϯαε͕औΓͮΒ͍ w
ࠓߋײ ৺ཧతϋʔυϧ େมͩͬͨ͜ͱ 8BOUFEMZͳΒͰͷ ྺ࢙͕ͯ͘ڊେ
©2019 Wantedly, Inc. σϑΥϧτͰΒͤͯΈͨ ͲͷϧʔϧΛ࠾༻͢Δ͔
©2019 Wantedly, Inc. ͲͷϧʔϧΛ࠾༻͢Δ͔ Inspecting 4062 files 4062 files inspected,
126547 offenses detected σϑΥϧτͷϧʔϧͷ߹ 126,547 offenses
©2019 Wantedly, Inc. σϑΥϧτͷϧʔϧݫͦ͠͏ ͲͷϧʔϧΛ࠾༻͢Δ͔ ϧʔϧͱݱঢ়ʹେ͖ͳဃ͕͋Δ
©2019 Wantedly, Inc. NFPXDPQͷϧʔϧ͕ྑ͍Β͍͠ ͲͷϧʔϧΛ࠾༻͢Δ͔ ผνʔϜͰಋೖ͓ͯ͠Γɺධ͕ྑ͔ͬͨ
©2019 Wantedly, Inc. 3VCP$PQͷDPOpHͷHFN https://github.com/sider/meowcop ελΠϧͷࢦఠ͠ͳ͍ w ϓϩδΣΫτݻ༗ͷϧʔϧΛແޮԽ
https://blog-ja.sideci.com/entry/2016/10/03/171816 NFPXDPQͱ →طଘProjectʹಋೖ͍͢͠
©2019 Wantedly, Inc. 4062 files inspected, 12080 offenses detecte ͲͷϧʔϧΛ࠾༻͢Δ͔
NFPXDPQͷϧʔϧͷ߹
©2019 Wantedly, Inc. 4062 files inspected, 12080 offenses detecte ͲͷϧʔϧΛ࠾༻͢Δ͔
NFPXDPQͷϧʔϧͷ߹ 12,080 offenses
©2019 Wantedly, Inc. 4062 files inspected, 12080 offenses detecte 126,547→12,080
ͲͷϧʔϧΛ࠾༻͢Δ͔ NFPXDPQͷϧʔϧͷ߹ ݱ࣮తͳဃ
©2019 Wantedly, Inc. ͲͷϧʔϧΛ࠾༻͢Δ͔ w ͲͷΑ͏ʹͬͯΒ͏͔ w Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ େมͩͬͨ͜ͱ ✅
©2019 Wantedly, Inc. ୭Θͳ͔ͬͨΒҙຯ͕ͳ͍ ͲͷΑ͏ʹͬͯΒ͏͔ ڧ੍ྗ͕ͳ͍ͷܗ֚Խ͕ͪ͠
©2019 Wantedly, Inc. ͲͷΑ͏ʹͬͯΒ͏͔ +
©2019 Wantedly, Inc. 1. reviewdog 3VCP$PQͷ݁ՌΛ13ʹίϝϯτͯ͘͠ΕΔ IUUQTHJUIVCDPNSFWJFXEPHSFWJFXEPH 2. Travis
CI $*αʔϏεͰࣗಈνΣοΫ ͲͷΑ͏ʹͬͯΒ͏͔ ˠΏΔΊͷӡ༻ࣗಈԽ $*མͱ͞ͳ͍
©2019 Wantedly, Inc. ͲͷϧʔϧΛ࠾༻͢Δ͔ ✅ͲͷΑ͏ʹͬͯΒ͏͔ w Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ େมͩͬͨ͜ͱ ✅
©2019 Wantedly, Inc. w طଘͷίʔυͷѻ͍ w ϧʔϧऔࣺબͷϓϩηε Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠
©2019 Wantedly, Inc. طଘͷίʔυͷѻ͍ Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ ϧʔϧΛద༻ͨ͠Βɺطଘͷ$PEFमਖ਼ɻ ϧʔϧͱ$PEFͷဃΛ͙ɻ
©2019 Wantedly, Inc. ϧʔϧऔࣺબͷϓϩηε Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ JTTVFͰٞˠϧʔϧ֬ఆˠө JTTVFͰΦʔϓϯʹٞ͠ɺೲಘײΛ࣋ͨͤΔɻ
©2019 Wantedly, Inc. ϧʔϧऔࣺબͷϓϩηε Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠
©2019 Wantedly, Inc. JTTVFͰΦʔϓϯʹٞ͠ɺೲಘײΛ࣋ͨͤΔɻ ϧʔϧऔࣺબͷϓϩηε Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ JTTVFͰٞˠϧʔϧ֬ఆˠө
©2019 Wantedly, Inc. ͲͷϧʔϧΛ࠾༻͢Δ͔ ✅ͲͷΑ͏ʹͬͯΒ͏͔ ✅Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠FUD େมͩͬͨ͜ͱ ✅
©2019 Wantedly, Inc. ՝ େมͩͬͨ͜ͱͨ͜͠ͱ ํ๏ •ؔऀͷଟ͞ •ڊେ͞ •8ͷྺ࢙ •ΏΔ͍ϧʔϧͰελʔτ
•CIͰࣗಈԽ(ڧ੍͠ͳ͍) •Φʔϓϯͳٞ •ӡ༻ํͷ໌֬Խ • ͲͷϧʔϧΛ࠾༻͢Δ͔ • ͲͷΑ͏ʹͬͯΒ͏͔ • Ͳ͏͍͏ํͰӡ༻͍͔ͯ͘͠ Ұൠతͳ Wantedlyݻ༗ͷ
©2019 Wantedly, Inc. ແࣄ3VCP$PQಋೖ ӽ͠ͷಋೖ
©2019 Wantedly, Inc. ྑ͍ • ϨϏϡʔલʹϛεʹؾ͕͚ͭͨɻ ՝ • ϧʔϧͷऔࣺબ͕͍͠ɻ •
ϧʔϧΛܾΊΔϓϩηε͕ᐆດɻ Ԡ
©2019 Wantedly, Inc. ϧʔϧऔࣺબͷϓϩηεޮԽ • ೲಘײͷ͋ΔϧʔϧΛͲ͏ૉૣܾ͘Ί͍͔ͯ͘ ͲΕ͘Β͍ݫ͍͠ӡ༻ʹ͢Δ͔ •
CIམͱ͢ͷ͔ ࣾͷϧʔϧڞ௨Խ ϚΠΫϩαʔϏε Δ՝ ˠ·ͩ·ͩࢼߦࡨޡத
©2019 Wantedly, Inc. ͷϓϩδΣΫτͰಋೖͰ͖Δ • ઍཬͷಓҰา͔Β ΏΔ࢝͘ΊͯΈΑ͏ ·ͱΊ
©2019 Wantedly, Inc. Thank you