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
800
IFTTTが有料化したのでIntegromatの話 #iotlt
n0bisuke
0
670
M5Core2触ってみたけど上下注意 #iotlt vol67
n0bisuke
0
1.1k
PubNubを久々に使ってみたよ! #iotlt #m5stick #pubnub #djuko
n0bisuke
1
900
ATOM Echoでビデオ会議通知 #IoTLT
n0bisuke
0
630
オンラインLTをやってみた所感 #devreljp
n0bisuke
1
750
マイコンボード再活用なワイの配信環境 ~ラズパイやJetson Nanoを積ボードにしてる人必見~ #iotlt
n0bisuke
1
440
在宅テレカン時の 例の夫婦問題を解決する #iotlt #m5atom #m5stack
n0bisuke
1
930
嫁が来たらPCを閉じたいからアラートする #MiBand #RaspberryPi #iotlt
n0bisuke
1
1k
Other Decks in Technology
See All in Technology
WebアクセシビリティをCI/CDで担保する ― axe DevTools × Playwright C#実践ガイド
tomokusaba
2
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
13k
夢の無限スパゲッティ製造機 #phperkaigi
o0h
PRO
0
150
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
生成AIで速度と品質を両立する、QAエンジニア・開発者連携のAI協調型テストプロセス
shota_kusaba
0
190
1GB RAMのラズピッピで何ができるのか試してみよう / 20260319-rpijam-1gb-rpi-whats-possible
akkiesoft
0
430
実践 Datadog MCP Server
nulabinc
PRO
2
240
AI時代のSaaSとETL
shoe116
1
190
身体を持ったパーソナルAIエージェントの 可能性を探る開発
yokomachi
1
130
NewSQL_ ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
hacomono
PRO
4
400
Kiro Powers 入門
k_adachi_01
0
120
Goのerror型がシンプルであることの恩恵について理解する
yamatai1212
1
210
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.2k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
140
A designer walks into a library…
pauljervisheath
210
24k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Raft: Consensus for Rubyists
vanstee
141
7.4k
Deep Space Network (abreviated)
tonyrice
0
92
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
310
The agentic SEO stack - context over prompts
schlessera
0
700
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
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ͷྑ͕͞׆͖Δ
࠷ޙʹ ͱ͍͑ɺ ɾख࢝Ίʹ͏ʹΞϦ ɾυϥΠόΛோΊͯσόΠεΛΕΔ ͷͰͬͯΈ·͠ΐ͏ɻ