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.6k
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.7k
Ruby の開発を支えるエコシステム
hsbt
4
2.3k
Why is building the Ruby environment hard?
hsbt
6
7.7k
開発環境へのこだわり
hsbt
16
12k
OSS ことはじめ
hsbt
5
1.4k
GMO DevNight 05 在宅勤務開始から2ヶ月でやったこと
hsbt
2
550
Development Environment 2019
hsbt
1
340
How to become the Psychic
hsbt
0
2k
Social Inclusion for Engineering Organization
hsbt
0
1.1k
Other Decks in Technology
See All in Technology
about #74462 go/token#FileSet
tomtwinkle
1
270
北海道の人に知ってもらいたいGISスポット / gis-spot-in-hokkaido-2025
sakaik
0
200
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
220
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
170
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
260
FastAPIの魔法をgRPC/Connect RPCへ
monotaro
PRO
1
640
pprof vs runtime/trace (FlightRecorder)
task4233
0
140
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
3
140
Flaky Testへの現実解をGoのプロポーザルから考える | Go Conference 2025
upamune
1
360
KMP の Swift export
kokihirokawa
0
270
C# 14 / .NET 10 の新機能 (RC 1 時点)
nenonaninu
1
1.4k
Why React!?? Next.jsそしてReactを改めてイチから選ぶ
ypresto
10
4k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
460k
Optimizing for Happiness
mojombo
379
70k
Thoughts on Productivity
jonyablonski
70
4.8k
Producing Creativity
orderedlist
PRO
347
40k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
The Cult of Friendly URLs
andyhume
79
6.6k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
890
Speed Design
sergeychernyshev
32
1.1k
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͍͠ͷΛཧղ্ͨ͠ͰΑΓྑ͍ιϑτΣΞΛੜΈग़ͨ͢ΊʹؤுΓ·͠ΐ ͏