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
Let's Use More JavaScript, OK?
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jason Rhodes
June 10, 2014
Programming
200
1
Share
Let's Use More JavaScript, OK?
Presentation given at Penn State Web Conference in June 2014.
Jason Rhodes
June 10, 2014
More Decks by Jason Rhodes
See All by Jason Rhodes
What's New with React, 2018 Edition
rhodesjason
0
82
Snapshot Everything
rhodesjason
0
75
Make Something Dumb
rhodesjason
0
79
Node Workshop: NorfolkJS Edition
rhodesjason
0
120
Nuclear Pizza Machine
rhodesjason
0
170
How to Succeed With JavaScript (Without Really Trying)
rhodesjason
0
150
NodeSchool is OSCCL
rhodesjason
0
210
NodeSchool Intro: Sept 27, 2014
rhodesjason
1
97
Started from the Bottom
rhodesjason
0
130
Other Decks in Programming
See All in Programming
AI-DLC 入門 〜AIコーディングの本質は「コード」ではなく「構造」〜 / Introduction to AI-DLC: The Essence of AI Coding Is Not “Code” but “Structure”
seike460
PRO
0
220
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
210
PHPで TLSのプロトコルを実装してみる
higaki_program
0
730
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
150
The free-lunch guide to idea circularity
hollycummins
0
410
Vibe하게 만드는 Flutter GenUI App With ADK , 박제창, BWAI Incheon 2026
itsmedreamwalker
0
540
Rethinking API Platform Filters
vinceamstoutz
0
7.9k
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
120
20260315 AWSなんもわからん🥲
chiilog
2
190
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
340
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
290
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
1
280
Featured
See All Featured
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
160
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
260
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Site-Speed That Sticks
csswizardry
13
1.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Balancing Empowerment & Direction
lara
5
1k
So, you think you're a good person
axbom
PRO
2
2k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
370
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
260
Transcript
Let’s Use More JavaScript, OK?
describe javascript in a few words? how would you
None
Wat @garybernhardt https://www.destroyallsoftware.com/talks/wat
1 + 3 ! => 4
"hel" + "lo" ! => "hello"
[] + [] ! => ""
{} + {} ! => 0
None
typeof 5 ! => Number
typeof "hello" ! => String
typeof [1,2,3] ! => Object
typeof [1,2,3] ! => Object
typeof null ! => Object
typeof null ! => Object
None
typeof NaN ! => Number
typeof NaN ! => Number
None
None
! Got a question? ASK TWITTERS!
None
None
JavaScript, the worst invention ever. –Bert Bos computer scientist former
W3C chairman CSS Working Group
None
None
The most brittle part of the stack is JavaScript. –Jeremy
Keith web evangelist
None
None
None
None
{{ JavaScript 18 other languages
=
===
Why?
READY, SET, HISTORY
ASSEMBLY
None
None
FORTRAN Formula Translating System
None
FORTRAN code example
COBOL Common Business Oriented Language
COBOL “Hello World”
The use of COBOL cripples the mind; its teaching should,
therefore, be regarded as a criminal offense. “ –Edsger Dijkstra, 1975
ALGOL Algorithmic Language
ALGOL example code
LISP List Processing
LISP: the most intelligent way to misuse a computer. “
C
None
A C program is like a fast dance on a
newly waxed dance floor by people carrying razors. “ –Waldi Ravens
FORTRAN COBOL BASIC ALGOL C LISP Simula Smalltalk C++, PHP,
Objective-C, Java Ruby Scheme Self
LIKEABILITY ADOPTION AVAILABILITY EASE OF USE Likeability doesn’t matter. 1.
LIKEABILITY ADOPTION AVAILABILITY EASE OF USE Likeability doesn’t matter. 1.
People hate JavaScript. (They should get over it.)
! 25 Scheme 27 Lisp 36 Smalltalk ! ?? ALGOL
! ☔️ 1 C 2 Java 3 PHP 5 C++
25 Scheme 27 Lisp 36 Smalltalk ! ?? ALGOL
JavaScript is everywhere. 2. Likeability doesn’t matter. 1.
JavaScript is 2. Likeability doesn’t matter. 1. JavaScript is awesome.
3.
FUNCTIONS!!!
FUNCTIONS!!!
FUNCTIONS!!!
FUNCTIONS!!!
FUNCTIONS!!!
FUNCTIONS!!!
FUNCTIONS!!!
Prototype Inheritance
None
None
None
1 episode: 10 months 1 batch: 30 days Entire programming
language: 10 days
LiveScript
LiveScript
LiveScript Java
JavaScript JScript
European Computer Manufacturers Association (ECMA)
JavaScript JScript ECMAScript
ES1 (June 1997) ES2 (June 1998) ES3 (December 1999)
DOM AND THE DARK YEARS OF THE DOM CSS 1
XML RDF HTML 4.0
Jesse James Garrett 2005
None
NOT BAD
None
None
The first time you run $(’.foo’).fadeOut(), you feel like a
god damn wizard. “ –Oscar Godson, jQuery Made Me Become A Programmer
None
None
None
None
ES5
ES5 Shim github.com/es-shims/es5-shim
small reusable libraries
… 451!
None
None
None
None
None
youtube.com/watch?v=ztspvPYybIY
None
None
http://addyosmani.com/writing-modular-js/
None
myproject/ main.js
myproject/ main.js sayHello.js
None
None
FILE SCOPE sayHello.js
FILE SCOPE sayHello.js
main.js
None
None
browserify main.js -o bundle.js $
myproject/ main.js sayHello.js bundle.js
None
None
None
None
None
None
Likeability doesn’t matter. 1.
Likeability doesn’t matter. 1.
JavaScript is everywhere. 2. Likeability doesn’t matter. 1.
None
None
JavaScript is 2. Likeability doesn’t matter. 1. JavaScript is awesome.
3.
None
None
None
None
None
Rate this talk! bit.ly/psuprogramming THANKS. Follow me/AMA twitter.com/rhodesjason