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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Jason Rhodes
June 10, 2014
Programming
220
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
88
Snapshot Everything
rhodesjason
0
82
Make Something Dumb
rhodesjason
0
83
Node Workshop: NorfolkJS Edition
rhodesjason
0
120
Nuclear Pizza Machine
rhodesjason
0
190
How to Succeed With JavaScript (Without Really Trying)
rhodesjason
0
150
NodeSchool is OSCCL
rhodesjason
0
220
NodeSchool Intro: Sept 27, 2014
rhodesjason
1
100
Started from the Bottom
rhodesjason
0
140
Other Decks in Programming
See All in Programming
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
280
symfony/aiとlaravel/boost
77web
0
120
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
1.6k
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
160
Creating Composable Callables in Contemporary C++
rollbear
0
190
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
350
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
830
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
230
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.7k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
340
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
Designing for Timeless Needs
cassininazir
1
280
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
340
Unsuck your backbone
ammeep
672
58k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
270
Are puppies a ranking factor?
jonoalderson
1
3.7k
WENDY [Excerpt]
tessaabrams
11
38k
Practical Orchestrator
shlominoach
191
11k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
250
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
490
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
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