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
RuboCop: Modularity and AST Insights
koic
3
3k
Carving the Way to Ruby Engineering
koic
3
860
Beyond the RuboCop Defaults
koic
3
4k
Minify Ruby Code
koic
2
2.3k
Permanent Agility
koic
37
8.9k
RuboCop: LSP and Prism
koic
3
4.9k
Organizational Pattern Hatching
koic
0
1.5k
A Practitioner's Journey from Ruby 1.8 to Present
koic
1
2.1k
A Story Featuring Right Hand Archetype
koic
0
1.1k
Other Decks in Technology
See All in Technology
Google Cloud Next 2025 Recap マーケティング施策の運用及び開発を支援するAIの活用 / Use of AI to support operation and development of marketing campaign
atsushiyoshikawa
0
380
分解し、導き、託す ログラスにおける“技術でリードする” 実践の記録
hryushm
1
520
newmo の創業を支える Software Architecture と Platform Engineering
110y
5
580
Google Cloud Next 2025 Recap 生成AIモデルとマーケティングでのコンテンツ生成 / Generative AI models and content creation in marketing
kyou3
0
390
さくらのクラウド開発の裏側
metakoma
PRO
18
5.9k
RubyKaigi NOC 近況 2025
sorah
3
1.2k
Design for Failure - リージョンとAZについて
yuki_ink
0
130
スイッチのBMC、つかってますか?
sonic
0
420
既存の開発資産を活かしながら、 《新規開発コスト抑制》と《開発体験向上》 を両立する拡張アーキテクチャ事例
kubell_hr
0
280
10年もののアプリケーションを運用・開発するアプリケーションエンジニアのDatadog活用術
miyamu
0
110
ゆるくはじめるSLI・SLO
yatoum
1
120
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
17k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
620
GraphQLとの向き合い方2022年版
quramy
46
14k
For a Future-Friendly Web
brad_frost
177
9.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
A better future with KSS
kneath
239
17k
Side Projects
sachag
453
42k
Facilitating Awesome Meetings
lara
54
6.4k
The Language of Interfaces
destraynor
158
25k
A designer walks into a library…
pauljervisheath
205
24k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
Documentation Writing (for coders)
carmenintech
71
4.8k
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