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
34
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
79
Modern Android dependency injection
hugovisser
1
240
Android dependency injection in 2022
hugovisser
1
150
Navigating the Navigation Component
hugovisser
1
110
Reactive UIs with Data Binding
hugovisser
2
120
Up close and personal with Nearby (DevFest Trondheim)
hugovisser
0
56
Work, Work - WorkManager
hugovisser
0
59
Up close and personal with Nearby
hugovisser
3
360
Room: the blessed object mapper
hugovisser
0
180
Other Decks in Technology
See All in Technology
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
280
Swift Testingのconfirmationを コードリーディング/Dive into Swift Testing confirmation
laprasdrum
2
270
PDF Viewer作成の今までとこれから
hunachi
0
480
突撃! 隣のAmazon Bedrockユーザー 〜YouはどうしてAWSで?〜
minorun365
PRO
3
390
OSTという文化を組織に根付かせてみた
sansantech
PRO
2
420
AIを活用した柔軟かつ効率的な社内リソース検索への取り組み
cygames
0
200
ついに出た!OpenAIの最新モデル「o1」って何がすごいの?
minorun365
PRO
3
1.3k
コンポーネントテストの手法と その効果を考える
yotahada3
2
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
46k
Analytics-Backed App Widget Development - Served with Jetpack Glance
miyabigouji
0
630
サーバー管理しないサーバーサービスManaged DevOps Pool
kkamegawa
0
140
20240912 JJUGナイトセミナー
mii1004
0
140
Featured
See All Featured
RailsConf 2023
tenderlove
28
810
In The Pink: A Labor of Love
frogandcode
139
22k
Designing on Purpose - Digital PM Summit 2013
jponch
114
6.8k
Fireside Chat
paigeccino
31
2.9k
Designing Experiences People Love
moore
138
23k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Visualization
eitanlees
142
15k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
How to Ace a Technical Interview
jacobian
274
23k
How to train your dragon (web standard)
notwaldorf
85
5.6k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
The Language of Interfaces
destraynor
153
23k
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\