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
We built a runtime
Search
Kurt Mackey
December 11, 2018
Programming
1
780
We built a runtime
Kurt Mackey
December 11, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
SwiftUI Viewの責務分離
elmetal
PRO
0
150
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
120
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
120
GitHub Actions × RAGでコードレビューの検証の結果
sho_000
0
240
Unity Android XR入門
sakutama_11
0
140
AIの力でお手軽Chrome拡張機能作り
taiseiue
0
170
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
370
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
WebDriver BiDiとは何なのか
yotahada3
1
140
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
110
Conform を推す - Advocating for Conform
mizoguchicoji
3
680
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
200
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
35
1.6k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Language of Interfaces
destraynor
156
24k
Adopting Sorbet at Scale
ufuk
74
9.2k
Building an army of robots
kneath
302
45k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Transcript
We built a runtime We built a runtime
None
None
22 months ago …
Let’s build a CDN for devs! https://fly.io
Nginx & Lua (crazy fast) #1
Terrible programming model
Golang (Super productive) #2
So many feature requests
Go & Otto #3
JavaScript is slow
https://ponyfoo.com/articles/an-introduction-to-speculative-optimization-in-v8
But v8 is fast?!
https://ponyfoo.com/articles/an-introduction-to-speculative-optimization-in-v8
https://ponyfoo.com/articles/an-introduction-to-speculative-optimization-in-v8
Go & v8 #3
Go & v8: Just don’t
Node & v8 (We did it!) https://github.com/superfly/fly #4
Node: a cheat code for v8
Building a JavaScript Runtime // browsers implement a `fetch` method
// for making HTTP requests fetch("https://fly.io").then(function (r) { console.log("got response:", { status: r.status, size: r.body.length }) }) Batteries not included
None
Building a JavaScript Runtime console.log("hello world") No console for you
Building a JavaScript Runtime let lib = require('anything') Libraries, schmibraries
Fork the CDN https://fly.io
None
But it’s still Node
Rust & v8 (Hard mode) https://github.com/superfly/fly.rs #5
Good enough to handle DNS
We built a runtime We built a runtime
You can too You can too
None