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
Open the door!
Search
Hugo Visser
April 30, 2020
Technology
0
43
Open the door!
Presentation for GDG DutchAUG about automating my garage door and controlling it with Android
Hugo Visser
April 30, 2020
Tweet
Share
More Decks by Hugo Visser
See All by Hugo Visser
LLMs on Small devices [DutchAUG]
hugovisser
1
100
Modern Android dependency injection
hugovisser
1
250
Android dependency injection in 2022
hugovisser
1
160
Navigating the Navigation Component
hugovisser
1
120
Reactive UIs with Data Binding
hugovisser
2
140
Up close and personal with Nearby (DevFest Trondheim)
hugovisser
0
62
Work, Work - WorkManager
hugovisser
0
64
Up close and personal with Nearby
hugovisser
3
440
Room: the blessed object mapper
hugovisser
0
180
Other Decks in Technology
See All in Technology
MCPが変えるAIとの協働
knishioka
1
120
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
1
230
地味にいろいろあった! 2025春のAmazon Bedrockアップデートおさらい
minorun365
PRO
2
550
より良い開発者体験を実現するために~開発初心者が感じた生成AIの可能性~
masakiokuda
0
230
Dynamic Reteaming And Self Organization
miholovesq
3
740
Pythonデータ分析実践試験 出題傾向や学習のポイントとテクニカルハイライト
terapyon
1
110
2025-04-24 "Manga AI Understanding & Localization" Furukawa Arata (CyberAgent, Inc)
ornew
2
330
30代からでも遅くない! 内製開発の世界に飛び込み、最前線で戦うLLMアプリ開発エンジニアになろう
minorun365
PRO
16
5k
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
460
Compose におけるパスワード自動入力とパスワード保存
tonionagauzzi
0
190
白金鉱業Meetup_Vol.18_生成AIはデータサイエンティストを代替するのか?
brainpadpr
4
220
クラウド開発環境Cloud Workstationsの紹介
yunosukey
0
220
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
550
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
We Have a Design System, Now What?
morganepeng
52
7.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
A designer walks into a library…
pauljervisheath
205
24k
A Tale of Four Properties
chriscoyier
159
23k
Documentation Writing (for coders)
carmenintech
71
4.7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Transcript
3TIRXLIHSSV KIXXMRKMRXSXLIKEVEKI[MXL%RHVSMH'SVSYXMRIWERHEFYRGLSJSXLIVWXYJJ ,YKS:MWWIV $FSXXIEET LYKS$PMXXPIVSFSXWRP
None
None
*RDOV &RQWUROZLWKDQDSSYVUHPRWH 2SHQWKHGRRUIURPP\PRWRUF\FOH ZLWKRXWUHDFKLQJIRUWKHSKRQH %RQXVRSHQIURPP\:HDU26ZDWFK /RFDOQHWZRUNRQO\VRPHDGGHGVHFXULW\ 7273
+DUGZDUH 'HIDXOWFRPPXQLFDWLRQ5)ZLWKUROOLQJFRGHV &RQQHFWLRQIRULPSXOVHVZLWFKξ 2SWLRQDO%L6HFXUJDWHZD\ FRPHVZLWKXJO\DSS ȹ 8$3H[WHQVLRQERDUGĺFORVHGSURWRFRO
ȹ
(63GHYERDUG &RQWUROLPSXOVHVZLWFKZLWK(63EDVHGPLFURFRQWUROOHUUHOD\
None
7RJJOH XQKFRWNUG4GNC[ ] FKIKVCN9TKVG &*+)* FGNC[ FKIKVCN9TKVG
&.19 _
None
None
:HEVRFNHW
:HEVRFNHW SURWREXI
:HEVRFNHW +DVJRRGVXSSRUWRQ(63 EXWQR7/6ZVV %LGLUHFWLRQDOEURDGFDVWĺVWDWXVRIWKHGRRURSHQLQJFORVLQJ F OOKLPSOHPHQWDWLRQRQ$QGURLG
3URWRFROEXIIHUV &RPSDFWUHSUHVHQWDWLRQ XQOLNH-621 %DFNZDUG IRUZDUGFRPSDWLEOH &URVVSODWIRUP FRGHJHQHUDWLRQ QDQRSESURWROLWH
3URWREXI OGUUCIG&QQT%QOOCPF] GPWO%QOOCPF] 12'0 %.15' 61)).' _ KPVQVR %QOOCPFEQOOCPF KPVFWTCVKQP
_
3URWREXI HWPUGPF6QIING ] XCNOGUUCIG5GUCOG2TQVQU&QQT%QOOCPFPGY$WKNFGT CRRN[] EQOOCPF5GUCOG2TQVQU&QQT%QOOCPF%QOOCPF61)).' QVRTGRQUKVQT[IGV1VR _ XCND[VGUOGUUCIGDWKNF VQ$[VG#TTC[
UQEMGVUGPF $[VG5VTKPIQH D[VGU _
3URWREXI &QQT%QOOCPFOGUUCIG&QQT%QOOCPFAKPKVA\GTQ KH RDAFGEQFG UVTGCO&QQT%QOOCPFAHKGNFUOGUUCIG ] KHVJGQVREQFGKUXCNKF UYKVEJ
OGUUCIGEQOOCPF ] ECUG&QQT%QOOCPFA%QOOCPFA61)).' JCPFNGVJKUEQOOCPF _ _
'LVFRYHU\
'LVFRYHU\ZLWKP'16 FODVVLQ$UGXLQR N?<I<B@MLQ$QGURLG
1VG0DQDJHU 7ZRVWHSSURFHVVGLVFRYHUWKHQUHVROYHĺLSSRUWRIWKHVHUYLFH 7XUQFDOOEDFNKHOOLQWRNPNK@I?IXQFWLRQ
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGTQDLGEV0UF/CPCIGT&KUEQXGT[.KUVGPGT] QXGTTKFGHWPQP5GTXKEG(QWPF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] TGUQNXGVJGUGTXKEG
PUF/CPCIGTTGUQNXG5GTXKEG UGTXKEG+PHQ &GXKEG4GUQNXG.KUVGPGT EQPVKPWCVKQP _ _
'LVFRYHU\ UWURGPFHWPFKUEQXGT&GXKEG &KUEQXGT[4GUWNV UWURGPF%CPEGNNCDNG%QTQWVKPG]EQPVKPWCVKQP XCNNKUVGPGT NKUVGPGT EQPVKPWCVKQPKPXQMG1P%CPEGNNCVKQP] PUF/CPCIGTUVQR5GTXKEG&KUEQXGT[ NKUVGPGT
_ PUF/CPCIGTFKUEQXGT5GTXKEGU ūAUGUCOGAVERŬ 0UF/CPCIGT24161%1.A&05A5& NKUVGPGT _
'LVFRYHU\ RTKXCVGENCUU&GXKEG4GUQNXG.KUVGPGT RTKXCVGXCNEQPVKPWCVKQP%CPEGNNCDNG%QPVKPWCVKQP&KUEQXGT[4GUWNV 0UF/CPCIGT4GUQNXG.KUVGPGT] QXGTTKFGHWPQP5GTXKEG4GUQNXGF UGTXKEG+PHQ0UF5GTXKEG+PHQ ] EQPVKPWCVKQPTGUWOG &KUEQXGT[4GUWNV5WEEGUU UGTXKEG+PHQJQUV
UGTXKEG+PHQRQTV _ _
'LVFRYHU\ GKVJGT&KUEQXGT[4GUWNV5WEEGUUQT&KUEQXGT[4GUWNV'TTQT XCNTGUWNV&GXKEG.QECVQT EQPVGZV FKUEQXGT&GXKEG
8VLQJ GJR
&RQQHFWLRQ :HFDQPRGHOWKLVDVD GJRRIHYHQWVVWDWHV 'LVFRQQHFWHG &RQQHFWHG 0HVVDJH
&RQQHFWLRQ)ORZ UGCNGFENCUU9GD5QEMGV'XGPV] FCVCENCUU%QPPGEVGF XCNYU9GD5QEMGV 9GD5QEMGV'XGPV FCVCENCUU/GUUCIG XCNYU9GD5QEMGV XCND[VGU$[VG5VTKPI 9GD5QEMGV'XGPV QDLGEV&KUEQPPGEVGF9GD5QEMGV'XGPV
_
&RQQHFWLRQ)ORZ ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV (NQY9GD5QEMGV'XGPV
ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJ><GG=<>F GJR ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV
(NQY9GD5QEMGV'XGPV ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJFDOOEDFN)ORZ ENCUU&GXKEG%QPPGEVKQP RTKXCVGXCNTGSWGUV4GSWGUV ] RTKXCVGXCNENKGPV1M*VVR%NKGPV$WKNFGT RKPI+PVGTXCN 6KOG7PKV5'%10&5 DWKNF HWPEQPPGEV (NQY9GD5QEMGV'XGPV
ECNNDCEM(NQY] XCNUQEMGVENKGPVPGY9GD5QEMGV TGSWGUV 9GD5QEMGV.KUVGPGT VJKU CYCKV%NQUG] EQNNGEV KUECPEGNNGF UQEMGVENQUG PWNN _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJFDOOEDFN)ORZ ENCUU.KUVGPGT RTKXCVGXCNUEQRG2TQFWEGT5EQRG9GD5QEMGV'XGPV 9GD5QEMGV.KUVGPGT ] QXGTTKFGHWPQP1RGP YGD5QEMGV9GD5QEMGVTGURQPUG4GURQPUG ] UEQRGQHHGT 9GD5QEMGV'XGPV%QPPGEVGF
YGD5QEMGV _ QXGTTKFGHWPQP/GUUCIG YGD5QEMGV9GD5QEMGVD[VGU$[VG5VTKPI ] UEQRGQHHGT 9GD5QEMGV'XGPV/GUUCIG YGD5QEMGV D[VGU _ _
8VLQJWKHFRQQHFWLRQ NCWPEJ] TGRQUKVQT[ETGCVG%QPPGEVKQP EQNNGEV] YJGP KV ] KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV%QPPGEVGF JCPFNG
KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV&KUEQPPGEVGF UVWHH KU&GXKEG%QPPGEVKQP9GD5QEMGV'XGPV/GUUCIG RCTUGKV _ _ _
>M@<O@JII@>ODJI (QVXUH:LILFRQQHFWLYLW\ 'LVFRYHUGHYLFH (VWDEOLVKFRQQHFWLRQUHWU\FRQQHFWLRQHUURUV
(QVXULQJZLILFRQQHFWLYLW\ UWURGPFHWPIGV9KHK0GVYQTM ECNNDCEM(NQY] XCNEOEQPVGZVIGV5[UVGO5GTXKEG %QPPGEVKXKV[/CPCIGTENCUULCXC XCNECNNDCEMQDLGEV%QPPGEVKXKV[/CPCIGT0GVYQTM%CNNDCEM ] QXGTTKFGHWPQP#XCKNCDNG PGVYQTM0GVYQTM
] EQPPGEVKXKV[/CPCIGTDKPF2TQEGUU6Q0GVYQTM PGVYQTM QHHGT PGVYQTM _ _ EOTGSWGUV0GVYQTM 0GVYQTM4GSWGUV$WKNFGT CFF%CRCDKNKV[ 0GVYQTM%CRCDKNKVKGU0'6A%#2#$+.+6;A016A/'6'4'& CFF6TCPURQTV6[RG 0GVYQTM%CRCDKNKVKGU64#052146A9+(+ DWKNF ECNNDCEM CYCKV%NQUG] EQPPGEVKXKV[/CPCIGTWPTGIKUVGT0GVYQTM%CNNDCEM ECNNDCEM _ _
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
'LVFRYHUZKHQ:LILFRQQHFWHG XCNFKUEQXGT9KVJ9KHKIGV9KHK0GVYQTM HNCV/CR.CVGUV] HNQY&KUEQXGT[4GUWNV5WEEGUU ] YJKNG VTWG ] XCNTGUWNV<GTQ%QPH&GXKEG.QECVQT EQPVGZV
FKUEQXGT&GXKEG KH TGUWNVKU&KUEQXGT[4GUWNV5WEEGUU ] GOKV TGUWNV DTGCM _ GTTQTFGNC[CPFVT[CICKP FGNC[ _ _OCR]]KVJQUVJQUV#FFTGUU_]KVRQTV__
%XLOGFRQQHFWLRQIORZ TGVWTPFKUEQXGT9KVJ9KHKHNCV/CR.CVGUV]JQUV &GXKEG%QPPGEVKQP 4GSWGUV$WKNFGT WTN YU]JQUV_ DWKNF EQPPGEV _TGVT[9JGP]ECWUGCVVGORV
GOKV &GXKEG%QPPGEVKQP9GD5QEMGV'XGPV&KUEQPPGEVGF FGNC[ VTWG _ _FKUVKPEV7PVKN%JCPIGF
None
2SHQLQJIURPWKHPRWRUF\FOH %OXHWRRWKKHDGVHW )LUVWLGHDKHDGVHWĺJHRIHQFHĺVWDUWGLVFRYHU\ĺGLVFRQQHFWKHDGVHW *HQHUDOO\QR:LILZLWKRXWVFUHHQRQ :LILVFDQQLQJLVPRUHDQGPRUHUHVWULFWHG
None
2SHQLQJIURPWKHPRWRUF\FOH $GG(63EDVHGPLFURFRQWUROOHU EXFNFRQYHUWHU ĺ%/(:LIL %/(IRUSKRQHFRQQHFWLRQ :LILIRUFRQQHFWLQJWR(63JDUDJH
2SHQLQJIURPWKHPRWRUF\FOH +HDGVHWĺVWDUWVWRSIRUHJURXQGVHUYLFH )RUHJURXQGVHUYLFHĺFRQQHFWLRQIORZWRPRWRUF\FOH(63 (63ĺQRWLI\ZKHQFRQQHFWHGSUR[\IURPSKRQHWRJDUDJH 2QO\SRZHUHGRQZKHQLJQLWLRQNH\LVWXUQHGRQ
%/(VWDWXVSURWREXI OGUUCIG%QPPGEVKQP5VCVWU] EQPPGEVGFVQICTCIG DQQNEQPPGEVGF WRVKOGUKPEGDQQV WKPVWRVKOG
YKHKEQPPGEVGFVKOG WKPVYKHK7RVKOG _
/LVWHQLQJIRUFRQQHFWLRQ 'KHHGNEQPPGEV EQPVGZV $NWGVQQVJ#FCRVGTIGV&GHCWNV#FCRVGT IGV4GOQVG&GXKEG ICVGYC[ EQNNGEV]ENKGPV NCWPEJ]
YJGP%QPPGEVGFKUUWDUETKDKPIVQ$.'PQVKHKECVKQPU YJGP%QPPGEVGF ENKGPV ]UVCVWU OCZOKPWVGVQGUVCDNKUJCEQPPGEVKQP KH UVCVWUYKHK7RVKOG ] VVU!URGCM 1RGPKPI6GZV6Q5RGGEJ37'7'A#&&PWNNQRGP UGPF1RGP%QOOCPF ENKGPV _ _ _ _
6HFXULW\ 1RVHFUHWNH\RQWKHPRWRUF\FOHPLFURFRQWUROOHU 6HFUHWLVRQO\VWRUHGRQWKHJDUDJH(63DQGSKRQH 6HFXUHVKDUHGSUHIHUHQFHVZLWK<I?MJD?SN@>PMDOT
(QFU\SWHG6KDUHG3UHIHUHQFHV HWPETGCVG2TGHU EQPVGZV%QPVGZV 5JCTGF2TGHGTGPEGU] XCNMG[/CUVGT-G[UIGV1T%TGCVG /CUVGT-G[U#'5A)%/A52'% TGVWTP'PET[RVGF5JCTGF2TGHGTGPEGUETGCVG ]$WKNF%QPHKI#22.+%#6+10A+&_UGVVKPIU MG[ EQPVGZV
'PET[RVGF5JCTGF2TGHGTGPEGU2TGH-G['PET[RVKQP5EJGOG#'5A5+8 'PET[RVGF5JCTGF2TGHGTGPEGU2TGH8CNWG'PET[RVKQP5EJGOG#'5A)%/ _
'HPR
,QWUR /HYHOVHFXULW\ /HYHOJHWWLQJLWRSHQ PLFURFRQWUROOHU :HEVRFNHW 3URWREXI )ORZ 'LVFRYHU\