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
BayNode Meetup June 2014
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tim Cameron Ryan
June 20, 2014
Technology
1
81
BayNode Meetup June 2014
Tim Cameron Ryan
June 20, 2014
Tweet
Share
More Decks by Tim Cameron Ryan
See All by Tim Cameron Ryan
Elevator redesign: Team Unibros Final Presentation
tcr
0
430
The Science of Etherpad
tcr
2
64
Other Decks in Technology
See All in Technology
ナレッジワークのご紹介(第88回情報処理学会 )
kworkdev
PRO
0
200
非情報系研究者へ送る Transformer入門
rishiyama
11
7.4k
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
4.3k
Lambda Web AdapterでLambdaをWEBフレームワーク利用する
sahou909
0
120
アーキテクチャモダナイゼーションを実現する組織
satohjohn
1
720
[JAWS DAYS 2026]私の AWS DevOps Agent 推しポイント
furuton
0
150
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
2
290
わたしがセキュアにAWSを使えるわけないじゃん、ムリムリ!(※ムリじゃなかった!?)
cmusudakeisuke
1
720
銀行の内製開発にて2つのプロダクトを1つのチームでスクラムしてみてる話
koba1210
1
120
PMとしての意思決定とAI活用状況について
lycorptech_jp
PRO
0
120
SRE NEXT 2026 CfP レビュアーが語る聞きたくなるプロポーザルとは?
yutakawasaki0911
1
300
社内レビューは機能しているのか
matsuba
0
120
Featured
See All Featured
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
150
The World Runs on Bad Software
bkeepers
PRO
72
12k
ラッコキーワード サービス紹介資料
rakko
1
2.6M
Facilitating Awesome Meetings
lara
57
6.8k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
70
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
250
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
The Language of Interfaces
destraynor
162
26k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
BBQ
matthewcrist
89
10k
Transcript
Embedded JavaScript: The skills you have in 2014 will be
all you need to make physical devices Tim Ryan, Co-Founder / Developer Technical Machine
None
Tessel is a WiFi-enabled microcontroller that runs JavaScript. Tim Ryan,
Co-Founder / Software Developer Technical Machine
None
Embedded JavaScript
None
None
None
None
None
High-level != Developer-friendly
Open Source Hardware
None
None
None
2005 2014
2005 2003 2005
2005 2003 2005
~2010
Microcontrollers
None
8-bit 32-bit
We can today afford the processing power to make developers’
lives easier.
$4 @1K $11 @1K
None
None
Why JavaScript?
JavaScript (and asynchronous coding) is the perfect embedded language!
JavaScript (and asynchronous coding) is the perfect embedded language! —Sylvia
Plath
Ethernet TCP HTTP
Ethernet TCP HTTP (Packet-based) (Stream-based) (Packet-based)
Ethernet TCP HTTP Websockets (Packet-based) (Stream-based) (Packet-based) (Streaming…)
None
None
None
None
None
def receive_packet(): buf = sock.recv() return buf while True: print(receive_packet())
Future<byte[]> p = pool.submit(new Callable<byte[]>() { public byte[] call() {
return socket.recv(); } } // ... while waiting ... p.get();
socket.on(‘data’, function (data) { // handle data buffer }); //
... other code ...
Inventing the Universe
None
• Chrome’s JS engine • C++ • ~10mb memory required
for each instance • POSIX/Win32 environment
• Embeddable language • Written in C • ~30kb memory
• Highly portable
• Embeddable language • Written in C • ~30kb memory
• Highly portable • 10x-100x slower
JS VM HTTP Parsing DNS SSL Memory management Filesystem Tar
JSON Unicode TCP/IP
JS VM HTTP Parsing DNS SSL Memory management Filesystem Tar
JSON Unicode TCP/IP tessel/colony wecing/utf8proc lloyd/yajl bagder/c-ares dsheets/axtls joyent/http-parser abbrev/fatfs colorer/dlmalloc
Lesson Learned: When reinventing everything, reuse as much as possible.
None
None
What Comes Next
It’s becoming feasible to embed in every product a microcontroller
powerful enough to run a high level language.
HTTP
HTTP SPI I2C UART
None
None
http://github.com/tessel/firmware http://github.com/tessel/runtime
None
Be bold! Be courageous! Be amazing!
Be bold! Be courageous! Be amazing! Build robots!
Be bold! Be courageous! Be amazing! Build robots! — Sylvia
Plath
[email protected]
@technicalhumans http://tessel.io