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
27k
9
Share
London JS: The State of JavaScript
Jack Franklin
May 27, 2015
More Decks by Jack Franklin
See All by Jack Franklin
Advanced React Meetup: Testing JavaScript
jackfranklin
1
260
Components on the Web: Frontend NE
jackfranklin
1
850
ReactiveConf: Lessons Migrating Complex Software
jackfranklin
0
520
Front Trends: Migrating complex software
jackfranklin
1
840
Migrating from Angular to React: Manc React
jackfranklin
1
210
Half Stack Fest: Webpack
jackfranklin
4
590
FullStackFest: Elm for JS Developers
jackfranklin
1
270
Codelicious: Intro to ES2015
jackfranklin
0
430
PolyConf: Elm for JS Developers
jackfranklin
0
300
Other Decks in Technology
See All in Technology
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
510
AI時代に、 データアナリストがデータエンジニアに異動して
jackojacko_
0
620
フロントエンドの相手が変わった - AIが加わったWebの新しいインターフェース設計
azukiazusa1
33
11k
React 19×Rustツール 進化の「ズレ」を設計で埋める
remrem0090
1
110
Forget technical debt
ufried
0
180
なぜ、私がCommunity Builderに?〜活動期間1か月半でも選出されたワケ〜
yama3133
0
120
20260516_SecJAWS_Days
takuyay0ne
1
220
自動テストだけで リリース判断できるチームへ - 鍵はテストの量ではなくリリース判断基準の再設計にあった / Redesigning Release Criteria for Lightweight Releases
ewa
7
3.6k
世界の中心でApp Runnerを叫ぶ FINAL
tsukuboshi
0
260
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8k
AIの揺らぎに“コシ”を与える階層化品質設計
ickx
0
270
AI 時代の Platform Engineering
recruitengineers
PRO
1
140
Featured
See All Featured
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Done Done
chrislema
186
16k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
300
My Coaching Mixtape
mlcsv
0
120
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
BBQ
matthewcrist
89
10k
Marketing to machines
jonoalderson
1
5.2k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
210
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