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
私と Nature Remo E / Nature Remo E
Search
Kuniwak
PRO
March 24, 2023
Technology
0
26k
私と Nature Remo E / Nature Remo E
Kuniwak
PRO
March 24, 2023
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
テストケースの名前はどうつけるべきか?
orgachem
PRO
1
430
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.2k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
110
HOME VR
orgachem
PRO
1
800
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.4k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.3k
SoftWare Engineer in Test のおしごと / What is SWET
orgachem
PRO
1
1.1k
存在しないアセットへの参照と 未公開アセットでのネタバレに どう立ち向かうか / How to prevent missing assets and spoilers by assets
orgachem
PRO
1
1.1k
睡眠する技術 / Technology to Sleep
orgachem
PRO
15
14k
Other Decks in Technology
See All in Technology
JPOUG Tech Talk #12 UNDO Tablespace Reintroduction
nori_shinoda
1
140
【2025年度新卒技術研修】100分で学ぶ サイバーエージェントのデータベース 活用事例とMySQLパフォーマンス調査
cyberagentdevelopers
PRO
5
7.3k
彩の国で始めよう。おっさんエンジニアから共有したい、当たり前のことを当たり前にする技術
otsuki
0
140
SDカードフォレンジック
su3158
1
600
LangfuseでAIエージェントの 可観測性を高めよう!/Enhancing AI Agent Observability with Langfuse!
jnymyk
1
220
Рекомендации с нуля: как мы в Lamoda превратили главную страницу в ключевую точку входа для персонализированного шоппинга. Данил Комаров, Data Scientist, Lamoda Tech
lamodatech
0
710
更新系と状態
uhyo
5
730
より良い開発者体験を実現するために~開発初心者が感じた生成AIの可能性~
masakiokuda
0
130
似たような課題が何度も蘇ってくるゾンビふりかえりを撲滅するため、ふりかえりのテーマをフォーカスしてもらった話 / focusing on the theme
naitosatoshi
0
450
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming
tomzoh
1
230
Classmethod AI Talks(CATs) #21 司会進行スライド(2025.04.17) / classmethod-ai-talks-aka-cats_moderator-slides_vol21_2025-04-17
shinyaa31
0
570
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM, Prompt Engineering and Building Tutors
ks91
PRO
1
250
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
Code Reviewing Like a Champion
maltzj
522
40k
Automating Front-end Workflow
addyosmani
1369
200k
Site-Speed That Sticks
csswizardry
5
490
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.3k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
670
Raft: Consensus for Rubyists
vanstee
137
6.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
How to Think Like a Performance Engineer
csswizardry
23
1.5k
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
Transcript
ࢲͱ/BUVSF3FNP& /BUVSF.FFUVQ,VOJXBL
,VOJXBL /BUVSFࣾͷϏδϣϯʹڞײͨ͠Ұਓɻ ΤωϧΪʔͳΜͱ͔͠ͳ͍ͱ͍͚ͳ͍ɻ 3FNPྺɺ3FNP&ྺϲ݄ɻ 2
None
None
None
None
ࣗͷઃඋ 7
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 8
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 9
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 10 ͕ڱ͍ͷͰൃిྔখ͍͞
ຊͬͱൃిྔ͕΄͍͠
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 11
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 12 ࣨʹஔ͔͘໎ͬͯ݁ہ֎ʹͨ͠
ՈͰҰ൪ߴֹͳͷۭؒͳͷͰʜ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 13 ༰ྔN"IͷϞόΠϧ
όοςϦʔݸͩͱݴΘΕΔͱ গͳ͘ײ͡Δ͕ʜ
3FNP&Ͱͷ؍݁Ռ 14 ΑΓ্ͷͷόʔిʹΑΔ څిɻҙ֎ͱ"IͰ͍ͬͯΔ ே৯४උͷ*)ɾిࢠϨϯδͰ ྗਚ͖͕ͨͦΕ·Ͱ͍͑ͯͨ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 15
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 16 ຊԻΛݴ͏ͱεϚʔτి൫ʹ͢Δ
ͭΓͳ͔͕ͬͨɺ͏͔ͬΓ εϚʔτి൫ʹͳ͍ͬͯͨ ࠓͰେਖ਼ղͩͱࢥ͍ͬͯΔʢޙड़ʣ
εϚʔτి൫ 17 -"/έʔϒϧ͕ ͍ͬͯ͞Δ
ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Δʂ 18
ޙͰઆ໌͢Δ͕ిྗ༻ྔΛ͘͢Δʹ ిྗ༻ྔͷଟ͍ՈిΛಛఆ͢Δ͜ͱ͕ॏཁɻ ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Βͳ͍ͱ Ոిͷ0/0''ΛΓସ͑ͯτʔλϧͷ ిྗ༻ྔͷมԽΛ؍͠ͳ͍ͱ͍͚ͳ͍ɻ ͜ͷ࡞ۀ͋·Γʹେมʜ 19
ίϯηϯτ͝ͱͷిྗ༻ྔ͕Θ͔Δʂ 20 εϚʔτి൫ ਆͱ͍͏͜ͱ
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 21
ଠཅޫύωϧ ژηϥΤίϊϧʔπλΠϓ-L8I ి 1BOBTPOJD-+#L8I"I εϚʔτి൫ 1BOBTPOJD#).;$ ΤίΩϡʔτ )*5"$)*#)15"%6 22 &$)0/&5-JUFରԠػछ͕ͩઢͱ
ՃϞδϡʔϧ͕ඞཁɻඞཁͳ͍ͱ ࢥ͍ͬͯͨͷͰจ͍ͯ͠ͳ͔ͬͨʜ
ͳ͓εϚʔτి൫͔Β ΤίΩϡʔτΛ؍Ͱ͖Δ 23 εϚʔτి൫ ਆͱ͍͏͜ͱ
ΤωϧΪʔʢͱࡒʣͷ ͨΊʹ࣮ફ͍ͯ͠Δ͜ͱ 24
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 25
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 26
ޤ͍ʢӍޤ͍ͷٯʣ 27 ո͛͠ͳّࣜӕͰ͕͢ ຖΕͯ΄͍͠ͱ ࢥ͍ͬͯΔͷຊͰ͢
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 28
༻ྔͷݮ w ిྗ༻ྔͷଟ͍Ոి͔ΒݮΒ͍͔ͯ͠ͳ͍ͱ τʔλϧͷిྗ༻ྔ͕ݮΒͳ͍ w Λ੍ޚ͢ΔՈిͲΕిྗ༻ྔ͕ ଟ͍ͷͰ͜ΕΒͷՈిͷઃఆΛݟ͢ͱΑ͍ 29
ઃఆΛݟͨ͠ͷ w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠ 30
ઃఆΛݟͨ͠ͷ 31 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ࢲͷ'*5ͷങऔՁ֨=L8Iɻ౦ژిྗͷਂͷిؾྉۚΑΓ ങऔՁ͕͍֨҆ͷͰࣗՈফඅͨ͠ํ͕ܦࡁతͰ͋Δ ిͷӡసϞʔυʹܦࡁ༏ઌϞʔυͱڥ༏ઌϞʔυ͕͋Γɺ ͜ͷঢ়گͰࣗՈফඅॏࢹͷڥϞʔυͷํ͕ܦࡁతʹͳΔ
ิɿܦࡁ༏ઌϞʔυͱڥ༏ઌϞʔυ 32 ܦࡁ༏ઌϞʔυ ڥ༏ઌϞʔυ ॆిʹ͏ిྗ ਂͷ҆Ձͳిྗ ଠཅޫൃిͷ ༨ిྗ ଠཅޫൃిͷ ༨ిྗ
ͯ͢ചి ॆిʹͬͨ ༨ΓΛചి
ઃఆΛݟͨ͠ͷ 33 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ిྗফඅྔ͔ͳΓେ͖͍ͱ༧͍͕ͯͨ͠ ࣮ࡍʹେ͖͍ɻΤίϞʔυͷઃఆΛશ෦ Φϯʹͨ͠Β͍ͩͿେਓ͘͠ͳͬͨ
ઃఆΛݟͨ͠ͷ 34 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
ӡసఀࢭ͠ͳ͍ํ͕ిྗΛফඅ͠ͳ͍ͱ͢Δઆ͋Δ͕ɺ ࣮ࡍʹ3FNP&Ͱܭଌͨ͠ͱ͜Ζఀࢭͨ͠ํͷ༻ྔ͕ গͳ͍ͱΘ͔ͬͨʢߴஅؾີͷॅ͔ͩΒ͔ʁʣ
ઃఆΛݟͨ͠ͷ 35 w ిɿӡసϞʔυΛܦࡁϞʔυ͔ΒڥϞʔυʹͨ͠ w ΤίΩϡʔτɿΤίϞʔυͷઃఆΛͯ͢Φϯʹͨ͠ w ΤΞίϯɿ3FNPͰࣗಈͰਂʹӡసఀࢭ͢ΔΑ͏ʹͨ͠ w Թஆศ࠲ɿઃఆԹΛͨ͘͠
3FNP&Λݟ͍ͯͨΒɺτΠϨͰిྗফඅ͕େ͖͍͜ͱ͕ Θ͔ΓԹஆศ࠲ΛΦϑ·ͨऑͨ͘͠Βେਓ͘͠ͳͬͨ
࣮ફ͍ͯ͠Δ͜ͱ wൃిྔͷ૿Ճ w༻ྔͷݮ w༻λΠϛϯάͷมߋ 36
༻λΠϛϯάͷมߋ '*5ͷՁ֨Լམ͢ΔҰํͰɺ'*5ظؒͰ ͋ͬͯిྗΛചͬͯେͨ͠ऩೖʹͳΒͳ͍ɻ ଠཅޫൃిˠిͷมޮఔͰ ిΛܦ༝͢Δͱͷϩε͕͋Δɻ ͜ͷ͔ΒͳΔ͘ଠཅޫͰൃిͨ͠ిؾ ൃిͨͦ͠ͷ࣌ʹ༻͍ͨ͠ɻ 37
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 38 ࣌ؒΛ͏ͷͰిྗ༻ྔ͕͔ͳΓେ͖͘ɺҰ൪ ൃిྔͷଟ͍ਖ਼ޕͷൃిྔΛ͍Δ΄Ͳʹ༻͢Δɻ
ͳΔ͘ਖ਼ޕΛ·͙ͨΑ͏ʹͯ͠ચ୕ס૩Λ͢ΔͱΑ͍ɻ Ұपճͬͯఱؾͷྑ͍͕ચ୕ʹͳͬͨ
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 39 ࣌ؒΛ͏ͷͰిྗ༻ྔ͕ͦͦ͜͜େ͖͍ɻ ࡞Γஔ͖ͳΒΕΛͯΔͷͰΕͨλΠϛϯάͰ
Ұؾʹௐཧͯ͠͠·͏ͱΑ͍
༻λΠϛϯάͷมߋ w ચ୕ס૩ػɾཋࣨס૩ػɿΕͷதʹ༻͢Δ w ϗοτΫοΫʢ࡞Γஔ͖ʣɿΕͷதʹ༻͢Δ w ΤίΩϡʔτɿΕͷதʹ༻͢Δ 40 ޙͰ͕ͬͨɺ͜ͷػछ͔࣌ؒ͢Λେͯ͠มߋͰ͖ͳ͍ɻ தʹফඅ͕͋ΕଠཅޫͰ͔ͯ͘͠ΕΔ͕ɺ౬ͷফඅ͕Ұ൪
େ͖͍ͷೖཋͰզ͕ՈͷೖཋͳͷͰਂʹ͔͞Εͯ͠·͏ɻ &$)0/&5-JUFϞδϡʔϧΛ͚ͭͯ/BUVSF͕ఱؾ༧ใΛ τϦΨʹͰ͖ΔΑ͏ʹͳΕͳΜͱ͔ͳΔ͔͠Εͳ͍͕ʜ ଠཅޫൃిར༻ػೳ͋Δ͕લͷखಈૢ࡞͕ඞཁɻແཧήʔͰʁ
3FNP&͔ΒΤΫεϙʔτ ͨ͠σʔλʹΑΔޮՌଌఆ 41
3FNP&͔ΒͷσʔλΤΫεϙʔτ 42 ༻ిྗྔͳͲΛ $47ܗࣜͰ ΤΫεϙʔτͰ͖Δ
ޮՌଌఆͷҙࣄ߲ ͦΕͧΕͷରࡦΛ࢝ΊͨλΠϛϯάͱقઅͷҠΓมΘΓ ʢౙˠय़ʣ͕ඃ͍ͬͯΔͷͰࠩ͠Ҿ͍ͯΈͯ΄͍͠ɻ ͨͱ͑ؾԹ͕มΘΔ͚ͩͰΤΞίϯͷফඅిྗྔ͕ มΘͬͯ͠·͍ެฏͳൺֱʹͳΒͳ͍ɻ 43
3FNP&͔ΒΤΫεϙʔτͨ͠σʔλʹΑΔൺֱ 44 ʢରࡦલʣ ʢରࡦޙʣ
3FNP&͔ΒΤΫεϙʔτͨ͠σʔλʹΑΔൺֱ 45 ༻λΠϛϯάͷ มߋʹΑΓങిྔݮ ઃఆมߋʹΑΓফඅ ిྗྔݮ ଠཅޫൃిྔ݄ˠ ݄Ͱ૿ͳͷͰ ചిྔඍݮ ʢରࡦલʣ
ʢରࡦޙʣ
࣮ࡍͷσʔλ͜Μͳײ͡ 46 ݄ ݄
·ͱΊ 47
3FNP&͔ͳΓ͍͍ 48 ܭଌͰ͖Δͱؔ৺Λ࣋ͯΔ͠ରࡦ ଧͯΔɻͦͷܭଌΛॿ͚ͯ͘ΕΔ 3FNP&͍͍͘͢͝ͱ,VOJXBL ࢥ͏ʢͳ͔ͳ͔ͷ͓ஈ͚ͨ͠Ͳʣɻ