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
190
Components on the Web: Frontend NE
jackfranklin
1
750
ReactiveConf: Lessons Migrating Complex Software
jackfranklin
0
410
Front Trends: Migrating complex software
jackfranklin
1
740
Migrating from Angular to React: Manc React
jackfranklin
1
140
Half Stack Fest: Webpack
jackfranklin
4
470
FullStackFest: Elm for JS Developers
jackfranklin
1
200
Codelicious: Intro to ES2015
jackfranklin
0
340
PolyConf: Elm for JS Developers
jackfranklin
0
250
Other Decks in Technology
See All in Technology
テストを楽に書きたい
tomorrowkey
2
270
暴カワでビデオシンセサイザーを導入する技術
yuchi
2
130
エンジニア向け会社紹介資料
caddi_eng
14
270k
Amplify Gen 2ではじめる 生成AIアプリ開発入門
tsukuboshi
0
400
多数のWebサービスをECS/Fargate構成で効率よく構築・運用するなら copilot-cli
interu
2
170
いまいまMySQL2024 @ OSC Nagaoka
sakaik
3
300
入社半年(合計1年)でGoogle Cloud 認定を全冠した秘訣🤫
risatube
1
280
とある事業会社にとっての Kaggler の魅力
hakubishin3
7
1.6k
AWS Lambda と Amazon SQS で「わかった気になれる」FreeRTOS 入門
soracom
PRO
2
150
カメラ単体で物体の3次元 座標を扱う方法
kenmatsu4
0
170
Deep dive into Nuxt Server Components
wattanx
1
1.3k
マルチテナントのサービスインフラに大きなテナントを受け入れるまで
7474
0
790
Featured
See All Featured
The Language of Interfaces
destraynor
154
24k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
9
630
How to Ace a Technical Interview
jacobian
275
23k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
231
17k
Become a Pro
speakerdeck
PRO
24
4.9k
Visualization
eitanlees
143
15k
RailsConf 2023
tenderlove
28
860
The Cost Of JavaScript in 2023
addyosmani
44
5.9k
4 Signs Your Business is Dying
shpigford
180
21k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
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