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
Write Code Every Day
koic
1
540
Bliki (ja), and the Cathedral, and the Bazaar
koic
7
2.5k
Welcome to the LLM Club
koic
0
310
RuboCop: Modularity and AST Insights
koic
3
4.7k
Carving the Way to Ruby Engineering
koic
3
1.1k
Beyond the RuboCop Defaults
koic
3
4.6k
Minify Ruby Code
koic
2
2.4k
Permanent Agility
koic
38
9.2k
RuboCop: LSP and Prism
koic
3
5.3k
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
640
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
Namespace and Its Future
tagomoris
6
710
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
testingを眺める
matumoto
1
140
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
170
1から理解するWeb Push
dora1998
7
1.9k
Swift Updates - Learn Languages 2025
koher
2
510
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
250
Rancher と Terraform
fufuhu
2
550
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Making Projects Easy
brettharned
117
6.4k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Being A Developer After 40
akosma
90
590k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
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