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
Cylon.jsの闇 (第2回 #jsboardshibuya : 5分)
Search
n0bisuke
September 01, 2015
Technology
0
960
Cylon.jsの闇 (第2回 #jsboardshibuya : 5分)
Cylon.jsを扱うのはいいんだけど!
複数デバイスでやっといきてくるよね!って話です。
n0bisuke
September 01, 2015
Tweet
Share
More Decks by n0bisuke
See All by n0bisuke
WebHID APIでHIDデバイスをブラウザから制御!! #iotlt
n0bisuke
1
770
IFTTTが有料化したのでIntegromatの話 #iotlt
n0bisuke
0
640
M5Core2触ってみたけど上下注意 #iotlt vol67
n0bisuke
0
1.1k
PubNubを久々に使ってみたよ! #iotlt #m5stick #pubnub #djuko
n0bisuke
1
860
ATOM Echoでビデオ会議通知 #IoTLT
n0bisuke
0
590
オンラインLTをやってみた所感 #devreljp
n0bisuke
1
730
マイコンボード再活用なワイの配信環境 ~ラズパイやJetson Nanoを積ボードにしてる人必見~ #iotlt
n0bisuke
1
410
在宅テレカン時の 例の夫婦問題を解決する #iotlt #m5atom #m5stack
n0bisuke
1
910
嫁が来たらPCを閉じたいからアラートする #MiBand #RaspberryPi #iotlt
n0bisuke
1
960
Other Decks in Technology
See All in Technology
OSSで50の競合と戦うためにやったこと
yamadashy
3
990
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
150
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.4k
What's new in OpenShift 4.20
redhatlivestreaming
0
260
OTEPsで知るOpenTelemetryの未来 / Observability Conference Tokyo 2025
arthur1
0
250
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
13
10k
Building a cloud native business on open source
lizrice
0
180
AI駆動で進める依存ライブラリ更新 ─ Vue プロジェクトの品質向上と開発スピード改善の実践録
sayn0
1
320
Observability — Extending Into Incident Response
nari_ex
1
350
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
360
Dify on AWS 環境構築手順
yosse95ai
0
130
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
210
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Typedesign – Prime Four
hannesfritz
42
2.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Building Applications with DynamoDB
mza
96
6.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Transcript
Cylon.jsの闇 株式会社LIG 菅原 のびすけ (@n0bisuke)
ࣗݾհ ੁݪ ͷͼ͚͢ LIG inc. ΤϯδχΞ (৽ଔ2ʹ) ग़ٶੜ·Εؠखҭͪ ಛٕΘΜͦ͜ ഋ
Ωʔϫʔυ .JMLDPDPBɺ(`TΞΧσϛʔɺՈԁ #BB4 *P5 ϦΞϧλΠϜ௨৴ͳͲ͕͖
࠷ۙIoTྖҬʹྗೖΕͯ·͢ɻ ͓͠ΖϝσΟΞΛ͍࣋ͬͯΔWeb੍࡞ձࣾ
ࠓͷLTࡢͷ౦ژNodeֶԂ17࣌ݶͰ ޱͬͯ͠·ͬͨωλ
ɾhttp://cylonjs.com/ ɾNode.js༻ϥΠϒϥϦ ɾIoT͚ ɾ࢞ຓϓϩδΣΫτ (Ruby & Golang) Cylon.jsͬͯʁ
Webతʹ͋Γ͕͍ͨ͜ͱʹɺ JS੍ޚͰ͖ΔϘʔυ ΨδΣοτ͚ͬ͜͏ଟ͍
ͰSDK͕όϥόϥ ։ൃऀ (ݴ͍ա͔͚͗ͩͲ) ΄΅ผͷεΩϧ
Cylon.jsͰϕϯμʔϩοΫΠϯճආ ։ൃऀ SDKͱͷଓCylon.js ͕ͬͯ͘ΕΔɻ ಉ͡ΠϯλʔϑΣʔεͰ ։ൃ͕Մೳ
ͭ·Γ?
Cylon.jsΛ͏͜ͱͰಉ͡JSΠϯλʔϑΣʔε Ͱ৭ʑͳσόΠεΛ੍ޚͰ͖Δ!!!!
Cylon.jsΛ͏͜ͱͰಉ͡JSΠϯλʔϑΣʔε Ͱ৭ʑͳσόΠεΛ੍ޚͰ͖Δ!!!! ϋζͩͬͨʂʂ
࣮ࡍͷͱ͜Ζɻ
(頻繁に起こる) エラー時の原因特定が⾟辛い 闇 その1
Sphero ྫ͑
Cylon.jsͷSpheroυϥΠό͋Γ·͢ɻ
Node-Sphereͱ͍͏Ϟδϡʔϧ͋Γ·͢ɻ
ͭ·Γɺ Cylon.jsطଘϞδϡʔϧͷߴϨϕϧͳϥούʔ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S
PU IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
Τϥʔ͕ى͖ͨ࣌ʹݪҼ͕ಛఆ͠ʹ͍͘… $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S PU
IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
ͱͱIoTσόΠεଓ͕ෆ҆ఆ ͳϞϊ͕ଟ͍ͷͰͱ͘ʹࠔΔ… (webʹ౿ΈೖΕΒΕͳ͍ྖҬ)
ରࡦ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S PU
IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
ରࡦ OPEFTQIFSP ϨϕϧͳϞδϡʔϧΛͬͯ ݪҼഉআ (= Cylon.jsΛΘͳ͍ۤস ) ݪҼಛఆ͍͢͠ωˑ
ドライバの更更新が 追いついてない 闇 その2
Cylon.jsطଘϞδϡʔϧͷߴϨϕϧͳϥούʔͳͷͰɺ ϨϕϧͳϞδϡʔϧͷػೳʹґଘ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S
PU IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
ϨϕϧͳϞδϡʔϧ͕όʔδϣϯΞοϓ(ྫ: v2.0)ͯ͠ υϥΠόଆͷߋ৽͕͍͔ͭͳ͍߹͕ଟ͍ɻ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF
S PU IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S W W
݁Ռ… υϥΠόଆͰίέΔ߹͕ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S
PU IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
ରࡦ $ZMPOKT $ZMPOTQIFSP PU IF S PU IF S PU
IF S PU IF S PU IF S PU IF S PU IF S OPEFTQIFSP PU IF S PU IF S PU IF S PU IF S
ରࡦ OPEFTQIFSP ϨϕϧͳϞδϡʔϧΛ͏ͱ ্ख͍͘͘͜ͱ͋Γ·͢ɻ ݁ہ͍͍ͨػೳ͜Εͩ͠ωˑ
そもそも… 同じインターフェースが重宝するくらい複数の IoTデバイスを扱う機会って少ない 闇 その3
։ൃऀ SDKͱͷଓCylon.js ͕ͬͯ͘ΕΔɻ ಉ͡ΠϯλʔϑΣʔεͰ ։ൃ͕Մೳ ෳσόΠεͷ։ൃͰCylon.jsॏๅ͢Δ
։ൃऀ SDK ͕ͬͯ͘ΕΔɻ ಉ͡ΠϯλʔϑΣʔεͰ ։ൃ͕Մೳ ͦͦɺ͜ΜͳʹσόΠε࣋ͬͯͳ͍…
͜Μͳʹ৭ʑσόΠε͋Δ͚Ͳ… 3BTQCFSSZ1J "SEVJOP *OUFM(BMJMFP *OUFM&EJTPO 5FTTFM #FBHMF#POF#MBDL 4QBSL NCFE JDIJHPKBN
-JOJOP0/& YCFF (34",63"
3BTQCFSSZ1J "SEVJOP *OUFM(BMJMFP *OUFM&EJTPO 5FTTFM #FBHMF#POF#MBDL 4QBSL NCFE JDIJHPKBN -JOJOP
YCFF (34",63" Ϣʔβʔ͕͍ ͍ͭͯͳ͍…
ରࡦ ങ͓͏ɻ
ରࡦ σόΠε͕ἧͬͯ͘Δ ͱॏๅ(͢Δ͔?) ྫ: spheroͱHueͷর໌ૢ࡞
·ͱΊ 1. JSͰIoT͢ΔͳΒCylon.jsͱ͍͏બࢶ 2. ϞϊʹΑͬͯCylon.jsΛΘͣʹ Cylon.jsυϥΠόͷݩʹͳͬͯΔϨϕ ϧϞδϡʔϧΛͬͨ΄͏͕͍͍߹ 3. ෳσόΠεૢ࡞Λ͢ΔΑ͏ʹͳͬͯͬ ͱCylon.jsͷྑ͕͞׆͖Δ
࠷ޙʹ ͱ͍͑ɺ ɾख࢝Ίʹ͏ʹΞϦ ɾυϥΠόΛோΊͯσόΠεΛΕΔ ͷͰͬͯΈ·͠ΐ͏ɻ