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
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
Search
Infiniteloop
October 18, 2023
Programming
0
160
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
【タガヤス その13】ILの日常業務から 発表資料
https://tagayas.connpass.com/event/145290/
Infiniteloop
October 18, 2023
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2025年版)
infiniteloop_inc
16
62k
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
1
570
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
1
820
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
1.2k
詫び石の裏側
infiniteloop_inc
0
800
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
7
34k
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
240
ADRという考えを取り入れてみて
infiniteloop_inc
0
250
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
190
Other Decks in Programming
See All in Programming
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.7k
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
430
アーキテクチャと考える迷子にならない開発者テスト
irof
5
1.6k
CSC509 Lecture 10
javiergs
PRO
0
170
Kotlinで実装するCPU/GPU 「協調的」パフォーマンス管理
matuyuhi
0
370
SidekiqでAIに商品説明を生成させてみた
akinko_0915
0
130
組織もソフトウェアも難しく考えない、もっとシンプルな考え方で設計する #phpconfuk
o0h
PRO
10
4k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
2
520
Tangible Code
chobishiba
3
530
Kotlin + Power-Assert 言語組み込みならではのAssertion Library採用と運用ベストプラクティス by Kazuki Matsuda/Gen-AX
kazukima
0
110
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
140
業務でAIを使いたい話
hnw
0
260
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Docker and Python
trallard
46
3.6k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
What's in a price? How to price your products and services
michaelherold
246
12k
The Pragmatic Product Professional
lauravandoore
36
7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Gamification - CAS2011
davidbonilla
81
5.5k
Bash Introduction
62gerente
615
210k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Context Engineering - Making Every Token Count
addyosmani
9
380
Navigating Team Friction
lara
190
15k
Transcript
I ❤ Virtual Machines ԾڥΛΑΓศརʹ͏πʔϧͨͪ
ࣗݾհ wYDࡀ
੨ݝീށࢢੜ·Ε
ࣗݾհ wYDࡀ w੨ݝീށࢢੜ·Ε wೖࣾϲ݄ͷ υ৽ਓ
ೖࣾͯ͋ͬͨ͋͠Δ
ࠓλΨϠεͰ ͬͯΈͳ͍ʁ
ͦͷͷϊϦ͚ͩͰ Ҿ͖ड͚͍͍ͨͷͷ
😰
˞ݸਓͷภݟͰ͢
😰
˞ݸਓͷภݟͰ͢
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
ߋʹݴ͏ͱ wೖࣾϲ݄ w్த͓ຍٳΈ wՔಇͯͨ͠ͷͨͿΜ࣮࣭ϲ݄ͪΐͬͱ wۀମݧϕʔεͰޠΕΔ΄Ͳঢ՚ͨ͠ωλෆ
WT
࣋ͪωλͰҰ੮
None
ຊ
ͷલʹ
લఏ
wఆ͍ͯ͠Δͷେͷ෦͕1)1 Ͱॻ͔Ε͍ͯΔ8FCΞϓϦέʔγϣ ϯͷ։ൃͰ͢
w։ൃऀ͕ར༻͍ͯ͠Δීஈ͍ͷڥ w8JOEPXT wNBD04
wຊ൪ڥ-JOVYΛఆ͍ͯ͠·͢
࣍
None
None
None
None
ԾϚγϯʹΑΔ ։ൃڥߏங
ํ๏ͦͷ ۃ
͓ۚͰղܾ
ϓϩδΣΫτ͝ͱʹ·ͬͨ͘ಉڥͷઐ༻ ։ൃαʔό
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
w࠷ڧ w͓ࡒͱٿڥʹ༏͘͠ͳͦ͞͏ wཧ͡Όͳͯ͘ΫϥυͳΒϫϯνϟ ϯ͋Δ͔
ํ๏ͦͷ
ݱ࣮తͳͭ
ԾϚγϯ
ԾϚγϯΛ࣮ݱ͢Δ ༏लͳϓϩμΫτ ଟʑ͋Γ·͕͢
ࠓճࣄྫଟ͘ ೖ͍͢͠ 7BHSBOU 7JSUVBM#PYͰ͓ΛਐΊ·͢
7JSUVBM#PY
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXT NBD04-JOVYͷϓ ϥοτϑΥʔϜͰಈ࡞
7JSUVBM#PY w0SBDMFͰݱࡏ։ൃ w8JOEPXTNBD04 -JOVYͷϓϥοτϑΥʔϜͰ ಈ࡞ wख࣋ͪͷ1$ͷதʹԾ తͳ1$Λ্ཱͪ͛ͯ ͘ΕΔ
7BHSBOU
7BHSBOU wԾϚγϯΫϥυ ্ͷϚγϯΛΑ͠ͳʹ ઃఆ্ཱͯͪ͛ͯ͘͠ ΕΔαϙʔτπʔϧ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏ 3VCZεΫϦϓτ
7BHSBOU wԾϚγϯΫϥυ্ͷϚ γϯΛΑ͠ͳʹઃఆཱͯͪ͠ ্͛ͯ͘ΕΔαϙʔτπʔϧ w7BHSBOUpMFͱ͍͏3VCZε ΫϦϓτ wଞͷߏཧπʔϧͱ ͷڠௐ
ϝϦοτ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ
ϝϦοτ wશ͘ಉ͡ͱ͍͏Θ͚Ͱͳ͍͚ΕͲ wߏஙͷࣗಈԽ w։ൃऀಉ࢜Ͱखܰʹڞ༗Ͱ͖Δ wؒҧͬͯյͯ͠
σϝϦοτ wͦΕͳΓʹεϖοΫඞཁ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ wͨͿΜ͙͜͜Β͍ͳΒ
σϝϦοτ w ͦΕͳΓʹεϖοΫඞཁ w ͨͿΜ͙͜͜Β͍ͳΒ wཉΛݴ͑ϝϞϦ(#ͰετϨʔ δ44% w ͓ࡒʹ͍͞͠ͱԿͩͬͨͷ͔
͜͜·Ͱ·ͱΊ ઃඋࢿΛ͓͑ͭͭ͞ ීஈ͍ͷڥͷ ΠϯύΫτΛ͑ͨ։ ൃڥΛ࡞Γ͍ͨ ͱ͍͏͜ͱͰ͋Ε Ծڥͷߏங͕͓ ͢͢Ί
7JTVBM4UVEJP$PEF 3FNPUF%FWFMPQNFOU &YUFOTJPOͷհ
ԾڥͰίʔυΛॻ͘ͱ͖ ͥͻͬͯ΄͍͠
ฐࣾͰ1)14UPSN͕ਓؾͷΑ͏Ͱ͢ ͪ͜Β͍͍͢Ͱ͢Α
ࢲ74$PEF͕͖ ͳͷͰ74$PEFͰॻ͍͍͖ͯ·͠ΐ͏
͜ͷ࣌Ͱͷ ։ൃڥͷߏ
None
None
None
None
None
None
͜ͷลʹʮΠέςφΠײʯ ͋Γ·ͤΜʁ ೋॏཧ͍ͬͯ͏͔ɾɾɾ
None
ήετ͔ΒͷΞΫηε͕͍
None
None
ʅɾТɾʆ γϣϯϘϦοΫϦϯΫ
None
͜Ε͡Όҙຯ͕ͳ͍Αͳ͋
None
None
None
None
None
None
None
None
None
None
None
None
None
None
εοΩϦʂ
͜͜·Ͱ·ͱΊ 74$PEF 3FNPUF %FWFMPQNFOU ԾϚγϯΫϥ υͳͲͷϦϞʔτ։ ൃͷਏΈΛ૬Ϩϕ ϧͰܰݮͯ͘͠ΕΔ
τϯωϦϯάαʔϏεΛ ͓͏
։ൃ͕ਐΜͰ͖ͨΒ
$BTF"
։ൃதͷϓϩμΫτʹ͍ͭͯ Կ͔ఏҊ͍ͨ͠ͱ͖ʹ։ൃதͷ ಈ͖Λݟͤͨ΄͏͕खͬऔΓૣ͍ͱ͖ͬͯ͋Γ·ͤΜ͔ʁ
ϓϩμΫγϣϯڥҎ֎Ͱ ಈ࡞ڥΛ࡞ͬͯͦ͜ʹ ։ൃதϒϥϯνΛσϓϩΠ
͏࡞Δͱ͔ͦ͜·Ͱ େࣄ͡Όͳͯ͘ɾɾɾ Ͱݟ͍ͤͨײ
Ұ࣌తͰ͍͍
$BTF#
ϩʔΧϧϚγϯͰϒϥβ͔ΒݟΔ 8FCΞϓϦΛ IPTUTϑΝΠϧΛฤू͢Δ͜ͱͰ ֬ೝ͍ͯͨ͠
ػೳՃ
֎෦"1*ͱͷଓ
ίʔϧόοΫઌʹ IUUQTͰ7BMJEͳূ໌ॻΛ ࣋ͬͨϗεςΟϯά͕ඞਢ
None
ͦΜͳͱ͖ʹͬͯ΄͍͠ OHSPLͳͲͷτϯωϦϯάαʔϏε
τϯωϦϯάαʔϏεͱ wϩʔΧϧϚγϯ͔Β αʔϏεଆͷαʔόʹ ͭͳ͍ͩ44)ίωΫ γϣϯΛͬͯτϯω ϧԽ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ wαʔϏεଆ͔Βϗετ ໊͕ൃߦ͞ΕΔ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷ αʔόʹͭͳ͍ͩ44)ίωΫγϣ ϯΛͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞Ε Δ wͦͷϗετ໊ʹ͔ͬ ͯϒϥβ͕
)551 T ௨৴Λ͢Δ
τϯωϦϯάαʔϏεͱ w ϩʔΧϧϚγϯ͔ΒαʔϏεଆͷαʔ όʹͭͳ͍ͩ44)ίωΫγϣϯΛ ͬͯτϯωϧԽ͢Δ w αʔϏεଆ͔Βϗετ໊͕ൃߦ͞ΕΔ w ͦͷϗετ໊ʹ͔ͬͯϒϥβ͕ )551
T ௨৴Λ͢Δ wαʔϏεଆ͕ϩʔΧϧϚ γϯͷίϯςϯπΛτϯ ωϧܦ༝Ͱऔಘͯ͠ 8FCϒϥβʹฦ͢
MPDBMIPTU͔Β IUUQTʜ ͱ͍͏63-Ͱίϯςϯπ͕ݟͤΒΕΔ
੍ݶ͋Δ wແྉϓϥϯ࣌ؒ͋ͨΓͷ)551ϦΫΤετʹ ੍ݶ͕͋Δ
63-΄΅͍ࣺͯ 44)ͷίωΫγϣϯ͕ ΒΕ͍ͯΔؒͷΈ༗ޮ
ڵຯ͕Θ͍ͨͷͰ
OHSPLҎ֎ʹ ྨࣅαʔϏεΛௐͯΈͨ
TFSWFP IUUQTTFSWFPOFU
ಛ wݻఆͷαϒυϝΠϯಠࣗυϝΠϯ͕ ͑Δ wηϧϑϗεςΟϯά༻ͷαʔόΞϓϦ ఏڙ͞Ε͍ͯΔ wࣗͰαʔόΛͨͯͯಠࣗυϝΠϯͰ ӡ༻Ͱ͖ͦ͏
MPDBMUVOOFM IUUQTMPDBMUVOOFMHJUIVCJPXXX
ಛ wΫϥΠΞϯτOQ̼ wαʔόଆͷΞϓϦOQN wTFSWFPಉ༷ࣗͰαʔό͕ͨͯΒΕΔ w࣌ؒଳʹΑΔ͔͠Εͳ͍͕एׯ͍ ͔ʁ
͜͜·Ͱ·ͱΊ OHSPLͳͲͷ αʔϏεͰ MPDBMIPTUͷ ΞϓϦέʔγϣϯΛ Πϯλʔωοτ্ʹ ެ։Ͱ͖Δ
݁ͼ
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
ϓϩάϥϚͷࡾେඒಙ ଵଦ -B[JOFTT ؾ *NQBUJFODF ၗຫ )VCSJT
lશମͷ࿑ྗΛݮΒͨ͢Ίʹ खؒΛ੯͠·ͳ͍ؾ࣭z
͙͢ΕͨπʔϧΛॿ͚Δ πʔϧ͕͞͠ͷཱྀଓ͘
ͨͩ͠
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ
ͨͩ͠ ʮԼखͷಓ۩ௐʯʹؕΒͳ͍ ఔʹ΄Ͳ΄Ͳʹ πʔϧͦͷͷͷ༏ल͓͖ͯ͞͞ ࣗͷखʹೃછΉ͜ͱ͕Ұ൪େࣄ
ؒΛ૿ͦ͏
͓͋ͱ͕ΑΖ͍͠Α͏Ͱ