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
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
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
700
AIエージェントで業務改善してみた
taku271
0
410
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
240
事業会社でのセキュリティ長期インターンについて
masachikaura
0
230
KagglerがMixSeekを触ってみた
morim
0
370
Go_College_最終発表資料__外部公開用_.pdf
xe_pc23
0
120
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
300
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.5k
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
7
1.2k
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
170
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
430
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
120
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
190
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
200
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
160
Practical Orchestrator
shlominoach
191
11k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
The Pragmatic Product Professional
lauravandoore
37
7.2k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
95
RailsConf 2023
tenderlove
30
1.4k
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