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
How I learned to love Ember
Search
Ju Liu
March 30, 2016
Programming
6
1.2k
How I learned to love Ember
Ju Liu
March 30, 2016
Tweet
Share
More Decks by Ju Liu
See All by Ju Liu
Taking back control of your life with Nerves
arkham
0
120
The best tomato pasta of your life
arkham
1
250
Have your Sorbet and eat it too
arkham
1
73
No REST for the wicked: an introduction to GraphQL
arkham
4
190
Sonic Pi, Live Music, Live Coding
arkham
2
220
The Design of Everyday Ruby
arkham
3
410
Remote is not remote
arkham
0
170
^RegexR4Strn<3$
arkham
2
430
Learn Javascript or Die
arkham
1
320
Other Decks in Programming
See All in Programming
Advance Your Career with Open Source
ivargrimstad
0
460
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
0
110
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
960
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
800
Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components
da1chi
3
2k
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
5
1.7k
Flutterで分数(Fraction)を表示する方法
koukimiura
0
130
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
210
株式会社 Sun terras カンパニーデック
sunterras
0
260
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
150
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
490
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
160
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Visualization
eitanlees
148
16k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
GitHub's CSS Performance
jonrohan
1032
470k
Agile that works and the tools we love
rasmusluckow
331
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Faster Mobile Websites
deanohume
310
31k
Practical Orchestrator
shlominoach
190
11k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Balancing Empowerment & Direction
lara
4
680
Transcript
How I learned to <3 Ember
HI!
I'm Ju !
You can find me as @arkh4m
I'm Italian !
MAMMA BUTTA LA PASTA
I live in London !
None
I work at AlphaSights We're in London and New York
And we're huuuge Ruby & Ember fans
I'm addicted to rock climbing!
None
BUSINESS TIME
I'm here to tell a story
A long time ago in a galaxy far, far away....
I was a PhD student working on packet filtering in
high speed networks
Friend: "Hey, wanna join our Rails shop?"
Me: "OK"
PROBLEM
I knew nothing about web development.
So I started studying Ruby
But that wasn't enough, so I studied Rails
But that wasn't enough, so I studied OOP
But that wasn't enough, so I studied TDD
And I was happy
I was really enjoying myself doing what every backend Ruby
developer loves to do
BUT THEN CAME THE JAVASCRIPT
So I learned jQuery
Then I learned KnockoutJS
Then I learned BackboneJS
Then I learned MarionetteJS
Then I learned BatmanJS
Then I learned AngularJS
But I still wasn't happy
None
A9. The most advanced chip ever The most vivid Retina
display ever TouchID faster and better than ever 3D Touch lets you do more than ever The most powerful 4-inch phone ever IOS 9 is smarter and more essential than ever The 27-inch iMac is faster and more powerful than ever
When everything is revolutionary, probably nothing really is — Albert
Einstein
I was pretty deep into The Pit of JavaScript Disillusionment
But I had my Ruby, my OOP and my TDD
So everything was good!
But one day..
We're going to rebuild this Rails app in Ember!
Initially I wasn't really excited
None
But then I start poking around...
"This looks nice and familiar..."
15 minutes later...
None
Even though I thought I knew Rails and JS, Ember
looked like something completely different
And I wasn't a huge fan because it was doing
too many things
KISS
Keep It Simple, Stupid
Simple is better than complex — The Zen of Python
Write programs that do one thing and do it well
— Doug McIlroy
Why do you have to go and make things so
complicated? — Avril Lavigne
2 years later...
Now I love Ember :)
I can do everything!
So what changed?
The Gmail Test
I have to rebuild Gmail. How would I do it?
None
I couldn't figure out a way to do it by
keeping it simple...
Simple is better than complex — The Zen of Python
But complex is better than complicated — The Zen of
Python
None
An ambitious application solves a real problem
And as we know, reality is full of complexity
Everything should be made as simple as possible, but not
simpler — Albert Einstein
So I stopped using 'simplicity' as an excuse :)
Also, I found out why I wasn't enjoying myself in
JS
It wasn't the syntax
It wasn't handling state
It wasn't handling async
But the revolution at any cost mindset
HYPE FATIGUE
None
Second System Syndrome
We need to rebuild this from scratch
It's going to be easier, faster, more expressive
But it's not gonna be backwards compatible
→ Perl 5 -> Perl 6
→ Python 2 -> Python 3
→ Angular 1 -> Angular 2
Intelligent design
I have the perfect plan, now let's build it
None
Natura non facit saltus — Linnaeus, 1751
Stability Without Stagnation
Eventually all the good ideas will end up in Ember
— wycats
When I was learning Ember, I was learning a piece
of software.
But the truth is, there are many pieces of software
around.
This is my framework. There are many like it, but
this one is mine. — Full Metal Jacket
But what I learned to love is much more than
a frame of work
It's a frame of mind
It's having a truly open source process
It's valuing backwards compatibility
It's building inclusive communities
It's embracing continuous mutation over short lived revolutions
Don't be a JS Creationist Learn to love Ember!
Thank you! ! @arkh4m engineering.alphasights.com