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
760
IFTTTが有料化したのでIntegromatの話 #iotlt
n0bisuke
0
640
M5Core2触ってみたけど上下注意 #iotlt vol67
n0bisuke
0
1.1k
PubNubを久々に使ってみたよ! #iotlt #m5stick #pubnub #djuko
n0bisuke
1
850
ATOM Echoでビデオ会議通知 #IoTLT
n0bisuke
0
590
オンラインLTをやってみた所感 #devreljp
n0bisuke
1
720
マイコンボード再活用なワイの配信環境 ~ラズパイや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
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
540
iPhone Eye Tracking機能から学ぶやさしいアクセシビリティ
fujiyamaorange
0
630
『FailNet~やらかし共有SNS~』エレベーターピッチ
yokomachi
1
200
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.3k
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
1.3k
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
0
290
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
3
220
ガチな登山用デバイスからこんにちは
halka
1
210
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
230
実運用で考える PGO
kworkdev
PRO
0
150
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
170
AI駆動開発に向けた新しいエンジニアマインドセット
kazue
0
210
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Practical Orchestrator
shlominoach
190
11k
Navigating Team Friction
lara
189
15k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Writing Fast Ruby
sferik
628
62k
Building Applications with DynamoDB
mza
96
6.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Typedesign – Prime Four
hannesfritz
42
2.8k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
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ͷྑ͕͞׆͖Δ
࠷ޙʹ ͱ͍͑ɺ ɾख࢝Ίʹ͏ʹΞϦ ɾυϥΠόΛோΊͯσόΠεΛΕΔ ͷͰͬͯΈ·͠ΐ͏ɻ