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 Development
Search
SHIBATA Hiroshi
May 14, 2019
Technology
1
6.5k
Software Development
SHIBATA Hiroshi
May 14, 2019
Tweet
Share
More Decks by SHIBATA Hiroshi
See All by SHIBATA Hiroshi
How to make faster release cycle of Ruby?
hsbt
2
5.4k
Ruby の開発を支えるエコシステム
hsbt
4
2.2k
Why is building the Ruby environment hard?
hsbt
6
7.2k
開発環境へのこだわり
hsbt
16
12k
OSS ことはじめ
hsbt
5
1.4k
GMO DevNight 05 在宅勤務開始から2ヶ月でやったこと
hsbt
2
510
Development Environment 2019
hsbt
1
330
How to become the Psychic
hsbt
0
1.9k
Social Inclusion for Engineering Organization
hsbt
0
1.1k
Other Decks in Technology
See All in Technology
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
230
Cline、めっちゃ便利、お金が飛ぶ💸
iwamot
19
19k
Security response for open source ecosystems
frasertweedale
0
100
ソフトウェア開発現代史: なぜ日本のソフトウェア開発は「滝」なのか?製造業の成功体験とのギャップ #jassttokyo
takabow
2
1.6k
コンソールで学ぶ!AWS CodePipelineの機能とオプション
umekou
2
120
caching_sha2_passwordのはなし
boro1234
0
220
LINE Notify互換のボットを作った話
kenichirokimura
0
180
Explainable Software Engineering in the Public Sector
avandeursen
0
370
Go の analysis パッケージで自作するリファクタリングツール
kworkdev
PRO
1
420
PostgreSQL Unconference #52 pg_tde
nori_shinoda
1
230
チームの性質によって変わる ADR との向き合い方と、生成 AI 時代のこれから / How to deal with ADR depends on the characteristics of the team
mh4gf
4
340
OCI見積もり入門セミナー
oracle4engineer
PRO
0
120
Featured
See All Featured
Facilitating Awesome Meetings
lara
53
6.3k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
How STYLIGHT went responsive
nonsquared
99
5.4k
Into the Great Unknown - MozCon
thekraken
36
1.7k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
GraphQLとの向き合い方2022年版
quramy
45
14k
Building Adaptive Systems
keathley
41
2.5k
4 Signs Your Business is Dying
shpigford
183
22k
Designing for humans not robots
tammielis
251
25k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Transcript
ιϑτΣΞ৺ͷதʹ ࣲాതࢤ(.01&1"#0JOD ৽ଔݚम࠲ֶ ιϑτΣΞ։ൃ
Hiroshi SHIBATA @hsbt https://www.hsbt.org Executive Officer VP of Engineering Technical
Director at GMO Pepabo, Inc. @pepabo
self.introduce => { name: “SHIBATA Hiroshi”, nickname: “hsbt”, organizations: [“ruby”,
“rubygems”, “asakusarb”, “pepabo”, …], commit_bits: [“ruby”, “rake”, “rubygems”, “bundler”, “rdoc”, “psych”, “ruby-build”, “railsgirls”, “railsgirls-jp”, …], sites: [“hsbt.org”, “ruby-lang.org”, “rubyci.org”, “railsgirls.com”, “railsgirls.jp”], }
ιϑτΣΞͬͯͳΜͰ͔͢ ࣗ༝هड़
ιϑτΣΞͲ͜ʹ͋Δͷ͔ wιϑτΣΞਓʑͷ৺ͷதʹ͋ Δ wιϑτΣΞਓʑͷίϛϡχ έʔγϣϯͷதʹ͋Δ ʰεΫϥϜ࣮ફೖʱٕज़ධࣾɺ2016ɺp.10
lιϑτzΣΞ “ࢲɺιϑτΣΞߏஙʹ͓͍ͯࠔͳ෦ɺ͜ͷ ֓೦ߏମͷ༷࡞ͱσβΠϯ͓Αͼςετʹ͋ͬ ͯɺͦΕΛදݱ͢Δࣄͦͷදݱʹ࣮͔൱͔Λς ετ͢ΔࣄͰͳ͍ͱߟ͍͑ͯΔɻ” ʰਓ݄ͷਆʲ৽൛ʳʱؙળग़൛ɺ2014ɺp.170
͋ΒΏΔιϑτΣΞ͕ਓͱਓͱͷରΛ࣋ͭ w͚ࣗͷιϑτΣΞˠ։ൃऀࣗར༻ऀࣗ wಛఆͷ৫͔ΒͷཁٻΛղܾ͢ΔιϑτΣΞˠ։ൃऀ։ൃνʔϜ·ͨࣗ ݸਓར༻ऀಛఆͷ৫ʹॴଐ͍ͯ͠Δਓʑ wෆಛఆͷ৫ʹ͚ͨιϑτΣΞˠ։ൃऀ։ൃνʔϜ·ͨࣗݸਓར ༻ऀෆಛఆଟ
֓೦ԽͱநԽ wιϑτΣΞ͕ਓͱਓͱΛհͯ͠ଘࡏ͢Δ֓೦্ͷଘࡏͰ͋Δ w֓೦্ͷଘࡏΛίϯϐϡʔλʹΑͬͯݱ࣮ͱͯ͠ಈ͔ͨ͢Ίʹɺෆཁͳ֓೦ Λ͗མͱ͢நԽ͕ඞཁͰ͋Δ w੍ޚͷநԽ wσʔλͷநԽ
੍ޚͷநԽ wίϯϐϡʔλΛಈ͔ͨ͢ΊʹϝϞϦɺ$16ɺσΟεΫɺωοτϫʔΫͳͲΛ ػցޠʹΑͬͯهड़͢Δඞཁ͕͋Δ 8JLJQFEJBͷྫ 10110000 01100001 ! B0 61
! MOV AL, 61h wߴڃݴޠ $ɺ'PSUSBOɺFUDʜ ͰΑΓநԽ͞Ε͍ͯΔ for(i=0; i<10; i++); … wݱͰʜ 10.times{…}
σʔλͷநԽ wྫ࡞ՈNJOOFͷར༻ऀຊࡏॅͷਓਓ wͲͷநϨΠϠʔΛιϑτΣΞͱ࣮ͯ͠ݱ͢Δ͔ʹΑͬͯɺιϑτΣΞͷ ෳࡶ͕ҟͳΔ wநϨΠϠʔΛ্͛Δ΄ͲιϑτΣΞͱͯ͠ߟྀ͖͢ࣄ͕૿͑ΔͨΊɺ ιϑτΣΞͱͯ͠ਓͱਓ͕Πϝʔδ͍ͯ͠ΔࣄʹԊͬͨσʔλΛݕ౼͢Δ ඞཁ͕͋Δ
ιϑτΣΞ։ൃͷࠔ͞ʹཱ͔ͪ͏ wιϑτΣΞύϥμΠϜ ˠߏԽϓϩάϥϛϯάɺΦϒδΣΫτࢦϓϩάϥϛϯάɺ($ɺܕਪʜ wιϑτΣΞΞʔΩςΫνϟ ˠ(P'ͷσβΠϯύλʔϯɺ.7$ɺ.77.ɺ.JDSP4FSWJDFTʜ wιϑτΣΞ։ൃϓϩηε ˠΥʔλϑΥʔϧɺεύΠϥϧϞσϧɺ91ɺ4DSVNʜ
ྑ͍ιϑτΣΞͬͯԿͩͱࢥ͍·͔͢ ࣗ༝هड़
γεςϜֶ wࣄΛΠϯϓοτɺܥ γεςϜ ɺΞτϓοτͷࡾͭͰϞσϧԽ͢Δ wΠϯϓοτͱܥ͔Βੜ·ΕͨΞτϓοτ͕ظ௨ΓͰ͋Δ͔Ͳ͏͔Λ࣭ ͱݺͿ γεςϜ Πϯϓοτ Ξτϓοτ
࣭ͱ͍͏ͷઈରͰͳ͘૬ର
ֶ࣭ͱԿ͔ wl։ൃɾઃܭஈ֊ͷֶ࣭zʹΑΔఆٛ ࣭ ػೳͷΒ͖ͭʹΑΔଛࣦ ༻ίετ ฐ߲ʹΑΔଛࣦ wཧػೳͷΒ͖ͭʹΑΔଛࣦ ਓʹΑΔՁج४ਓʹΑͬͯҟͳΔͨΊɺ࣭ͱ͍͏ͷΛֶͱͯ͠ѻ͏
࣌ʹɺՁج४ʹরΒ͢ͷͰͳ͘ɺ࡞ͷཧػೳͱ࣮ࡍʹ༗͢Δػೳ ͱͷΒ͖ͭΛج४ͱ͢Δ
ֶ࣭ͷجຊతͳߟ͑ํ w։ൃઃܭஈ֊Ͱ࣭Λ࡞ΓࠐΉ ˠஈ֊Ͱ࡞ΓࠐΉ͔ΒػೳͷΒ͖͕ͭൃੜ͢Δ wΑ͋͘Δޡղ ʮςετɾࢼݧͰ্࣭ʯ wςετͰΘ͔Δ͜ͱ࡞ͷ࣭͕Ͳͷఔ͔Ͱ͋Γɺ࡞ͦͷͷͷ ࣭͕มԽ͢ΔΘ͚Ͱͳ͍
اըஈ֊ͷ࣭ཧ l࣭zϢʔβʔͷظ͢Δػೳͱ࣮ࡍʹఏڙ͍ͯ͠ΔػೳͱͷဃͰ͋Δ ߴ࣭ wػೳͱཧػೳͱͷဃͷΒ͖͕ͭখ͍͜͞ͱ wϓϥεͷဃ͕ߴ͍͜ͱ͚͕ͩߴ࣭ͱݺͳ͍ ྫա࣭ ࣭ wػೳͱཧػೳͱͷဃͷΒ͖͕ͭେ͖͍͜ͱ wϚΠφεͷဃ͕େ͖͚ΕϢʔβʔͷຬײΛຬͨ͢͜ͱͰ͖ͳ͍
ͨΓલ࣭ͱັྗత࣭ ङ ັྗత࣭ͱͨΓલ࣭ ʹΑΔఆٛ ͨΓલ࣭ w࣭ج४Λຬͨ͞ͳ͍߹ɺϢʔβʔͷຬΛԼͤ͞ΔཁҼͱͳΔ͕ɺຬ ͍ͨͯͯ͠ຬͷ্ݟࠐΊͳ͍ ັྗత࣭ w࣭ج४Λຬͨͨ͠߹ɺϢʔβʔͷຬΛ্ͤ͞ΔཁҼͱͳΔ͕ɺຬͨ ͯ͠ͳ͍߹ͰຬʹӨڹ͠ͳ͍
εϚʔτϑΥϯͷ ͨΓલ࣭ͱັྗత࣭Λߟ͑Α͏ ࣗ༝هड़
ͨΓલ࣭ͱັྗత࣭ IUUQTTJUFTHPPHMFDPNTJUFUFDIENCBLBOPNPEFM
·ͱΊ wιϑτΣΞΈΜͳͷ৺ͷதʹ͋Δ w࣭ςετʹΑͬͯಘΒΕΔͷͰͳ͕ࣗͨͪ͘࡞ΓࠐΉͷ w͕ࣗ࡞͍ͬͯΔͷͷ࣭Կ͔Λҙࣝ͢Δ ͨΓલ࣭ͱັྗత࣭ wͦͦιϑτΣΞ։ൃ͍͠ w͍͠ͷΛཧղ্ͨ͠ͰΑΓྑ͍ιϑτΣΞΛੜΈग़ͨ͢ΊʹؤுΓ·͠ΐ ͏