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
Enter the OSS world [RuboCop] I. presage comment
Search
Koichi ITO
December 04, 2017
Programming
1
2.3k
Enter the OSS world [RuboCop] I. presage comment
福岡Ruby会議02 前夜祭
Koichi ITO
December 04, 2017
Tweet
Share
More Decks by Koichi ITO
See All by Koichi ITO
Welcome to the LLM Club
koic
0
170
RuboCop: Modularity and AST Insights
koic
3
4.3k
Carving the Way to Ruby Engineering
koic
3
880
Beyond the RuboCop Defaults
koic
3
4.2k
Minify Ruby Code
koic
2
2.3k
Permanent Agility
koic
37
9k
RuboCop: LSP and Prism
koic
3
5.1k
Organizational Pattern Hatching
koic
0
1.5k
A Practitioner's Journey from Ruby 1.8 to Present
koic
1
2.1k
Other Decks in Programming
See All in Programming
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
690
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
1k
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
270
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
850
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
800
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
400
ニーリーにおけるプロダクトエンジニア
nealle
0
460
A2A プロトコルを試してみる
azukiazusa1
2
1.1k
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
940
童醫院敏捷轉型的實踐經驗
cclai999
0
190
C++20 射影変換
faithandbrave
0
530
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
790
Featured
See All Featured
How to Ace a Technical Interview
jacobian
277
23k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Why Our Code Smells
bkeepers
PRO
337
57k
Facilitating Awesome Meetings
lara
54
6.4k
Speed Design
sergeychernyshev
32
1k
How to train your dragon (web standard)
notwaldorf
93
6.1k
It's Worth the Effort
3n
185
28k
Raft: Consensus for Rubyists
vanstee
140
7k
Code Review Best Practice
trishagee
68
18k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Transcript
5IF$PNQBOZ ,PJDIJ*50FTN 'SJ Ԭ3VCZձٞલࡇ &OUFSUIF044XPSME <3VCP$PQ> *QSFTBHFDPNNFOU
None
None
None
None
0DUPCFS 3VCP$PQSFMFBTFE
None
CCBUTPWSVCPDPQ "EEOFXA4UZMF.JYJO6TBHFADPQ
None
Enter the OSS world RuboCop I. presage comment
1SFNPOJUJPO
"3BJMTBQQMJDBUJPO EFWFMPQNFOU
3FWJFXDPNNFOU
ࣗͨͪͷࢦఠͨ͜͠ͱ ଞͷػձͰࢦఠ͞Ε͏Δ
None
044 ใԽٕज़Λ௨ͯ͡ʜ 3JEFPO044
IUUQTUXJUUFSDPNPOLTUBUVT
)PXUPNBLF4UZMF.JYJO6TFHFDPQ
SBLFOFX@DPQ CFSBLFOFX@DPQ<3BJMT5PQ-FWFM*ODMVEF>
SBLFOFX@DPQ CFSBLFOFX@DPQ<3BJMT5PQ-FWFM*ODMVEF> 'JMFTDSFBUFE MJCSVCPDPQDPQSBJMTUPQ@MFWFM@JODMVEFSC TQFDSVCPDPQDPQSBJMTUPQ@MFWFM@JODMVEF@TQFDSC 'JMFNPEJpFE ASFRVJSF@SFMBUJWFSVCPDPQDPQSBJMTUPQ@MFWFM@JODMVEFABEEFE JOUPMJCSVCPDPQSC ! %PTUFQT
"EEBOFOUSZUPUIF/FXGFBUVSFTTFDUJPOJO $)"/(&-0(NE FH"EEOFXA5PQ-FWFM*ODMVEFADPQ <!ZPVS@JE><> "EEBOFOUSZJOUPDPOpHFOBCMFEZNMPSDPOpHEJTBCMFEZNM *NQMFNFOUZPVSOFXDPQJOUIFHFOFSBUFEpMF
8SJUFFYBNQMFT 50%0XIFOpOJTIFE SVOASBLFHFOFSBUF@DPQT@EPDVNFOUBUJPOA UPVQEBUFUIFEPDT NPEVMF3VCP$PQ NPEVMF$PQ NPEVMF3BJMT 50%08SJUFDPQEFTDSJQUJPOBOEFYBNQMFPGCBEHPPE DPEF
!FYBNQMF CBE CBE@NFUIPE HPPE CBE@NFUIPE BSHT 8SJUFDPQEFTDSJQUJPOBOE FYBNQMFPGCBEHPPE
8SJUFTQFDT EFTDSJCF3VCP$PQ$PQ3BJMT5PQ-FWFM*ODMVEFEP JUSFHJTUFSTBOP⒎FOTFXIFOVTJOHACBE@NFUIPEAEP FYQFDU@P⒎FOTF 36#:TUSJQ@JOEFOU CBE@NFUIPE ??????????6TFAHPPE@NFUIPEAJOTUFBEPGACBE@NFUIPEA 36#: FOE
! JUEPFTOPUSFHJTUFSBOP⒎FOTFXIFOVTJOHAHPPE@NFUIPEAEP FYQFDU@OP@P⒎FOTFT 36#:TUSJQ@JOEFOU HPPE@NFUIPE 36#: FOE FOE 8SJUFBCBEDBTFPOUIFAFYQFDU@P⒎FOTFA NFUIPE 8SJUFBHPPEDBTFPOUIFAFYQFDU@OP@P⒎FOTFTA NFUIPE
SVCZQBSTF SVCZQBSTFFJODMVEF.` TFOEOJMJODMVEF DPOTUOJM. ! SVCZQBSTFFFYUFOE.` TFOEOJMFYUFOE
DPOTUOJM. ! SVCZQBSTFFQSFQFOE.` TFOEOJMQSFQFOE DPOTUOJM. (FU4FYQSFTTJPOGSPNSVCZQBSTFDPNNBOE
EFG@OPEF@NBUDIFS EFG@OPEF@NBUDIFSJODMVEF@TUBUFNFOU 1"55&3/ TFOEOJM \JODMVEFFYUFOEQSFQFOE^ DPOTUOJM @
1"55&3/ 3FXSJUFBTOPEFQBUUFSOCBTFEPO4FYQSFTTJPO 'VSUIFSSFBEJOH IUUQTHJUIVCDPNCCBUTPWSVCPDPQCMPCNBTUFSMJCSVCPDPQOPEF@QBUUFSOSC
PO@YYYBEE@PGGFOTF .4(ATUBUFNFOUTAJTVTFEBUUIFUPQMFWFM6TFJOTJEFa ADMBTTAPSANPEVMFAGSFF[F ! EFGPO@TFOE OPEF SFUVSOVOMFTT TUBUFNFOUJODMVEF@TUBUFNFOU OPEF
SFUVSOVOMFTTUPQ@MFWFM@OPEF OPEF ! BEE@P⒎FOTF OPEF NFTTBHFGPSNBU .4( TUBUFNFOUTUBUFNFOU FOE 8SJUFFWFOUIBOEMFSAPO@OPEF@OBNFA PSAJOWFTUJHBUFA NFUIPE
*NQMFNFOUBUJPO 3FE (SFFO 3FGBDUPS 5FTUDPEFJTNPSFPCWJPVTBOEFBTJFSUP VOEFSTUBOEUIBOUIFPQFSBUJPOPG"45
8SJUFDPOpHpMFT 3BJMT5PQ-FWFM*ODMVEF %FTDSJQUJPO$IFDLTUIBUAJODMVEFA AFYUFOEABOEAQSFQFOEAFYJTUT BUUIFUPQMFWFM &OBCMFEUSVF ! ! *OUIJT13 UIFGPMMPXJOHTFUUJOHXJMMCFSFNPWFEMBUFS
3BJMT5PQ-FWFM*ODMVEF *ODMVEF BQQ SC "EEBOFOUSZJOUPDPOpHFOBCMFEZNM PSDPOpHEJTBCMFEZNM "EEBOFOUSZJOUPDPOpHEFGBVMUZNM *GEFGBVMUTFUUJOHJTSFRVJSFE
SBLFHFOFSBUF@DPQT@EPDVNFOUBUJPO 8SJUFUIF$)"/(&-0(NE CFSBLFHFOFSBUF@DPQT@EPDVNFOUBUJPO ! ! ! CFSBLF CFSBLFQBSBMMFMTQFD 'JOJTIFEJOTFDPOET pMFTUPPLTFDPOETUPMPBE
FYBNQMFT GBJMVSFT QFOEJOH CFSBLFQBSBMMFMBTDJJ@TQFD 'JOJTIFEJOTFDPOET pMFTUPPLTFDPOETUPMPBE FYBNQMFT GBJMVSFT QFOEJOH CFSBLFJOUFSOBM@JOWFTUJHBUJPO pMFTJOTQFDUFE OPP⒎FOTFTEFUFDUFE 8IFOpOJTIFE SVOASBLF HFOFSBUF@DPQT@EPDVNFOUBUJPOAUPVQEBUFUIFEPDT
0QFOB13
$POWFSTBUJPO
$POWFSTBUJPO
$POWFSTBUJPO
$POWFSTBUJPO
None
$POWFSTBUJPO
CCBUTPWSVCPDPQ "EEOFXA4UZMF.JYJO6TBHFADPQ
None
None
3VCP$PQIBTOPQSFSFMFBTF
None
'FFECBDL
GBMTFQPTJUJWF
GBMTFQPTJUJWF
GBMTFQPTJUJWF
GBMTFQPTJUJWF
GBMTFQPTJUJWF
GBMTFQPTJUJWF
*ODMVEFNBUDIFS
1SPQPTFlGBMTFOFHBUJWFz
1SPQPTFlGBMTFOFHBUJWFz
GBMTFQPTJUJWF ˣ GBMTFOFHBUJWF
044ʹόά͕͋Δͱ͍͏ ͳ͠ฉ͕͘ɺͱΓ͋͑ ͣ͋ͷόάϫγ͕ҭͯͨ
3BJMT͔Β4UZMFʹείʔϓ ΛͻΖ͕࣮͛ͨڱ͍·· ল
8PSLBSPVOEGPS 4UZMF.JYJO6TBHF *ODMVEF BQQ SC "EEUIJTTFUUJOHJOUPSVCPDPQZNM
3VCP$PQͷ࣍ճϦϦʔε Λ͓ͪԼ͍͞ ຊରԠ
l աͪΛؾʹපΉ͜ͱͳ͍ɻ ͨͩೝΊͯɺ࣍ͷྐͱ͢Ε ͍͍ɻͦΕ͕େਓͷಛݖͩɻ 'VMM'SPOUBM
w ϓϩδΣΫτͰͷ(JU)VCϨϏϡʔ 3VCP$PQͷϑΟʔυόοΫ ͷๅݿ &OUFSUIF044XPSME w ίʔυΛॻ͚ΔͳΒVQTUSFBN ίʔυΛॻ͜͏ w
*TTVFVQTUSFBNʹϨϙʔτ͠Α ͏ 1BSU**ʹͭͮ͘ ·ͱΊ
࣍ճ༧ࠂ
&OUFSUIF044XPSME <3VCP$PQ> **MPTUCPVOEBSZ &OUFSUIF044XPSME <3VCP$PQ> **MPTUCPVOEBSZ &OUFSUIF044XPSME <3VCP$PQ> **MPTUCPVOEBSZ &OUFSUIF044XPSME
<3VCP$PQ> **MPTUCPVOEBSZ &OUFSUIF044XPSME <3VCP$PQ> **MPTUCPVOEBSZ
݄ ݄ ݄ ݄ ݄ ݄ ݄ ݄ ݄ ݄
݄ ݄ ݄ ݄
FOE