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
Node.js - A practical Introduction
Search
Felix Geisendörfer
June 16, 2012
Programming
5
1.3k
Node.js - A practical Introduction
Talk given at Big Tech Day 5 in Munich on 15.06.2012.
Felix Geisendörfer
June 16, 2012
Tweet
Share
More Decks by Felix Geisendörfer
See All by Felix Geisendörfer
tus.io - Resumable File Uploads (Lightning Talk)
felixge
2
770
Programming flying robots with JavaScript
felixge
2
960
Programming flying robots with JavaScript
felixge
0
600
Programming an AR Drone Firmware with JS (de)
felixge
1
620
Faster than C?
felixge
1
1.2k
Flying robots over a 10.000 mile distance with JavaScript.
felixge
0
480
Faster than C?
felixge
1
640
The power of node.js (with quadcopters)
felixge
0
500
Faster than C?
felixge
0
410
Other Decks in Programming
See All in Programming
階層化自動テストで開発に機動力を
ickx
1
430
React 使いじゃなくても知っておきたい教養としての React
oukayuka
8
790
PHPカンファレンス関西2025 基調講演
sugimotokei
5
990
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
460
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
2
730
ソフトウェア設計とAI技術の活用
masuda220
PRO
25
6.9k
型で語るカタ
irof
1
850
AIともっと楽するE2Eテスト
myohei
9
3.1k
What's new in AppKit on macOS 26
1024jp
0
180
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
17
6.1k
Go製CLIツールをnpmで配布するには
syumai
0
670
フロントエンドのパフォーマンスチューニング
koukimiura
6
2.3k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.7k
YesSQL, Process and Tooling at Scale
rocio
173
14k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Scaling GitHub
holman
461
140k
Code Reviewing Like a Champion
maltzj
524
40k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
A practical introduction 15.06.2012 - Big Tech Day 5, Munich
Felix Geisendörfer
Felix Geisendörfer
transloadit.com
core contributor
npm modules
node-formidable
node-mysql
~50 modules total
(@)felixge(.de)
Audience
Software Developers?
JavaScript Developers?
Heard about node.js?
Using node.js?
What is node.js?
JavaScript on the Server
Hello World
1 var http = require('http'); 2 3 http.createServer(function(req, res) {
4 res.end('Hello World'); 5 }).listen(8080); hello world http server in node.js
None
None
Features • TCP / UDP • HTTP / HTTPS •
File System • Buffers (byte arrays) • DNS • Child Processes • Http / Https • Crypto • ZLIB • Readline / TTY / REPL
< 5 min to install Windows, Mac, Linux
History
1995 LiveWire released
1997 Rhino started
...
Ryan Dahl starts the node project (first commit) Feb 16,
2009
I discovered node.js (v0.0.6) ~June, 2009
Isaac Schlueter starts the npm package manager Sep 29, 2009
Ryan’s talk at JSConf.EU gets people excited about node Nov
7, 2009
...
2012
None
What is special?
Non-blocking I/O
var image = fs.readFileSync('some.jpeg'); console.log('hello'); vs fs.readFile('some.jpeg', function(err, image) {
}); console.log('hello');
Easy concurrency
Low memory usage
Good performance
More on performance
Google V8
None
JS -> Assembly
Crankshaft JIT
Fast
Now in Munich
Simple Benchmark
1 kb http responses ~6000 requests / second* * per
CPU core
Why JavaScript?
// Today (15.06.2012) > (new Date).getMonth() 5
> 0.3 + 0.3 + 0.3 0.8999999999999999
None
Everywhere
War on JavaScript
No I/O in Standard Lib
Use Cases
WebSockets
Streaming
Code Sharing
etc.
node package manager
10.000+ packages
local installs
None
Join the Community • Mailing list (nodejs, nodejs-dev) • IRC
(#node.js) - 700+ User online
Thank you!
Questions? ” http://felixge.de/
[email protected]
@felixge
Bonus: Live Coding