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
1.4k
5
Share
Node.js - A practical Introduction
Talk given at Big Tech Day 5 in Munich on 15.06.2012.
Felix Geisendörfer
June 16, 2012
More Decks by Felix Geisendörfer
See All by Felix Geisendörfer
tus.io - Resumable File Uploads (Lightning Talk)
felixge
2
820
Programming flying robots with JavaScript
felixge
2
1k
Programming flying robots with JavaScript
felixge
0
650
Programming an AR Drone Firmware with JS (de)
felixge
1
650
Faster than C?
felixge
1
1.3k
Flying robots over a 10.000 mile distance with JavaScript.
felixge
0
530
Faster than C?
felixge
1
690
The power of node.js (with quadcopters)
felixge
0
540
Faster than C?
felixge
0
470
Other Decks in Programming
See All in Programming
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
220
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
380
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.4k
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
220
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
0
150
JOAI2026 1st solution - heron0519 -
heron0519
0
140
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
250
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
150
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
150
Running Swift without an OS
kishikawakatsumi
0
840
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
430
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
55k
Visualization
eitanlees
150
17k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
160
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Being A Developer After 40
akosma
91
590k
Docker and Python
trallard
47
3.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
330
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
520
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