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
JavaScript+ビジュアルプログラミング+ガジェット=? / エンジニアの自由研究発表会...
Search
you(@youtoy)
PRO
January 26, 2022
Technology
0
270
JavaScript+ビジュアルプログラミング+ガジェット=? / エンジニアの自由研究発表会vol.5
you(@youtoy)
PRO
January 26, 2022
Tweet
Share
More Decks by you(@youtoy)
See All by you(@youtoy)
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
10
ブラウザで CircuitPython の開発:公式の「CircuitPython Code Editor」を試した / 【屋形船開催】IoT縛りの勉強会! IoTLT vol.126 @東京湾
you
PRO
0
110
公開初日に個人環境で試した Gemini CLI 体験記など / Gemini CLI実験レポート
you
PRO
3
2.5k
Webの技術とガジェットで那須の子ども達にワクワクを! / IoTLT_20250720
you
PRO
0
140
公開初日に Gemini CLI を試した話や FFmpeg と組み合わせてみた話など / Gemini CLI 初学者勉強会(#AI道場)
you
PRO
0
2.5k
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
170
総額200円の入力インターフェースで年齢問わず楽しめる体験型展示 / エンジニアの自由研究発表会vol.10
you
PRO
0
300
Node−RED で Ollama を使ったローカルLLM(node-red-contrib-ollamaを利用) / ビジュアルプログラミングIoTLT vol.20
you
PRO
0
230
AIエージェント開発や最新の生成AIのAPI利用などJavaScriptで色々やってみる / IoTLT vol.123
you
PRO
0
130
Other Decks in Technology
See All in Technology
Grafana Meetup Japan Vol. 6
kaedemalu
1
200
ここ一年のCCoEとしてのAWSコスト最適化を振り返る / CCoE AWS Cost Optimization devio2025
masahirokawahara
1
1.5k
Language Update: Java
skrb
2
260
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.3k
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
11
920
iPhone Eye Tracking機能から学ぶやさしいアクセシビリティ
fujiyamaorange
0
630
AI駆動開発に向けた新しいエンジニアマインドセット
kazue
0
210
ChatGPTとPlantUML/Mermaidによるソフトウェア設計
gowhich501
1
120
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
230
実運用で考える PGO
kworkdev
PRO
0
150
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
190
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1.3k
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
800
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Balancing Empowerment & Direction
lara
3
610
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Transcript
JavaScript+ビジュアルプログラミング +ガジェット=? 2022年1月26日 (水) エンジニアの自由研究発表会vol.5 @オンライン 豊田陽介( ) @youtoy
自己紹介 ビジュアルプログラミング や IoT関連、その他にも 豊田陽介( ) 普段は、某通信会社勤務(@埼玉) ※ 仕事は開発系ではなかったり @youtoy
・IT系イベント主催、登壇や運営なども ・子ども向けの活動いろいろ(IT系以外も) ・最近は技術雑誌での連載や、技術書出版も ・Microsoft MVP(2021/10 から) プライベートでの活動 ・ガジェット好き ・面白そうなもの・新しいものを色々試すのも好き その他 自宅にたくさん ↓直近のイベント は 2/24 に
タイトルにも出している 自分がよく使う技術 ▪ ビジュアルプログラミング ▪ JavaScript ▪ ガジェット
これらを使って自由研究で 作ったプロトタイプ
バーチャルとリアルを つなぐインタラクション
自由研究で作ったプロトタイプ PC のカメラでとらえた指の動きが LEDテープの光と連動 ブラウザで取得 したカメラ映像 フルカラーLED テープ 機械学習による 画像内の手の認識
プロトタイプが実際に動いている様子 ちなみに大晦日ハッカソンというイベントで作ったもの
よく使っている技術 を組み合わせて 短時間で作成
キーワードについて それぞれの話を ▪ ビジュアルプログラミング ▪ JavaScript ▪ ガジェット
ビジュアルプログラミングを使う背景 ・開発環境の準備が簡単なものが多い ⇒ ブラウザさえあれば開発環境が準備できる、という レベル感のものがいろいろ ・便利な拡張機能が用意されているものも ⇒ 複雑な処理を隠蔽してくれる (個人的に)プロトタイプを
サクッと作るのに便利
【具体的なとある事例】便利な拡張機能 ボタン押下でフルカラーLEDテープ (LED 30個)を虹色に光らせる Microsoft MakeCode for micro:bit で neopixel用の
拡張ブロックを利用 たった 6つのブロック
便利な拡張機能を使ってこんな試作 ダイソーのおもちゃの刀に LEDテープを仕込むと このようなものが!
普段から面白そうと思う ことに色々手を出してみる
新しい学びが いろいろ得られたりも
ビジュアルプログラミングでできること ・サーバーサイドの処理(Node-RED等) ・HTTPサーバー、MQTTブローカー、WebSocketサーバー、など ・ネット経由での他サービスとの連携(UIFlow、Node-RED等) ・HTTPリクエスト(GET、POST) ・デバイス間通信(UIFlow、Node-RED、他) ・シリアル通信、BLE通信、など ・AIアシスタント関連開発(Voiceflow等) ・スマホアプリ開発(MIT App
Inventor) 様々な処理・開発を扱えるものがあります
適材適所で ・込み入った処理が扱い辛い(作れるけどテキストの プログラミングで書いたほうが楽な場合も) ・拡張機能を使っても対応可能な範囲が限られることも もちろん良いことずくめではなく 得手不得手みたいな話は、様々な開発環境・言語でも 同じことが起ある部分ではありますが...
次のキーワードへ
JavaScript(ブラウザ上)でできること ・デバイスとの直接通信 ・Web Bluetooth API、Web Serial API、など ・IoT等にも使われるリアルタイム通信 ・WebSocket や
MQTT(※クライアントサイド) ・機械学習(学習と推論) ・Tensorflow.js やそれを使った仕組み、など (画像、音を対象にした学習、それを用いた推論、 自然言語処理系の学習や推論など) ・2D・3Dの描画処理 ・画面キャプチャ系の処理 ブラウザ上で 行える処理の例
つい数日前に作ってみたもの ブラウザで機械学習と画面キャプチャ関連処理
・PC にブラウザが入っていれば OK (先ほどのものをあれこれ扱うなら Chrome がオススメ) 実行環境の準備が簡単 できることとメリット ・テキストベースのファイルを渡して試してもらえる ・自分が
Webサイトで公開すれば URL を伝えるだけで OK 試してもらうのが簡単
ガジェットについてさらっと ・開発環境は自分が得意なもの、慣れてない人にも扱いやすい ものに対応していると便利 ・通信機能の有無は様々なので必要なものがあるか要確認 (無線機能なし、Bluetoothのみ、Wi-Fi+Bluetooth) 手軽に使うならセンサー等内蔵のものがオススメ 対応している開発環境や通信機能を要確認 ・電子工作の手間を省いてお試しをサクッと (もしくは接続の手間が少ない Grove
を活用したり)
異なる技術を組み合わせた プロトタイピングを 行いやすくする話
過去事例:役割分担+間をつなぐ MQTT 【C言語】 二酸化炭素濃度 取得、通信処理 【JavaScript】 二酸化炭素濃度を使った 処理や各通知系全般の 通信処理 MQTT
HTTPリクエスト 【ビジュアル プログラミング】 通信処理、音・LEDの 制御系処理 二酸化炭素濃度 情報の通知
どれか1つだけでも できることが様々 ▪ ビジュアルプログラミング ▪ JavaScript ▪ ガジェット
全部いっぺんにではなく どれか気になったものから というやり方でも
終わり!