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
Software Craftsmanship against Nova Era
Search
Koichi ITO
March 27, 2023
Technology
0
1.7k
Software Craftsmanship against Nova Era
Koichi ITO
March 27, 2023
Tweet
Share
More Decks by Koichi ITO
See All by Koichi ITO
Carving the Way to Ruby Engineering
koic
3
800
Beyond the RuboCop Defaults
koic
3
3.6k
Minify Ruby Code
koic
2
2.2k
Permanent Agility
koic
37
7.9k
RuboCop: LSP and Prism
koic
3
4.3k
Organizational Pattern Hatching
koic
0
1.5k
A Practitioner's Journey from Ruby 1.8 to Present
koic
1
2k
A Story Featuring Right Hand Archetype
koic
0
1.1k
Without Practice, No Emergence
koic
4
2.5k
Other Decks in Technology
See All in Technology
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.3k
Culture Deck
optfit
0
410
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
2.9k
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.6k
君も受託系GISエンジニアにならないか
sudataka
2
430
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
390
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
第13回 Data-Centric AI勉強会, 画像認識におけるData-centric AI
ksaito_osx
0
370
CZII - CryoET Object Identification 参加振り返り・解法共有
tattaka
0
360
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.8k
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
250
Featured
See All Featured
Visualization
eitanlees
146
15k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
A designer walks into a library…
pauljervisheath
205
24k
Automating Front-end Workflow
addyosmani
1368
200k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
4 Signs Your Business is Dying
shpigford
182
22k
Code Reviewing Like a Champion
maltzj
521
39k
Why Our Code Smells
bkeepers
PRO
336
57k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Transcript
৽࣌ʹ͔͏ ιϑτΣΞ৬ਓؾ࣭ Software Craftsmanship against Nova Era !LPJD
w աڈʹಡΜͩΑ͏ͳؾ͕͢Δ͚ΕͲɺ௨ಡ͠ ͚ͨͬʁΛͨ·ʹಡΈฦ͍ͯ͠Δॻ੶ w հ͢Δॻ੶ͷ༰ʹͦΕ΄Ͳ৮Ε·ͤΜ w ͋Β͢͡௨ಡʹ͔ͣ͠ w ͦͯ͠ɺࠓޙͷզʑͷࣄʹ͍ͭͯߟ͑Δ ࠓͷͳ͠
3VCZY"HJMF 2VJ[ ಥવͰ͕͢ΫΠζͰ͢
2
3VCZ͕ग़ͯ͘Δͷॻ੶ͲΕʁ
2
w "MJTUBJS$PDLCVSO w +F⒎4VUIFSMBOE w +JN)JHITNJUI w 1FUF.D#SFFO w 3PCFSU$.BSUJO
ΞδϟΠϧϚχϑΣετʹॺ໊͕ͳ͍ͷ୭ʁ
ࠓͷҰ
ϐΞιϯɾ Τσϡέʔγϣϯ
ιϑτΣΞ৬ਓؾ࣭ ਪનͷݴ༿%BWFୡਓ5IPNBT
ஶऀϐʔτɾϚΫϒϦʔϯ wਪનͷݴ༿͕,FOU#FDLͷ91ࠇຊ ͷஶऀͰ͋Δ w࣌ϑϦʔͷιϑτΣΞ։ൃ ίϯαϧλϯτͩͬͨΒ͍͠ wΞδϟΠϧϚχϑΣετʹ໊લ͕ ͳ͍ͷ͕ෆࢥٞͳ͘Β͍ͷਓ
"NB[POͰങ͑·͢😅
ιϑτΣΞ։ൃͱ͍͏ࣄ 91&OEୈষ ʰςΠϥʔओٛͱιϑτΣΞʱ ιϑτΣΞ৬ਓؾ࣭ୈষ ʰ৬ਓͷཧʱ
w ௨ৗɺࣄܭըͲ͓ΓʹਐΉɻ w ہॴ࠷దԽશମ࠷దԽʹͭͳ͕Δɻ w ਓ΄΅ସՄೳͰ͋ΓɺԿΛ͖͔͢ Λࢦࣔ͢Δඞཁ͕͋Δɻ ͭͷ୯७Խ͞ΕͨԾఆ 91&OEୈষʰςΠϥʔओٛͱιϑτΣΞʱΑΓ ςΠϥʔओٛͷਂԕͳܽؕͱ͞ΕΔ
ϑϨσϦοΫɾςΠϥʔ d
w ςΠϥʔओٛͷͱͯ͠ۀͷແବ w ϚχϡΞϧϫʔΧʔͱφϨοδϫʔΧʔͰ ٻΊΒΕΔ͜ͱͷҧ͍ w ιϑτΣΞ։ൃͷத৺͕ਓͰ͋Δ͜ͱʹ ϑΥʔΧε͍ͯ͠Δ θϩײ͋;ΕΔ چ͍ιϑτΣΞֶؾ࣭ͷ佀
ʮՊֶతཧ๏ʯͷܥේͰͳ͘ ʮెఋ੍ʯʹΑΔਓͷʹ ϑΥʔΧεΛ͋ͯΔ ༁ ༁
ख़࿅৬ਓ ιϑτΣΞ৬ਓͷεςʔδ δϟʔχʔϚϯ ϓϩμΫτ։ൃͷதͰͷెఋ੍ ΞϓϨϯςΟε ٕܳͱख़࿅
w ΞϓϨϯςΟε͕͍Δͱ͖ϕςϥϯϝϯ όʔʹࠞͥͨνʔϜߏʹ͢Δ w ΞϓϨϯςΟεʹΞυόΠεͰ͖Δଘࡏͱ ҰॹʹࣄΛ͢Δ͜ͱͰɺ࣮ࡍͷιϑτ ΣΞ։ൃʹ͓͚ΔৼΔ͍Λഎத͔Βֶ ͿػձΛ֫ಘͰ͖Δ ҭͱ࣮ફΛΘ͚ͳ͍
w ੜ͖ͨڭࡐͷଆ໘ͱͯ͠ͷϓϩμΫτ։ൃ w '#$͔Βத్ೖࣾͯ͠ҭ༻ΧϦΩϡϥϜ ͳ͘ϓϩδΣΫτଐ͚ͩͬͨΕͲɺͦ ΕͰΉ͠Ζ࣮ӡ༻͍ͯ͠ΔϓϩμΫτ͔Β ͷϑΟʔυόοΫΛಘΒΕͨ ࣮ફʹউΔͷͳ͠
w ਓੜ࣌ NKL w ϒϥΠΞϯɾΧʔχϋϯࡀ͘Β͍Ͱ ʰϓϩάϥϛϯάݴޠ(PʱΛ্Ѹʁ w ΤϯδχΞ͍ͭ͘ʹͳͬͯͰ͖Δ w
ݱબखੜ໋Λͱͯ͘Ͱ͖Δ৬ۀ ख़࿅৬ਓͱͯ͠ͷਓੜ
ख़࿅৬ਓ ͱ *5اۀ IUUQTOPUFDPNUEUETOOGEB⒎B
ΤϯδχΞϦϯάͱԿͰ͔͢ʁ ٕܳ ୭͕͍ͬͯۙ݁ՌΛ ग़ͤΔΑ͏ʹ͢ΔΈ !LBNJQP
w ͲΜͳϓϩδΣΫτʹͰϑΟοτ͢Δ ϑϦʔαΠζͷϓϩηεͳ͍ w ҰํͰ୭͕ಉ݁͡ՌΛಘΔ͜ͱ͕Ͱ͖Δ πʔϧྨ͕ॆ࣮ͯ͠׆༻Ͱ͖Δݱ w ৬ਓͱͯ͠ͷٕܳΛߴΊଓ͚Δ w ϓϩάϥϚʔͷ༏ྼͰೳྗࠩԿेഒ͋Δʁ
Φʔτϝʔγϣϯͱٕܳ
IUUQTTQFBLFSEFDLDPNLBLVUBOJNBLFJUGVO TMJEF +PCJTOPU1SPGFTTJPO
w ೦ͳ͕ΒςΠϥʔཧ͕ΔιϑτΣΞ։ൃ ͷݱ͍·ͩଟ͋͘Δ͕·͔͞Εͳ͍ w ਓ͋ΒΏΔπʔϧΑΓॏཁͰ͋Δɻ༏Εͨ ਓʑʹ༏ΕͨπʔϧΛ༩͑ΕɺπʔϧΛ࣋ͨͳ ͍ਓʑΑΓޮ্͕͕Δ άϥσΟɾϒʔν w
ਓͻͱΓͻͱΓͷʹয͕ͨΔ͖ɻ࣮ࡍ ੲ͔Βͣͬͱͦ͏ɻ ͜͜·Ͱطʹਓྨ͕า͍ͨ
/PWB&SB /PWB&SBJTUIFQBTTBHFUPZPVSNJOE "OEGPSFWFSZPVNBZpOEBCFUUFSUJNF /PWB&SBCSJOHUIFBOHFMTCBDLUPMJGF-JGF
(15͕ੌ͍Β͍݅͠ ΠϯλʔωοτΛத৺ʹۀք૽વʁ What is life all about? &NCSBDF$IBOHFʹ͍ͭͯߟ͑Α͏
w ہॴ͝ͱʹਓྨΛ͍͍͑ͯͬͯΔ w ιϑτΣΞ։ൃғޟɺকعɺνΣεͷΑ͏ ͳήʔϜͷউഊ͕͖݅ͬΓͨ͠ྨͷͷͰ ͳ͍ w ڝٕͱͯ͠ͷ໘ന͕͞ݮͬͨΘ͚Ͱͳ͘ɺ"* ͷ׆༻Ͱਓྨ͕ඈ༂͢Δ͖͔͚ͬʹ͍ͯ͠Δ "*ͷ༂ਐ;ͨͨͼ
ਐԽͷઌʹ͋Δڞੜࣾձʹ͚ͯ ͍·ͷͱ͜Ζࢲ͍ͬͯ·ͤΜ͕ IUUQTHJUIVCDPNGFBUVSFTQSFWJFXDPQJMPUY ਓྨͷະདྷ ͷՄೳੑ ΛݟͤͯΔ ࣮ͷҰྫ
Λ͏ɻ Λ্ख͘ղ͘ wطʹख़࿅͕ߴ͍։ൃऀࠨଆͷߴ͞ͷ্ʹӈଆߴ͍ wͷղ๏ͷҾ͖ग़͠ͷଟ͞ఆٛͷ෯ʹͳΔ ߋͳΔ"*ࢀೖ͕ૣͦ͏ ਓؒʹٻΊΒΕΔ؊ Λ্ख͘ఆٛ͢Δ ఆٛͷ্ख͕͞ࡍཱͭ࣌ʁ
w ࣮ࡍʹΛ্ख͘ղ͘ख़࿅ͷٕ͋ͬͯ ͷɺશମ࠷దͰͷఆٛΛ্ख͘͢Δٕೳ w ղܾೳྗͷߴΈͷٻґવͱͯ͠ॏཁ w ΤϯλʔϓϥΠζΞϓϦέʔγϣϯϏδω εཁ͔݅ΒΠϯϑϥ·Ͱ෯͍શମੑ͕͋Δ w ߴ͍ࢹͱࢹ࠲ͷ֫ಘ͕ख़࿅৬ਓಓͷͻͱͭ
ہॴ࠷దͰऴΘΒͣશମ࠷దΛ
-&5644)*/& wબ w wײ ࠓޙφϨοδϫʔΧʔͱͯ͠ॏࢹ͞ΕΔͩΖ͏
w "*ͦΕͬΆ͍ճΛ͢Δ͕ɺαδΣετ ͞ΕͨͷΛӏವΈʹ͖͢Ͱͳ͍ w "*Ͱͳͯ͘ྫ͑Ϧϯλʔͷࣗಈमਖ਼ ิతͳͷͳͷͰɺ·ͣࣗͷཉ͍͠ ͷΛࢥ͍ඳ͘ͷͱɺ͑߹ΘͤͰ͖Δ ೳྗ͕ඞཁ ಓ۩͏ͷ ϰΟδϣϯΛ࣋ͪɺओैΛٯస͠ͳ͍
w աڈ001ߏԽઃܭख๏ͷઌʹͰ͖ͨ ରཱߏͰͳ͍ w Ϗδωεͦ͏ͩ͠ɺ044ͰΠγϡʔΛද໘͚ͩͰղܾ ͠Α͏ͱ͢ΔͷͰͳ͘ɺ༰Λۛຯ͢Δͷ͕େࣄ w ԿނͳΒఆ͕ٛඍົͳ͜ͱ͕··͋Δ͔Β w
ίʔυϨϏϡΞʔͷ͕ΤʔεϓϩάϥϚʔͰ͋Δ͜ͱ͕ ଟʑɻͭ·Γͬͱ༏ΕͨධՁऀͰ͋Δɻ w 044ͷੈքͰͦΕΛίϛολʔͱ͍͏ܗͰ࣮ݱ͍ͯ͠Δ ύϥμΠϜγϑτθϩϦηοτͰͳ͍
w զʑ͕࡞ΔιϑτΣΞ৺͋Δਓ͕ਓͷ ͨΊʹ࡞Δͷ w ʮ࣭ͱސ٬ຬʯ w ؒͱސ٬ͱίϛϡχςΟࣾձͳͲͷ8JO Λ"/%ͰऔΔ͜ͱΛࢦ͢ͷʹมΘΓͳ͍ ۦΓཱͯΔͷ৺ͱཉɺԣͨΘΔͷݘͱಲ
ࣗΒͷٕज़ʹؔ৺Λ࣋ͭ͜ͱ ͋ͳͨͷࣄʹ͍ͭͯߟ͑Δ͜ͱʂ ܅ֶͿ͜ͱ͕৺͔Β͖ͩ ܅ιϑτΣΞͷ͜ͱΛେʹࢥ͍ͬͯΔ ΞδϟΠϧαϜϥΠ +POBUIBO3BTNVTTPO ୡਓϓϩάϥϚʔ %BWJE5IPNBT "OESFX)VOU ԁख़ͷٕʹࢸΔ͜͜Ζ
w ݴΘΕͨ͜ͱΛ࣮ݱ͢ΔͨΊͷํ๏Λௐͨ ݁ՌΛॻ͍͍ͯΔ͚ͩͷΤϯδχΞ·͍ͣ w FHऑ͍આ໌ऀɺऑ͍࣮ߦऀ w ࣗͷ಄Ͱߟ͑ͨΑΓྑ͍ఏҊΛ͑ͯɺௐ ࣮ͯ͠Ͱ͖ΔΤϯδχΞΛࢦ͢ w FHڧ͍આ໌ऀɺڧ͍࣮ߦऀ
·ͣݱͰͰ͖Δ͜ͱ͔Β
ख़࿅৬ਓ ιϑτΣΞ৬ਓͷεςʔδ δϟʔχʔϚϯ ϓϩμΫτ։ൃͷதͰͷెఋ੍ ΞϓϨϯςΟε ٕܳͱख़࿅
͓ͷॻ੶
࠷ޙͷҰจΑΓ
ιϑτΣΞ։ൃָ͘͠ͳ͚Ε ͳΓ·ͤΜɻͦ͏Ͱͳ͚Εɺͦͷ ϓϩηεؒҧ͍ͬͯΔͷͰ͢ɻ 4PGUXBSFEFWFMPQNFOUJTNFBOUUPCFGVO*GJUJTOU UIFQSPDFTTJTXSPOH 1FUF.D#SFFO