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
820
Beyond the RuboCop Defaults
koic
3
3.8k
Minify Ruby Code
koic
2
2.3k
Permanent Agility
koic
37
8.7k
RuboCop: LSP and Prism
koic
3
4.5k
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
Without Practice, No Emergence
koic
4
2.5k
Other Decks in Technology
See All in Technology
バクラクでのSystem Risk Records導入による変化と改善の取り組み/Changes and Improvement Initiatives Resulting from the Implementation of System Risk Records
taddy_919
0
180
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
130
caching_sha2_passwordのはなし
boro1234
0
160
AWS CDK コントリビュート はじめの一歩
yendoooo
1
110
Engineering Managementのグローバルトレンド #emoasis / Engineering Management Global Trend
kyonmm
PRO
6
930
グループポリシー再確認
murachiakira
0
150
「エンジニアマネージャー」の役割を担っている / 担ってみたい方へのキャリアパスガイド
coconala_engineer
1
220
大規模プロジェクトにおける 品質管理の要点と実践 / 20250327 Suguru Ishii
shift_evolve
0
200
Reactを段階的に覗いてみる
ytaisei
2
860
セマンティックレイヤー入門
ikkimiyazaki
7
2.3k
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
130
Dapr For Java Developers SouJava 25
salaboy
1
120
Featured
See All Featured
Designing for Performance
lara
605
69k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
320
Building Flexible Design Systems
yeseniaperezcruz
328
38k
GraphQLとの向き合い方2022年版
quramy
45
14k
A designer walks into a library…
pauljervisheath
205
24k
The World Runs on Bad Software
bkeepers
PRO
67
11k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Thoughts on Productivity
jonyablonski
69
4.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
30
1.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
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