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
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
280
Components on the Web: Frontend NE
jackfranklin
1
850
ReactiveConf: Lessons Migrating Complex Software
jackfranklin
0
530
Front Trends: Migrating complex software
jackfranklin
1
850
Migrating from Angular to React: Manc React
jackfranklin
1
220
Half Stack Fest: Webpack
jackfranklin
4
600
FullStackFest: Elm for JS Developers
jackfranklin
1
270
Codelicious: Intro to ES2015
jackfranklin
0
460
PolyConf: Elm for JS Developers
jackfranklin
0
310
Other Decks in Technology
See All in Technology
完全自律ロボットを作りたくて、先に開発を自律させた話(ROS Japan UG #63 LT)
rryz09
0
510
AICoEでAIネイティブ組織への進化
yukiogawa
0
170
Road to SRE NEXTの今までとこれから
hiroyaonoe
0
310
10年目を迎えた「ABEMA」がどのように AI 活用を推進して、AI 駆動開発にシフトしているのか / How ABEMA, entering its 10th year, is promoting the use of AI and shifting toward AI-driven development
miyukki
0
140
KiCAD講習会②
tutcreators
0
110
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
3
3.7k
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
13
2k
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
1
370
技術イベント終了後、運営の 事後タスクは丁寧に (心がけています)/ #tamagawadev
nishiuma
1
100
キャリアの中で本を作る / Making a Book During Your Career
ak1210
0
140
はじめてのWDM
miyukichi_ospf
1
140
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.2k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
A Tale of Four Properties
chriscoyier
163
24k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Crafting Experiences
bethany
1
210
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
490
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
2
320
YesSQL, Process and Tooling at Scale
rocio
174
15k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Evolving SEO for Evolving Search Engines
ryanjones
0
240
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