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
PWAでお絵描きアプリを作った話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kurokky
February 15, 2023
Technology
0
260
PWAでお絵描きアプリを作った話
for PWA night vol.48
kurokky
February 15, 2023
Tweet
Share
Other Decks in Technology
See All in Technology
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
190
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.3k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
700
Greatest Disaster Hits in Web Performance
guaca
0
200
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
310
今日から始めるAmazon Bedrock AgentCore
har1101
4
400
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
870
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
460
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
240
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
1
340
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
150
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Amusing Abliteration
ianozsvald
0
98
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
580
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
What's in a price? How to price your products and services
michaelherold
247
13k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Scaling GitHub
holman
464
140k
4 Signs Your Business is Dying
shpigford
187
22k
Six Lessons from altMBA
skipperchong
29
4.1k
Accessibility Awareness
sabderemane
0
51
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
79
Transcript
!"#$ %&'()*+, -./0 1 2 3 4 5 6 7
8 9 : ; < = > ? @ A BC D E FG B HIJ
!"#$%&'()*+,-./0 1234 5678559:;< =>?@AB ଉࢠ ࡀ ɺΠϠΠϠظਅͬΓͷ່ ࡀ ͷࣇͷɻ γϯάϧϘʔυίϯϐϡʔλʔͰαʔόʔߏஙͨ͠ΓGSFFGPOU࡞ɺ࡞ۂɺ
FTQͳͲͰ*P5ɺ%ϓϦϯλʴిࢠ࡞Ͱ͜ͲͷΦϞνϟΛ࡞ͬͨΓ ৭ʑͯ͠·͢ɻ ༮ஓԂͷΠϕϯτͷ߹Ͱ͑ͯ·͕͢ɺීஈࢵ৭ͷϞώΧϯͰ׆ ಈͯ͠·͢ɻ ݄̎ʹͰ͖ͨגࣜձࣾ#SFXVTͰ$50తͳԿ͔Λ͍ͬͯ·͢ɻ !CMBDL@USFF LVSPLLZ !LVSPLLZ
!"#$%&'()*+,-./0 (.12 ࡢͷՆٳΈͷ͜ͱʜ ͷॳຍɺࡀ ࣌ ͷ່͕ੜޙҰभͷ࣮Ոʹؼͬͯͳ͍͜ͱ ͳͲΛ౿·͑߅ݪݕࠪΛ͠ؼল͍ͯ͠ΔඈߦػͷதͰࣄ͓͖݅·ͨ͠ɻ ࡀ ࣌ ͷଉࢠ͕
%&1(3/45678(/4 ͱݴ͍͡Ί·ͨ͠ɻʢଉࢠࣈΛॻ͘ͷʹϋϚͬͯ·ͨ͠ɻʣ ଉࢠ ࣗը૾
ΩλΩλʂଉࢠΑ*5ͪΌΜΛͳΊΔͳʂ !"#$%&'()*+,-./0 123456789%:;;<=>7=?@6<ABCD2E $FG,HIJKLFCMNO$PDQR S-32TUV 7W:XHIYKLFCMZ[3\ ]^_`a
!"#$% ΩλΩλʂଉࢠΑ*5ͪΌΜΛͳΊΔͳʂ &'()*+,-./012345 6789:;<=>*?@@ABC<BDE;AFGHI7J )KL1MNOPQKHRST)UIVW X287YZ[ しかし <\?]MN^PQKHR_`8a
!"#$%&' ()*+,-./0$123456
!"#$%&' ʢࡀࣇʹ༗ྉͷΞϓϦϨΠϠʔͱ͔͋ͬͯ6*తʹߴػೳ͗͢ΔͷͰ͢ʣ ϑϦʔͷΞϓϦʹଟ͍ ΦϑϥΠϯͰਅͬനʹͳΔ ࠂදࣔྖҬʂ ()*+,-./0$123456
!"#$ %&'()*+,-./01234
!"#$ %%&'()*+ ,-"./0 123456789:;<=>?@
!"#$ %%&'()*+ ,-"./0 123/456".78/9 :;<=5>?@ABCDEFGH
!"#$ %%&'()*+ ,-"./0 123/456".78/9 :;<,-"./0 =>?@5AB;CDEFGHIJ
!"#$ %%&'()*+ ,-"./0 123/456".78/9 :;<,-"./0 123/456".78/9 =>?@5AB;CDEFGHIJ
!"#$ %%&'()*+ ,-"./0 123/456".78/9 :;<,-"./0 123/456".78/9 :;<,-=>../0 ?@AB5CD;EFGHIJKL
!"#$%&'()*+,-./012% 3456 77 89:;<= >)4?@A BCD@E(F4?GH@I JKL>)4?@A BCD@E(F4?GH@I JKL>)*M??@A BCD@I
N7,OPQRS?TUDV
!"#$%&'( )*+)*,-./&01234 56789:;<=>?@AB2C ່
!"#$%&'( )*+)*,-./&01234 -.+56$788$-9:;<=>?@AB C01DE3 =FGCHIJKLMNOP92Q ່
!"#$%&'( )*+)*,-./&01234 -.+56$788$-9:;<=>?@AB C01DE3 -9:FGHI$JK+CLD3MJN ;OPQR.SD3B =TUCGVWLOPQXY92Z ່
!"#$%&'( )*+)*,-./&01234 -.+56$788$-9:;<=>?@AB C01DE3 -9:FGHI$JK+CLD3MJN ;OPQR.SD3B TUM =VWCGXYLOPQZ[92\ ່
!"#$%&'( )*+)*,-./&01234 -.+56$788$-9:;<=>?@AB C01DE3 -9:FGHI$JK+CLD3MJN ;OPQR.SD3B TUM )*+)*N =VWCGXYLOPQZ[92\ ່
່
!"#$%&'()*+,-./012% 345,6789 :;<:;=>?@7A%BCD >?<EF,GHH,>IJKLMNOPQR SA%TUC >IJV(WX,YZ<S[TC\Y] K^_`a?bTCR cd\ :;<:;] eYGfUTCG
່ ່
!"#$ %&'()*+,-./012/3 45 67-89:;<=>?@A&BC
!"#$ %&'()*+,-./012/3 45 %&'678&9:;<=>?@A BC-DEFGHIJKLM&NO
!"#$ %&'()*+,-./012/3 45 %&'678&9:;<=>?@A B&CDEFGH CI;BJ=CKD LLGMNJ? OP-QRSTUVWXYM&Z[
!"#$%&'()*+,-./012345678 239: ;</=>?@ABCDEFGDH IJ ;</KLM<NOP1Q7RST U<VWXYZ[ V\PU]QV^W __Z`a]R U]QRTXbcOPAR[
!"#$!% &'()*+,-./01 23456/' 789:;$!<=> ?@A%2345B)C7DEFG
!"#$%&'()*+,-./01 234/56789$:,;<=>
!"#$%&'()*+,-./01 18"ք۾ʹ͍ͳ͍ͱࢥ͍·͕͢ɺϚϧνϓϥοτϑΥʔϜͱฉ͍ͯ 'MVUUFSͩͷ3FBDU/BUJWFͩͷ6OJUZɺ3VTUͳͲ͕಄ʹු͔Μͩํʜ 234/56789$:,;<=>
!"#$%&'()*+,-./01 18"ք۾ʹ͍ͳ͍ͱࢥ͍·͕͢ɺϚϧνϓϥοτϑΥʔϜͱฉ͍ͯ 'MVUUFSͩͷ3FBDU/BUJWFͩͷ6OJUZɺ3VTUͳͲ͕಄ʹු͔Μͩํʜ 23/456789:; <=>?@A/:; BCD/2EFGH$I,JKLM
!"#$%&'()*+,-./ ͜Ͳɺ(PPHMF"QQMFͷ৹ࠪ࣌ؒ·ͯ͠CVJME࣌ؒͳΜͯؔͳ͍Μ Ͱ͢ɺͬͯ͘Ε·ͤΜɻ ʰ΄͍͠ʱͬͯݴͬͨΒεάͳ͍ͱμϝͳΜͰ͢ɻ ͷઢͰ͚͢ͲɺωΠςΟϒͱ͔ඇωΠςΟϒͱ͔ίʔυ͕Ԛ͍ͱ͔ ؔͳ͍ΜͰ͢ɻ 01234567(89:;<=>
!"#$%&'()*+,-./ ͜Ͳɺ(PPHMF"QQMFͷ৹ࠪ࣌ؒ·ͯ͠CVJME࣌ؒͳΜͯؔͳ͍Μ Ͱ͢ɺͬͯ͘Ε·ͤΜɻ ʰ΄͍͠ʱͬͯݴͬͨΒεάͳ͍ͱμϝͳΜͰ͢ɻ ͷઢͰ͚͢ͲɺωΠςΟϒͱ͔ඇωΠςΟϒͱ͔ίʔυ͕Ԛ͍ͱ͔ ؔͳ͍ΜͰ͢ɻ ɾࠂ͕ͳͯ͘ɺ͋Δఔͷ͜ͱ͕Ͱ͖Δɻ ɾ͍͖ͭΔ͔͔Βͳ͍ͷͨΊʹԁग़͢ͷ੯͍͠ʂ ɾλϒϨοτͰεϚϗͰʰϙΠͬʂʱͱεάʹॻ͚Δ͜ͱʂ ɾͰͰɺ੩Իͳۭ͕ؒੜ·ΕΔ͜ͱɻ
超⼤事 01234567(89:;<=>
!"#$%&'()*+,-./0 ฐࣾ #SFXVT શϦϞʔτϫʔΫͷձࣾͰ͢ɻΦϯϥΠϯͷϛʔςΟ ϯάπʔϧͱͯ͠(PPHMF.FFUΛ༻͍ͯ͠·͢ɻ ·ͨखܰʹϥΠϒ৴͕Ͱ͖Δ"MJWFͱ͍͏πʔϧΛ։ൃ͍ͯ͠·͢ɻ ͦͷΦϯϥΠϯϛʔςΟϯάதʰը໘γΣΞதʹϝϞॻ͖͍ͨ͠ͳ͊ʱ ͱࢥ݄ͬͯʹʰΕͥΜͯΜ͠ΐΜʱͱ͍͏(PPHMF$ISPNF ͷ֦ுػೳΛϦϦʔεͨ͠ͷͰ͕͢ɺϩʔΧϧʹͦͷ+BWB4DSJQUͷίʔυ ͕͋ͬͨͷͰͦΕΛྲྀ༻͠·ͨ͠ɻ
123.456789:&;<=>
!"#$%&'()!"*+, લड़͠·͕ͨ͠ɺ͜ͱͷൃඈߦػͷதͳͷͰશΦϑϥΠϯڥͰ͢ɻ 1$Λ৽ௐͨ͠ͷ͋ΓOQN ZBSO UZQFTDSJQU TBTT ͑·ͤΜʜ -./*012+3456789:
!"#$%&'()!"*+, લड़͠·͕ͨ͠ɺ͜ͱͷൃඈߦػͷதͳͷͰશΦϑϥΠϯڥͰ͢ɻ 1$Λ৽ௐͨ͠ͷ͋ΓOQN ZBSO UZQFTDSJQU TBTT ͑·ͤΜʜ ͦΕͰ։ൃͰ͖Δͷ͕ -./*012+3456789:
!"#$%&'()!"*+, લड़͠·͕ͨ͠ɺ͜ͱͷൃඈߦػͷதͳͷͰશΦϑϥΠϯڥͰ͢ɻ 1$Λ৽ௐͨ͠ͷ͋ΓOQN ZBSO UZQFTDSJQU TBTT ͑·ͤΜʜ ͦΕͰ։ൃͰ͖Δͷ͕ -./ 01
*2 -./*345+6789:;<=
!"#$%&'"()* ͰͰ͖ͨͱݴ͑ϓϩτλΠϓɺΫΦϦςΟΛ͋Δఔ·Ͱ্͛Δ ͷʹͦΕͳΓʹۤ࿑͠·͢ɻ ඈߦػͰͷ࡞ޙɺ࣮Ոʹؼলͯ͠վྑ͠·ͨ͠ɻ ݸਓ։ൃͷΑ͍ͣͬͱ։ൃ͠ଓ͚ΒΕΔ͜ͱͰ͕͢ଥڠඞཁͰ͢ɻ ࣍ทΑΓ)5.-ͩͱͳ͔͕ͬͨ18"ʹ͚ͨ࣌ͩ͠ʹى͜Γۤ࿑ͨ͠ ͱଥڠͨ͠Λͭͣͭհ͠·͢ɻ ʢଞʹ5JQT͕͋ΔͷͰ͕࣌ؒ͢ͷ߹͋ΔͷͰৄࡉ2JJUBʹهࡌ͍ͯ͠·͢ɻʣ ༨ஊͰ່͕͕͢Ұ൪ؾʹೖͬͨػೳϝχϡʔදࣔɾඇද͕ࣔΓସΘΔ 6*ͷ෦Ͱͨ͠ɻ
+,-./0123456789:
!"#$%& 18"ʹͳΔͱIUNMDBOWBT͕ಈ͔ͳ͍ ը૾อଘػೳͱͯ͠IUNMDBOWBTΛ͍ͬͯͨΜͰ͕͢ɺ͜Ε͕18"ʹ ͳΔͱਖ਼ৗʹಈ࡞͠·ͤΜͰͨ͠ɻ ௨৴पΓͰ৭ʑ͕͋ΔΜͩΖ͏ͳ͊ͱਪଌ͍ͯ͠·͢ɻ ৄ͘͠ϩδ οΫݟͯ·ͤΜ͕ɺଟҰ୴+4Ͱ֘ͷ63-ͷDTTΒؚΉͷΛ%-͠ ͯͦΕΛݟ͑ͳ͍EPNʹల։ͯ͠DBOWBT͔Βը૾Խͯ͠Δͦͷ௨৴෦ ͕͏·͍͔͘ͳ͍ͷͰʁ Ͱɺ݁ہDBOWBTΛෳ༻ҙͯͦ͠ΕΛNFSHFͱ͍͏͔KPJO
͢ΔΑ͏ͳ ϩδοΫʹ͠·ͨ͠ɻ '()*+,-./01234$5
!"#$%& "OESPJEͷΈ18"Ͱը໘αΠζ͕औಘͰ͖ͳ͍ ͓ֆඳ͖ػೳDBOWBTͱ͍͏ػೳΛ࣮͍ͬͯͯ͠·͕͢ɺDBOWBTͷ ੑ্࣭ɺը໘ҰഋͷඳըྖҬΛ࣋ͭҝʹ)5.-ཁૉͷXJEUIͱIFJHIUͰ ࢦఆ͠ͳ͚ΕͳΓ·ͤΜɻ DTTͰ͓͔͘͠ͳΔ ͜ΕΛ௨ৗͷϒϥβͷΈ༻͢Δ)5.-൛Ͱ+4ͰCPEZͷPOMPBE࣌ʹ มߋ͢ΔΑ͏ʹ͍ͯͨ͠ͷͰ͕͢ɺ"OESPJEͷ18"Ͱىಈ͢Δͱɺඳը ྖҬ͕ ͙Β͍ͳͬͯ͠·͍ͬͯʹͳΓ·ͤΜͰͨ͠ɻ
৭ʑࢼͯ͠ΈͨΜͰ͕͢ɺ໘ͩͬͨͷͰ"OESPJEͷ߹Nඵܦͬ ͔ͯΒऔಘ͢ΔϩδοΫʹมߋ͠·ͨ͠ɻ '()*+,-./01234$5
!"#$%&'()*+,-./0 123/45 3FUJOBରԠ J1IPOFͳͲʹݟΒΕΔ3FUJOBσΟεϓϨΠΛ͡Ί࠷ۙͷλϒϨοτ εϚʔτϑΥϯཧతͳղ૾ͱཧతͳղ૾͕ഒҎ্ҧ͍·͢ɻ ຊདྷͰ͋Εɺ֤ͷEQJʹԠͯ͡DBOWBTͷXJEUIɺIFJHIUΛഒͳͲʹ ͯ͠DTTͰʹ͢Δͷ͕ৗ۟Ͱ͢ɻ ͨͩɺ࣮ࡍʹ։ൃ͍ͯ͠Δ࣌શ͘಄ʹͳ͘ɺ͔ͳΓऴ൫ʹͳͬͯʮ͋ɺ δϟΪͬͯΔΘʜʯͱͳͬͨͷͰ͕͢ɺ͜ͷ࣌Ͱݴ͍ग़ͬ͠ͷଉࢠ͕ ຬ͍ͯͬͯͨ͠ඇྗͳ"OESPJEͩͱΧΫͭ͘༧ײ͕ͨ͠ͷͰݟ
ૹΓ·ͨ͠ɻ
!"#$%& 6OEP3FEP༻ʹσʔλΛQBUIԽ͢Δ ࠓճ6OEP3FEPػೳͷͨΊʹDBOWBTͷόΠφϦใΛUP%BUB63-Խ ͨ͠ͷΛMPDBM4UPSBHFʹྻͰಥͬࠐΉͱ͍͏ແཧཧͳ࣮ʹ͠·͠ ͨɻ ཤྺใ͕ංେԽ͢Δͱॏ͘ͳͬͨΓ͢Δͷ͋ΔͷͰɺ͜Ͳ͕ࣗ༝ؾ ··ʹ͏ͷͱͯ͠ඍົͳ࣮Ͱ͢ɻ ຊདྷͰ͋Ε'BCSJDKTͳͲΛͬͯQBUIԽͨ͠࠲ඪσʔλΛ࣋ͭͷ͕Α ͍ͱࢥ͍·͕͢ɺ։ൃ࣌ඈߦػͷதͰ͑ͳ͔ͬͨͷͰɺͦͷ··ʹ͠ ͪΌ͍·ͨ͠ʜ
'()*+,-./01234$5
!"# 8"4.ͱ͔5ZQF4DSJQUͱ͔5VSCPQBDLͱ͔·͙Δ͍͠8FCGSPOUք۾ Ͱ͕͢ɺࣗͷΞΠσΟΞΛ؆୯ʹɺTBTTNJOJGZؚΊͨCVJMEͳ͠ʹ ࠷ͰϚϧνϓϥοτϑΥʔϜͰܗʹͰ͖Δ18"ϓϩτλΠϓʹݶΒ ͣχʔζ͋Δͱࢥ͍·͢ɻ ͪΖΜۀɾϏδωεͰ༻͢Δ߹ʹ৭ʑͳ͜ͱΛߟྀ͠ͳ͚Ε ͳΒͳ͍ͱࢥ͍·͢͠ϋϚΓॴ͋Γ·͕͢ϋϚΓॴͲΜͳݴޠͰϑ ϨʔϜϫʔΫͰ։ൃʹ͖Ͱ͢ɻ ݸਓతʹ࡞Δָ͠͞ΛΕͣʹ͜Ε͔Β18"Λͭͷબࢶͱͯ͠ ༻͍͖͍ͯͨ͠ͱࢥ͍·͢ɻ
ʢ#SFXVTͰͦΜͳͷͮ͘Γ͕͖ͳํΛืू͍ͯ͠·͢ˡએʣ ࣮ࡍͷ੍࡞େਓ൛ɺ͜Ͳ൛Λ࡞͍ͬͯ·͢ɻ ؾʹͳͬͨํΞΫηεͯ͠Έ͍ͯͩ͘͞ɻ $%&'()*+,-./0123
!"#$%&'() ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ *+),-./012345678