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
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
Create Ruby native extension gem with Go
sue445
0
130
IoT x エッジAI - リアルタイ ムAI活用のPoCを今すぐ始め る方法 -
niizawat
0
110
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
20250913_JAWS_sysad_kobe
takuyay0ne
2
250
Unlocking the Power of AI Agents with LINE Bot MCP Server
linedevth
0
110
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
390
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
1.2k
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
Site-Speed That Sticks
csswizardry
10
820
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
The Art of Programming - Codeland 2020
erikaheidi
56
13k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Context Engineering - Making Every Token Count
addyosmani
3
58
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Why Our Code Smells
bkeepers
PRO
339
57k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
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ͷྑ͕͞׆͖Δ
࠷ޙʹ ͱ͍͑ɺ ɾख࢝Ίʹ͏ʹΞϦ ɾυϥΠόΛோΊͯσόΠεΛΕΔ ͷͰͬͯΈ·͠ΐ͏ɻ