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
EmberConf 2016: Redesigning and rewriting our a...
Search
Jade Applegate
March 30, 2016
420
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
EmberConf 2016: Redesigning and rewriting our application in Ember.js
Jade Applegate
March 30, 2016
More Decks by Jade Applegate
See All by Jade Applegate
RenderConf: Designing for Complexity
jadeapplegate
1
1.1k
Featured
See All Featured
HDC tutorial
michielstock
2
750
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Building the Perfect Custom Keyboard
takai
2
820
4 Signs Your Business is Dying
shpigford
187
22k
A designer walks into a library…
pauljervisheath
211
24k
The Cult of Friendly URLs
andyhume
79
7k
Unsuck your backbone
ammeep
672
58k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Writing Fast Ruby
sferik
630
63k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
390
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Transcript
Redesigning & Rewriting our Application in Ember.js
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS @jadeapplegate
None
SLIDE REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS
None
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Customer-facing UI ✅
Account ✅ Billing ✅ User management ✅ Real-time analytics and stats ✅ Advanced configurations
A G E N D A
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS ✅ Rationale ✅
Approach ✅ Results ✅ Lessons Learned ✅ Next Steps
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Side Projects vs.
Consumer Applications
W H Y D O A R E W R
I T E ?
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS No quick changes
☹ No test coverage Lack of code consistency Lack of modern architecture Lacking rich interactions No real ownership Dependencies on other systems
Y O U C A N F I X A
L L O F T H E S E W I T H O U T E M B E R …
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Ember CLI In-house
knowledge No dev env needed
A M O R E M O D E R
N A P P R O A C H
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Step 1: Learn
Ember
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Testing
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Components
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Modern Tools
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Community
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Currently Using ✅
dockyard-suave ✅ ember-cli-mirage ✅ ember-feature-flags ✅ ember-i18n ✅ ember-validations ✅ svg4everybody Future Libraries ember-power-select ember-concurrency many others…
R E S U LT S
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS ✅ Rapid development
✅ Rich interactions ✅ Reusable components ✅ Tested, reliable code
None
None
None
None
None
None
None
None
M E T R I C S
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS SLIDE 32 ember-deploy
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS SLIDE 33 Test
Coverage
L E S S O N S L E A
R N E D
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Pay down tech
debt as you go
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Be selective with
external libraries
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Test coverage from
day one
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Components make things
easier to build
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Internationalize as you
go
N E X T S T E P S
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Work continues
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Responsive
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Browser Support
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Releases
REDESIGNING & REWRITING OUR APPLICATION IN EMBER.JS Open Source!
T H A N K Y O U !