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
Myself Application for HomePod
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yucky
January 30, 2020
Programming
290
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Myself Application for HomePod
yucky
January 30, 2020
More Decks by yucky
See All by yucky
ラズパイとNFCリーダー(PaSoRi)をタッチディスプレイで使いたい人生だった。
yucky
0
590
Web制作に関する勉強会#0
yucky
0
83
Other Decks in Programming
See All in Programming
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.5k
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
500
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
250
act1-costs.pdf
sumedhbala
0
230
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
190
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
140
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
230
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.5k
Claude Team Plan導入・ガイド
tk3fftk
0
200
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6.2k
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
It's Worth the Effort
3n
188
29k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Paper Plane
katiecoart
PRO
2
52k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Navigating Weather and Climate Data
rabernat
0
360
Facilitating Awesome Meetings
lara
57
7k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
470
A Modern Web Designer's Workflow
chriscoyier
698
190k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Transcript
)PNF1PEରԠεΩϧΛ )FMMP8PSMEϕʔεͰ࡞ͬͯΈͨ Ծ εϚʔτεϐʔΧʔϛʔςΟϯά
ࣗݾհ 5BLBZVLJ.BTBLJ !ZVDLZ@TVO 7PJDF'MPX+BQBO6TFST(SPVQ (PPETCJUMZ3%UPF &DIP1MVT &DIP4IPX &DIP%PUXJUI$MPDL (PPHMF)PNF (PPHMF/FTU)VC
$MPWB'SJFOET )PNF1PE (BSNJOWJWPBDUJWF 'JUCJUWFSTB #PTF'SBNFT 3FWFSTFIJSJOHOPX
એ ҰԠ
4BU ਆށʂ ׂҾίʔυ͕͓·Δ͞Μ·Ͱ ਃ͠ࠐΈϦϯΫ IUUQTBBKVHEPPSLFFQFSKQFWFOUT
IUUQCJUMZ3%S++ ʢAʣŇP0 ฉ͑͜·͔͢ɾɾεϚεϐϛʔςΟϯάࢀՃऀͷํʑ ࠓɺ͋ͳͨͷ৺ʹ͍͔͚͍ͯ·͢ɾɾɻ 7PJDF$PO+BQBOͰɺݱࡏελοϑืूதͳͷͰ͢ɾɾɻ ຊ࠷େنͷԻΞγελϯτͷΧϯϑΝϨϯεͳͷͰ ͊͜͞ΕΛݟͨΒɺ͍·͙͢ࢀՃਃ͠ࠐΈΛ͢ΔͷͰ͢ɾɾɾɻ (PPHMFϑΥʔϜ
ຊ ͜Ε͔ΒจࣈଟΊ
ɾ"MFYBɺ(PPHMFؔ࿈͔ͳΓใྔ͕๛ʹͳ͖ͬͯͨ ɾ$MPWBʹ͍ͭͯ"1*&YQFSUͷํʑͷ͓͔͛Ͱ࿈ܞ͍͢͠ڥ͕Ͱ͖ͨ ɾਓப͕ଟ͘ଘࡏ͍ͯ͠ΔͷͰ ɹࡢՆࠒ͘Β͍͔ΒΈΜͳͱ͍ͬͭͯΓग़ͯ͠Δ ɾҰํɺ4JSJʹ͍ͭͯจݙ͕গͳ͍ɻ ɾ)PNF1PEͷॴ༗ऀ ຊͰ ͔ͳΓݶΒΕΔ ɾΞγελϯτͷྺ࢙ͱͯ͠࠷ݹ ʙ
Ͱ͋Δ ɾ"OESPJE͔ΒJ1IPOFʹҌସ͑ͨ͠ɹ͜Ε͕Ұ൪ͷཁҼ ͳΜ͔໘നͦ͏ͩ͠ɺͱΓ͋͑ͣͬͯΈΑ͏తͳϊϦ ͳͥɺ)PNF1PEΛͬͯΈΑ͏ͱࢥ͔ͬͨ
8IBUAT4JSJ ɾ4JSJͷҙຯʁʁ 4QFFDI*OUFSQSFUBUJPOBOE3FDPHOJUJPO*OUFSGBDF ಄จࣈͰ4JSJ ൃղੳͱೝࣝΠϯλʔϑΝΠεͷҙຯ ɾݩʑΞϝϦΧͷࠃߴݚڀܭըہ %"31"%FGFOTF"EWBODFE3FTFBSDI1SPKFDU"HFODZ ʹΑͬͯ ɹฌ࢜ͷઓαϙʔτ༻ͱͯ͠ਓೳ։ൃϓϩδΣΫτ͕࢝·ͬͨ͜ͱ͕ൃ
ɾൃച͞ΕͨJ1IPOFTʹॳΊͯΞγελϯτػೳͱͯ͠ॳࡌɻ ɹ࣌ͷ04J04 ɹ ຊޠରԠ݄ ɾNBD04ͷରԠͷ88%$ 8PSMEXJEF%FWFMPQFST$POGFSFODF ʹͯ ɹ"1*ͷެ։ͱͱʹ4JFSSB͔ΒରԠ։࢝ ͪͳΈʹ"MFYBɺ9ͱͷؒʹߗ͍ࢠԻ͕͋ΓɺΑΓߴ͍ਫ਼Ͱೝࣝ͞ΕΔͱ͍͏ཧ༝
8IBUAT)PNF1PE ɾ"QQMFۘͷڊେεϚʔτεϐʔΧʔ ɾͷ88%$ʹͯൃදɺ݄ʹ ɹΞϝϦΧɺΠΪϦεɺΦʔετϥϦΞʹͯઌߦൢച ɹຊͰ݄ൢച։࢝ ɾ NNLHͷᝑମʹ ɹʔϑΝʔ ʹࢦੑπΟʔλʔ ϚΠΫΛࡌ
ɾ"QQMFͱͯ͠ɺਓ͕ͲͷҐஔʹ͍ͯಉ͡ԻڹγεςϜͰฉ͖औΔ͜ͱ͕Ͱ͖Δ ɹ࠷ߴͷεϐʔΧʔͰ͋Δ Β͍͠ ɾ"JS1MBZΛαϙʔτ͓ͯ͠ΓରԠػछͱϦϯΫͤͯ͞εςϨΦ࠶ੜ͕Մೳ ɹ αʔυύʔςΟετϦʔϛϯάΞϓϦ 4QPUJGZͳͲ ͜ͷػೳΛ༻͢Δ ɾεϚʔτϗʔϜػೳͱͯ͠)PNFLJUରԠՈిͷίϯτϩʔϧ͕Մೳʹ
4JSJͷ։ൃํ๏ "MFYBͱ(PPHMF"TTJTUBOU $MPWBͱͷҧ͍
ʊਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼ4%,͕ଘࡏ͠ͳ͍ʂʂʂʻ ʉ:?:?:?:?:?:?:?:?:?ʉ 4JSJͷ։ൃํ๏
4JSJͷ։ൃํ๏ ͳΜͰ4%,͕ଘࡏ͠ͳ͍ͷ͔͑ެࣜυΩϡϝϯτʹॻ͍ͯ͋ͬͨ ͦͦ4JSJͷཱͪҐஔ͕ωΠςΟϒΞϓϦͱͷڮ͠తͳ͍ํΛఆ͍ͯͯ͠ αʔυύʔςΟͰ4JSJ୯ମͰͲ͏͜͏Ͱ͖ΔͷͰͳ͍ͱ͍͏͜ͱɻ ݩʑ4JSJͷΞγελϯτૉΒ͍͠ग़དྷͳͷͰଞऀͷΤΰͰ ৭ʑ͍͡Δඞཁͳ͍Ͱ͠ΐʁͱ͍͏ݟղɻ ͦΕͰ͍͍ͨͳΒΞϓϦϕʔεͰ։ൃͯ͠Ͷͬͯ͜ͱΒ͍͠ ͪͳΈʹ4JSJLJU༻ҙ͍ͯ͠Δ͕͜Ε4%,ͳͷ͔ͱ͍͏ݸਓతٙɾɾ (6*ͰͲ͏͜͏͢Δͱ͍͏ΑΓϓϥάΠϯΈ͍ͨͳ͍ํ͢ΔͷͰ TJSJͷαʔϏεϚοϓ
IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOTJSJLJU
4JSJͷ։ൃํ๏ ͪͳΈʹ4JSJͰͰ͖Δ͜ͱ ɾϝοηʔδૹ৴ ɾ5P%PϦετϊʔτͷ࡞ ɾϫʔΫΞτܥ ϑΟοτωεͷελʔτϥοϓλΠϜܭଌ ɾܾࡁؔ ϢʔβؒͰΩϟογϡϨεૹۚͳͲ͕Ͱ͖ͨΓ
ɾԻ௨ ௨։࢝ཤྺӾཡ͕Մೳ ɾ23ίʔυͷੜ ܾࡁ23࿈བྷઌͳͲΛࣗಈੜͰ͖Δ ɾը૾ݕࡧ ΞϓϦͷ֦ுػೳͱͯ͠ݕࡧʹ͍ͭͯαδΣετͨ͠Γ ɾΓͷ༧ػೳ Ϛοϓ͔Βߤۭ݊ిंͳͲͷνέοτΛ༧Ͱ͖Δ ɾΧʔίϚϯυ ंͷใΛऔಘͨ͠ΓυΞϩοΫՄೳ ɾϨετϥϯͷ༧ ɾϝσΟΞ࠶ੜͱίϯτϩʔϧ ɾಠࣗΞϓϦͰͷΧελϜϘΩϟϒϥϦ ɹ ԶԶΞϓϦ༻Ͱઌड़ͷػೳΛγϣʔτΧοτ͢ΔڍಈͬΆ͍ ͢ɺগͳ͍ɾɾ ݸਓతʹศརͦ͏ͳͷ
4JSJͷ։ൃํ๏ ͱ͍͏͜ͱͰωΠςΟϒΞϓϦΛ։ൃ͢Δඞཁ͕͋Δɻ ඞવతʹ։ൃݴޠ4XJGU͔0CKFDUJWF$Λબ͠ɺ ঘͭ9DPEFͰ։ൃɺϏϧυ͠ͳͯ͘ͳΒͳ͍ͱ͍͏ো͕͕͕ɾɾ 9DPEFΤσΟλͱܹͯ͠ॏͩ͠ɺ04͕Ξϓσ͔͔Δͨͼʹ ͦΕઐ༻ͰγϛϡϨʔλΛམͱ͢ඞཁ͕͋ΔͷͰ ΊͪΌͪ͘Ό༰ྔᷰΒ͍ɾɾ ͦͯ͠4XJGUͱ͔·͍͍͕ͩ0CKFDUJWF$ͱ͔ϚδͰΘ͔ΒΜ ?Т?
)PXUP)FMMP8PSME ͱΓ͖͋͑ͣʹΘͨΔ9DPEFͷΠϯείͱ Ξϓσͱ͍͏໊ͷઓ͍Λܦͯ)FMMPXPSME͢Δɻ 0CKFDUJWF$Θ͔ΒΜͷͰݴޠ4XJGUҰɻ
ͰͲ͏͢Δ͔ʁ )PXUP)FMMP8PSME
)FMMPXPSME࣮͔ͳΓ؆୯ 9DPEFΛىಈͯ͠'JMF/FX1SPKFDU͢Δ 4JOHMF7JFX"QQΛબͯ͠/FYU͢Δ )PXUP)FMMP8PSME
దʹϓϩδΣΫτ໊Λͯ͠$SFBUF͢Δͱ ҰॠͰ)FMMP8PSMEͰ͖ͨ )PXUP)FMMP8PSME
4JSJͷ։ൃํ๏ ͜͜·ͰࢸۃͨΓલͷɻ 4JSJͲ͏͢Δͷ͞ʁʁʁ
4JSJͷ։ൃํ๏ ৭ʑάάͬͯΈͨ
"QQMFͷσϕϩούʔυΩϡϝϯτʹ͋Δ 6OJDPSO$IBU͕νϡʔτϦΞϧʹͳΓͦ͏ 4JSJͷ։ൃํ๏ ͪΐͬͱͬͯɺݱঢ়Ξοϓσʔτ͞Εͯͳ͍
4JSJͷ։ൃํ๏ ͱݴ͑͜ΕҎ֎ʹެࣜͰ4JSJؔ࿈ͳ͍ͷͰ %-ͯ͠4XJGUͷόʔδϣϯΞοϓͱ͔σόοάΒΰχϣΰχϣͯ͠ΈΔ ͜ͷ͋ͨΓ࣌ؒͷ্ؔɺޙͰઆ໌͠·͢ ΜͰ݁Ռ͕͜Ε
γϛϡϨʔλ্Ͱڍಈ֬ೝͰ͖͕ͨ ͜ΕΛ࣮ػͰΔํ๏ɾɾʁ 4JSJͷ։ൃํ๏
4JSJͷ։ൃํ๏ "QQMFͷ%FWFMPQFS1SPHSBNΞΧϯτ͕ඞཁʹɾɾ ɾ6OJDPSO$IBUʹσϑΥϧτొ͞ΕͯΔ#VOEMF*EFOUJpFSͰ ɹ*%ॏෳ͕ൃੜ͢ΔͷͰ#"/͞ΕΔ ɹ ެ։લఏͰϓϩδΣΫτ࡞͢Δ༷ʹͳ͍ͬͯΔͷͰํͳ͍ ɾͨͩɺొ͢Δͷʹԁ͘Β͍͔͔Δ ແବʹߴ͍ ɾແྉͰͰ͖ͳ͍͔৭ʑࢼ͚ͨ͠Ͳ
ɹۜͷؙ͕ݟ͔ͭΒͣɺٽ͘ٽܾ͘ࡁ͢ΔӋʹɾɾ ɹ ͍͍ํ๏͋ͬͨΒڭ͍͑ͯͩ͘͞ Ͱ͏͍ ͳΜͰ࣮ػςετ͢Δ͚ͩͰۚͱΔͷ͔ ˞ΞϓϦΛࣝผ͢ΔͨΊͷ*%Β͍͠
4JSJͷ։ൃํ๏ ͱ͍͏͜ͱͰΑ͏࣮͘ػͰϏϧυ͢Δ͜ͱ͕Ͱ͖ͨͷͰ 4JSJܦ༝ͰԶԶ6OJDPSO$IBUΛىಈɻ
4JSJͷ։ൃํ๏ ΜͰͬͯ)PNF1PEͰࢼͯ͠ΈΔ
·ͱΊ ɾJ04։ൃͬͨ͜ͱͳ͍ϚϯͰ ɹׂͱ؆୯ʹ4JSJͷ։ൃͰ͖ΔΑ͏ʹͳͬͯΔ ɾͨͩ͠ΞϓϦ͋Γ͖ͷڍಈͳͷͰɺ ɹଞͷεϚʔτεϐʔΧʔͨͪͱൺΔͱͰ͖Δ͜ͱ͕ݱঢ়গͳ͗͢Δɻ ɾ݁Ռͱͯ͠ɺߴڃΦʔσΟΦεϐʔΧʔʹΞγελϯτ͕͔ͬͬͨఔɻ ɹ͜ͷล"QQMFࣗମ͕ͦͷํੑͰγϑτͯ͠ΔͷͰ ɹڝ߹ͱ͍উख͕ҧ͏ͱ͍͏ͷͦ͏͍͏͜ͱͳͷ͔ͳ͊ͱਪଌɻ
ɾͳ͓ɺࠓճͷ։ൃํ๏ʹ͍ͭͯͷৄࡉ ɹॳץߦ͢Δٕज़ॻయ̔ͷͰʂʂʢ͜͜ॏཁ ·ͱΊ