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
For Whom the Quality Exists
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Koichi ITO
September 27, 2018
Programming
5
1.8k
For Whom the Quality Exists
Code Review Meetup #4 (
https://sideci.connpass.com/event/98378
)
Koichi ITO
September 27, 2018
Tweet
Share
More Decks by Koichi ITO
See All by Koichi ITO
Ruby and LLM Ecosystem 2nd
koic
1
810
STYLE
koic
0
2.1k
Ruby and LLM Ecosystem
koic
3
9.1k
Write Code Every Day
koic
1
2.4k
Bliki (ja), and the Cathedral, and the Bazaar
koic
7
3k
Welcome to the LLM Club
koic
0
380
RuboCop: Modularity and AST Insights
koic
3
5.4k
Carving the Way to Ruby Engineering
koic
3
1.2k
Beyond the RuboCop Defaults
koic
3
5.1k
Other Decks in Programming
See All in Programming
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
460
Codex の「自走力」を高める
yorifuji
0
1.2k
CSC307 Lecture 14
javiergs
PRO
0
470
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
220
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
490
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
110
CSC307 Lecture 15
javiergs
PRO
0
250
Understanding Apache Lucene - More than just full-text search
spinscale
0
120
ロボットのための工場に灯りは要らない
watany
10
2.9k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
290
Claude Code Skill入門
mayahoney
0
390
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
67
37k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
A Tale of Four Properties
chriscoyier
163
24k
A Soul's Torment
seathinner
5
2.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
110
The browser strikes back
jonoalderson
0
800
Speed Design
sergeychernyshev
33
1.6k
Transcript
For Whom the Quality Exists ίʔυϨϏϡʔ͙͠͞ ,PJDIJ*50FTN 5IV $PEF3FWJFX.FFUVQ
0QFO/FUXPSL4QBDFJO%BJLBOZBNB
࣭ͱ୭͔ʹͱͬͯ ͷՁͰ͋Δ ʵ(FSBME.BSWJO8FJOCFSH
!LPJD w ג ӬγεςϜϚωδϝϯτ ίϛϡχςΟϚωʔδϟ w 3VCP$PQίϛολʔ w "30SBDMFFOIBODFE BEBQUFSίϛολʔ
w $VDVNCFSίϛολʔ
None
None
None
"3VCZDPEF def badName if something test end end
None
None
ࠓͷ
$PEF 3FWJFX
$PEF 3FWJFX
2VBMJUZ 1FPQMF
࣭ʹର͢Δωλຊ wιϑτΣΞֶ͔Βͷώ ϯτ
ਓʹର͢Δωλຊ wϏδωείϛϡχέʔγϣ ϯ͔Βͷώϯτ
For Whom the Quality Exists ίʔυϨϏϡʔ͙͠͞ ,PJDIJ*50FTN 5IV $PEF3FWJFX.FFUVQ
0QFO/FUXPSL4QBDFJO%BJLBOZBNB
ଟ༷ͳϝϯόʔ͕ࢀը͢Δ ϓϩδΣΫτʹ͓͍ͯ Կʹίʔυͷ࣭Λ্͛ͯ ͔͘ʁ
ࣗԿΛϓϩδΣΫτʹߩݙ ͢ΔͭΓͰɺϝϯόʔϓϩ δΣΫτʹԿΛߩݙͯ͠Β͍ ͍͔ͨΛڞ༗͢Δ࣮ફज़ υϥοΧʔ෩ΤΫααΠζ ʰΞδϟΠϧαϜϥΠʱ +POBUIBO3BTNVTTPOஶ
None
wख़࿅ऀ͔ΒϫφϏʔ·Ͱ͍ ΔϓϩδΣΫτΛྫͱ͢Δ wϨϏϡΞʔͱͯ͠ϨϏϡΠʔ ͷؔͱͯ͠ίʔυʹର͢ ΔظΛ͓࣋ͬͯ͘ 13ͷظͷ͢Γ߹Θͤ
ਅ࣮ɿϓϩάϥϚݸਓΛੳ ͨ͠ݚڀʹΑΔͱɺ࠷༏लͳ ϓϩάϥϚ࠷ѱʹൺɺഒ ༏Ε͍ͯΔɻ ιϑτΣΞΤϯδχΞϦϯά ʰιϑτΣΞ։ൃͷਅ࣮ͱͷιʱ ϩόʔτɾ-ɾάϥε
w܁Γฦ͠ίʔυΛߟ͖͑ͯͨϕ ςϥϯͱ࠷ۙϓϩάϥϛϯάΛ ֮͑ͨϫφϏʔͷίʔυҧ͏ w͋ΔݚڀʹΑΔͱϓϩάϥϚͷ ྗྔࠩഒ͋Δͱ͍͏ ϓϩάϥϛϯάೳྗͷࠩ
ΧςΰϥΠζྫ ϫφϏʔ ٕज़తͳ ࣮ݱೳྗ υϝΠϯࣝ ˢ ˠ ίΞ։ൃऀ υϝΠϯΤΩεύʔτ ৽نࢀըͷ
։ൃऀ υϝΠϯ ΤΩεύʔτ
ϓϩάϥϛϯάͱ͍͏ ٕܳ
ͲΕ͕͓ΈͰ͔͢ʁ bmi = weight / (height ** 2) bmi=w/(h**2) bmi=weight/(height**2)
" # $
ಡΈͮΒ͍ίʔυͰ ίϯϐϡʔλΛಈ͔ͤ Δ͕ɺͩΕ͔ʹͱͬͯ ಡΈ͍͢ίʔυʹ͢ ΔʹηϯεΛཁ͢Δ
wϩδοΫͷଥੑɺ໊͚ͷଥੑɺ ιϑτΣΞςετख๏ͳͲਓͷྖҬ wελΠϧͷϨΠΞτͳͲͷϓϩδΣ Ϋτݻ༗จԽ w/ ݕग़ɺػցతʹݕग़ՄೳͳηΩϡ ϦςΟରࡦɺͳͲࣗಈԽͷྖҬ ϨϏϡʔൣғྫ
wਓͰͳ͍ͱϨϏϡʔͰ͖ͳ ͍ϙΠϯτʹͰ͖Δ͚ͩয Λ͍͋ͯͨ wਓ͔ΒਓʹٕܳΛ͑Δ ຊ࣭తͳϨϏϡʔ
None
wίʔυϨϏϡʔʹΑΔ ػձେ͖͍ wͬͱίʔυϨϏϡʔྗ ͕ߴ͍༰͕νʔϜͰ࠷ߴ ͷ࣭ΛੜΈग़ͤΔ ։ൃϓϩηεਓ
4/ൺ 4Λ૿͠ /ΛݮΒ͢
w13Λ։͘લʹࣗʹग़དྷΔ࠷ߴͷ13 Ͱ͋Δ͜ͱΛηϧϑϨϏϡʔ͢Δ wgit log -pͰݟฦ͢ɺ3VCP$PQ ͳͲͷ-JOUFSΛ࣮ߦ͢ΔɺͳͲ wࣗͷͰ͖ΔҎ্ͷ͜ͱͰ͖ͳ͍ ͷͰɺͦ͜ΛϨϏϡΞʔʹͤΔ 4/ൺͷ/ΛݮΒ͢ॳख
w-JOUFS͕ߦ͏ͷݴޠ༷ϓ ϩδΣΫτϧʔϧʹରͯ͠ग़དྷ ͍ͯͳ͍Ұఆظج४Ϩϕϧ· Ͱͷఈ্͛͢Δ wͰ͖ΔਓΛΑΓͰ͖ΔΑ͏ʹ͢ ΔͷͰͳ͍ -JOUFSΛͬͨࣗಈԽ
w৽͘͠ϓϩδΣΫτʹೖͬͨϝ ϯόʔͷελΠϧͷػցతͳ ୡΛߦ͑Δ wਓϨϏϡʔͨ͠Βਓಉ ͡ࢦఠ͕Ͱ͖Δ༰-JOUFS ͖ -JOUFSͷྑ͍ͱ͜Ζ
wࣗͷॻ͍ͨίʔυʹࣗ ͕Ө͞Ε͕ͪ wϨϏϡΞʔରϨϏϡΠʔ :PVWTNF ͔Βࢦఠࣄ߲ ରϨϏϡΠʔͷߏਤʹม͑Δ 1SPCMFNWT6T
-JOUπʔϧ Ξϯνύλʔϯ
wܯࠂΛड͚ೖΕ͍ͯΔঢ়ଶ wσϑΥϧτͰͷద༻͕ϓϩ δΣΫτʹ߹͏͔ݕ౼͢Δ wͦΕ-JOUFSͷόά͔ʁ कഁ
wͳͥͦͷελΠϧ͕·͍͠ ͷ͔͕ϝοηʔδ͚ͩͰ அ͕͍͜͠ͱ͕͋Δ wతʹ-JOUFSΛ͏ͷͰ ͳ͘ελΠϧͷഎܠΛΔ -JOUFSʹݶΒͣίϛϡχέʔγϣϯΛཔΕ
wϋογϡͷΧοίʹۭനΛೖ Εͳ͍ {foo: 1, bar: 2} wϋογϡͷΧοίʹۭനΛೖ ΕΔ { foo:
1, bar: 2 } എ͢ΔίʔσΟϯάελΠϧ
wΧοίʹۭനΛೖΕͳ͍ͷࢥ wϒϩοΫͱ͍ͬͨແ໊ؔͱͷ ରൺΛͯ͠ϋογϡͷΑ͏ͳී วతͳΦϒδΣΫτʹΧοί ͷۭനෆཁ ࢥΛΔ
w໊લͷू·ΓͰ͋Δίʔυ ͦͷͷʹҙຯ͕͋ΔΑ͏ ʹɺϨΠΞτۭߦʹ ҙຯΛ࣋ͨͤΔ ίʔυͷҰߦɺ݂ͷҰణ
wೣɺݘ w͖ͷ͜ɺ͚ͨͷ͜ wจࣈྻμϒϧΫΥʔτɺ γϯάϧΫΥʔτ ͦΕͧΕͷΈʹݴ͍͕͋Δ
IUUQEIBUFOBOFKQLFZXPSE""%"$&"#"#'"#"$&"#$&'$&
wܯࠂΛड͚ೖΕ͍ͯΔঢ়ଶ wσϑΥϧτͰͷద༻͕ϓϩ δΣΫτʹ߹͏͔ݕ౼͢Δ wͦΕ-JOUFSͷόά͔ʁ ߟ͑Λ࣋ͬͯक͔Βഁ
For Whom the Quality Exists
wࣗಈԽ͞ΕͨϨΠΞτɺ -JOUJOH3VCP$PQ &4-JOU FUD w/ 944ରࡦͳͲඇػೳཁ݅ #SBLFNBO #VMMFU
FUD w։ൃऀͷϨϕϧʹ͋·Γґଘ͠ͳ͍ ࣗಈԽ͕ൺֱత༰қ
wςʔϒϧઃܭɺΫϥεઃܭɺ໊͚ͷ ଥੑɺϩδοΫͷଥੑɺͳͲਓͷ ྖҬʹ͓͚Δ΄΅ͯ͢ wϨϏϡʔΛࣗಈԽͰ͖ͳ͍ίʔυ͕ຊ དྷϨϏϡʔ͍ͨ͠ର wˢ։ൃऀͷٕܳʹґଘ͢Δͷݟͤॴ -JOUFSͷۤखͳͱ͜Ζ
wϨϏϡʔʹ࣌ؒΛ͏ w܁Γฦ͠දग़͢Δࣄʹର ͯ͠ίϯϐϡʔλಘҙ wະͷࣄʹ͍ͭͯ·ͩί ϯϐϡʔλʹݶք͕͋Δ ਓͱίϯϐϡʔλͷϨϏϡʔ
ϨϏϡʔ5JQT
wϨϏϡʔॳظʹ͚ۙΕ͍ۙ΄Ͳ ࢦఠࣄ߲͕ग़қ͍ wBQQSPWFͷ͕ҰఆҎ্ʹͳͬͯ ͦΕ΄Ͳ্࣭͕Βͳ͍ wܦݧ্֓ͶͭBQQSPWF͋Εྑ͍ wͪΖΜνʔϜͷͱ࣭ʹΑΔ Կਓ·ͰΫϩεϨϏϡʔʁ
wؒҧ͍ͬͯΔ͜ͱΛؒҧ͍ͬͯΔͱݴΘΕΔ ͷπϥ͍ wࣗͷࢦఠ͕ؒҧͬͯΔ͜ͱ͕͋Δ wʮ˓˓Ͱ͠ΐ͏͔ʁʯৗ۟ͰͬͨΓ͢ Δ w͔ͳΓͷ֬৴͕͋ͬͯͬͨΓ͢Δ wಛʹҭ͖ͷख๏ ֬৴Λࣔ͢ΑΓ͍͔͚Α
౪ਓʹޒͷཧΛೝΊΔ ॏཁײΛ࣋ͨͤΔ ਓͷཱʹΛஔ͘ ਓΛಈ͔̏͢ݪଇ ʰਓΛಈ͔͢ʱ %ɾΧʔωΪʔ
wҰՈݴ͋ΔϨϏϡΞʔ͕͍Δػೳ ͕͋Δ w13Ͱ3FWJFX3FRVFTUΛ͋Β ͔͡Ίૹ͓ͬͯ͘ w͋ͱͰ͜Ε·ͰͷϨϏϡʔ͕Ҿͬ ܁ΓฦΔ͜ͱΛ༧͢Δ ൪ͷϨϏϡʔґཔ
w৭ใͰ͋Δ wϨϏϡΞʔʹରͯ͠Χϥϑϧͳใʹͯ͠ ෛՙΛݮΒ͓ͯ͢ͳ͠ wόοΫΫΥʔτͭͷޙΖʹݴޠΛࢦఆ͠ ͯғΉ͜ͱͰϋΠϥΠτ͢Δ ```ruby puts 'hello, world' ```
ಡΈखͷෛՙΛݮΒ͓ͯ͢ͳ͠
wՃใͱͯ͠۩ମతͳίʔυߦͷ63- ΛϦϯΫ͚Δͱ༗ޮͳ͜ͱ͕͋Δ w͋Δ(JU)VCͷίʔυϦϯΫͷ༰Λ ݟͨΒҧ͏ՕॴΛ͍ࣔͯ͠Δ wNBTUFSϒϥϯνࠁʑͱมԽ͍ͯ͘͠ w(JU)VCͷίϛοτ্ͰlZzΛԡ͢ ύʔϚϦϯΫΛҾ༻͢Δ
͋ΘͤͯಡΈ͍ͨ
wॻ͘ਓΑΓಡΉਓͷํ͕ଟ͍ wͯ͘͠ߦ͘αʔϏε΄Ͳ ίʔυಡΈܧ͕Ε͍ͯ͘ wݱࡏͷಡऀͱະདྷͷಡऀʹͪΐͬ ͱͨ͠ؾΓΛ͓ͯ͘͠ 5IFXBZUPUIFUJNFMFTTXBZPG
For Whom the Quality Exists
࣭ͷཐટ
ίʔυ Ϗδωε ϨϏϡʔ
ίʔυ Ϗδωε ϨϏϡʔ
Ϗδωε ίʔυ ϨϏϡʔ
ϨϏϡʔ Ϗδωε ίʔυ
ίʔυ Ϗδωε ϨϏϡʔ lશମz
ίʔυ Ϗδωε ϨϏϡʔ lશମz γεςϜΈࠐΈͷ ্࣭ͱ։ൃऀͷ
wϏδωεϑΟʔυόοΫͷૉૣ࣮֬͘ͳ ରԠෳࡶͰͳ͍ίʔυ͕Մೳͱ͢Δ wणΞϓϦέʔγϣϯΛϦϓϨʔε͢Δͷ ԟʑʹ༧ࢉͱ࣌ؒΛ͏ wίʔυϨϏϡʔͱ͍͏ఆظతͳ݈߁அ w༏लͳ։ൃऀ݈શͳίʔυ͕॓Δγες Ϝ։ൃʹ͔͏ ͳͥͦΜͳʹͳΔ࣭ॏཁ͔ʁ
࣭ͱ୭͔ʹͱͬͯ ͷՁͰ͋Δ ʵ(FSBME.BSWJO8FJOCFSH
None