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
London JS: The State of JavaScript
Search
Jack Franklin
May 27, 2015
Technology
9
27k
London JS: The State of JavaScript
Jack Franklin
May 27, 2015
Tweet
Share
More Decks by Jack Franklin
See All by Jack Franklin
Advanced React Meetup: Testing JavaScript
jackfranklin
1
200
Components on the Web: Frontend NE
jackfranklin
1
770
ReactiveConf: Lessons Migrating Complex Software
jackfranklin
0
420
Front Trends: Migrating complex software
jackfranklin
1
770
Migrating from Angular to React: Manc React
jackfranklin
1
150
Half Stack Fest: Webpack
jackfranklin
4
490
FullStackFest: Elm for JS Developers
jackfranklin
1
210
Codelicious: Intro to ES2015
jackfranklin
0
340
PolyConf: Elm for JS Developers
jackfranklin
0
250
Other Decks in Technology
See All in Technology
デザインシステムを始めるために取り組んだこと - TechTrain x ゆめみ ここを意識してほしい!リファクタリング勉強会
kajitack
2
130
30分でわかる「リスクから学ぶKubernetesコンテナセキュリティ」/30min-k8s-container-sec
mochizuki875
3
450
2025年のARグラスの潮流
kotauchisunsun
0
820
メールヘッダーを見てみよう
hinono
0
120
0→1事業こそPMは営業すべし / pmconf #落選お披露目 / PM should do sales in zero to one
roki_n_
PRO
1
1.6k
【JAWS-UG大阪 reInvent reCap LT大会 サンバが始まったら強制終了】“1分”で初めてのソロ参戦reInventを数字で振り返りながら反省する
ttelltte
0
140
「人物ごとのアルバム」の精度改善の軌跡/Improving accuracy of albums by person
mixi_engineers
PRO
1
120
トラブルシュートを楽しもう (wakamonog meeting 15)
recuraki
0
140
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
7
1.6k
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
190
Copilotの力を実感!3ヶ月間の生成AI研修の試行錯誤&成功事例をご紹介。果たして得たものとは・・?
ktc_shiori
0
360
Git scrapingで始める継続的なデータ追跡 / Git Scraping
ohbarye
5
500
Featured
See All Featured
Designing for Performance
lara
604
68k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Optimizing for Happiness
mojombo
376
70k
Making Projects Easy
brettharned
116
6k
Optimising Largest Contentful Paint
csswizardry
33
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
960
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
GitHub's CSS Performance
jonrohan
1030
460k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Transcript
The State of JavaScript
@Jack_Franklin
None
https://gocardless.com/blog/how-we-built-the-new-gocardless.com/
things people keep tweeting 4
it’s difficult to get into front end web development 1
it’s difficult to get into front end web development it’s
difficult to build client side applications
HTML + CSS + the odd bit of jQuery
complexity for complexity’s sake
None
it’s difficult to build client side applications 2
building client side applications is complex
http://www.smashingmagazine.com/2013/06/11/front-end-ops/ “application logic is being deferred to the client side.
For some reason, though, operations folks aren’t going with it”
moving work to the client necessarily leads to a more
involved, complex front end workflow (and that’s not a bad thing)
I constantly feel that I'm behind on my homework having
to evaluate new libraries and frameworks showing up https://news.ycombinator.com/item?id=9604203 3
None
"But how can we get anything done when we’re spending
most of our time learning?" http://www.breck-mckye.com/blog/2014/12/the-state-of-javascript- in-2015/
Stop trying to learn. Build things in whatever you’re comfortable
with.
“As you get better, these new frameworks and tools become
way less daunting and the anxiety caused by things moving too fast will subside.” http://wesbos.com/overwhelmed-with-web-development/
Focus on a higher level and remove the anxiety
deep knowledge of 1-2 tools you rely on is always
superior
there are too many frameworks 4
None
in the last 12 - 24 months… backbone angular ember
react
this is not a bad thing!
competition = improvement (ReactJS rendering)
“Why we moved from A to B and why A
is rubbish”
pressure to be on the latest and greatest
use cases
don’t under value familiarity
GoCardless picked Angular
and now we’re quite good at it
“will you move from Angular to X?
https://roost.bocoup.com/2015/austin/blog/why-backbone/
so many considerations
https://twitter.com/padolsey/status/603203449803636737
None
no framework is good at everything no framework is bad
at everything
libraries vs frameworks
None
npm unified package publication
proper dependency management and versioning!
None
ECMAScript 6 ECMAScript 2015
Release Candidate 4 https://people.mozilla.org/~jorendorff/es6-draft.html
goals of ES6 3
complex applications
libraries
code generation (compile to JS)
https://youtu.be/mPq5S27qWW8
block scoping arrow functions destructuring default parameters
adoption and familiarity
we’re not writing “straight up” JavaScript any more
None
testing grounds
=>
None
None
SystemJS
jspm http://javascriptplayground.com/blog/2014/11/js-modules-jspm- systemjs/
https://youtu.be/NpMnRifyGyw
http://www.bbc.co.uk/news/magazine-16444966
“Photographs will be telegraphed from any distance… striking events will
be published… an hour later… photographs will reproduce all of nature’s colours.”
“Wireless telephone and telegraph circuits will span the world. A
husband in the middle of the Atlantic will be able to converse with his wife sitting in her boudoir in Chicago.”
“There will be no C, X or Q in our
everyday alphabet. They will be abandoned because unnecessary.”
things that will may (won’t) happen in JavaScript in the
next 12-24 months… 8
…for complex web applications
fewer people will write JS without going through a compilation
step 1
(TypeScript and Babel in particular)
Smaller libraries (and the composing of) will become more popular
2
Focus on libraries doing one thing well (MomentJS, Immutable) 3
The monoliths (Angular, Ember) will always have their place and
use cases 4
The use of compilers like Babel will be abstracted away
by build tools like jspm and Webpack 5
Running the same JS client side and server side will
become more popular 6
and the phrase “Isomorphic JS” will die in a pit
of fire 6.1
As ES6 implementations grow and stabilise, we’ll already be writing
ES7 anyway 7
The rate of new frameworks will slow down 8
In 12 months, tweet me telling me how right wrong
I was
@Jack_Franklin