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
210
Components on the Web: Frontend NE
jackfranklin
1
780
ReactiveConf: Lessons Migrating Complex Software
jackfranklin
0
430
Front Trends: Migrating complex software
jackfranklin
1
770
Migrating from Angular to React: Manc React
jackfranklin
1
150
Half Stack Fest: Webpack
jackfranklin
4
500
FullStackFest: Elm for JS Developers
jackfranklin
1
210
Codelicious: Intro to ES2015
jackfranklin
0
350
PolyConf: Elm for JS Developers
jackfranklin
0
260
Other Decks in Technology
See All in Technology
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
660
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
DeepSeekとは?何がいいの? - Databricksと学ぶDeepSeek! 〜これからのLLMに備えよ!〜
taka_aki
1
160
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
11k
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
110
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
190
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.3k
Pwned Labsのすゝめ
ken5scal
2
520
事業を差別化する技術を生み出す技術
pyama86
2
440
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
500
自分だけの仮想クラスタを高速かつ効率的に作る kubefork
donkomura
0
110
手を動かしてレベルアップしよう!
maruto
0
240
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Six Lessons from altMBA
skipperchong
27
3.6k
Fireside Chat
paigeccino
35
3.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
Docker and Python
trallard
44
3.3k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Agile that works and the tools we love
rasmusluckow
328
21k
Practical Orchestrator
shlominoach
186
10k
Raft: Consensus for Rubyists
vanstee
137
6.8k
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