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
Frontend Choices
Search
Alex Coles
March 16, 2014
Technology
0
260
Frontend Choices
Alex Coles
March 16, 2014
Tweet
Share
More Decks by Alex Coles
See All by Alex Coles
How a language reflects its people (Brighton Ruby)
myabc
0
97
How a language reflects its people
myabc
0
76
Taking Rails beyond the asset pipeline (Workshop at RubyDay Italia)
myabc
0
51
Rails: beyond the asset pipeline (RubyC)
myabc
0
120
Frontend Choices (Tropical Ruby)
myabc
1
750
Frontend Choices (RubyConf Portugal)
myabc
1
430
Frontend Choices
myabc
0
53
Putting the Hype back in Hypermedia
myabc
1
230
DataMapper
myabc
2
210
Other Decks in Technology
See All in Technology
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
2
760
産業機械をElixirで制御する
kikuyuta
0
150
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
5
960
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
130
Data Hubグループ 紹介資料
sansan33
PRO
0
1.8k
Workflows から Agents へ ~ 生成 AI アプリの成長過程とアプローチ~
belongadmin
2
140
Kotlinで学ぶ 代数的データ型
ysknsid25
5
1.1k
(新URLに移行しました)FASTと向き合うことで見えた、大規模アジャイルの難しさと楽しさ
wooootack
0
660
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #開発生産性_findy
takabow
1
360
In Praise of "Normal" Engineers (LDX3)
charity
0
490
AIエージェントのフレームワークを見るときの個人的注目ポイント
os1ma
1
510
AI とペアプロしてわかった 3 つのヒューマンエラー
takahiroikegawa
1
660
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Visualization
eitanlees
146
16k
The Language of Interfaces
destraynor
158
25k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Balancing Empowerment & Direction
lara
1
270
The Invisible Side of Design
smashingmag
299
50k
Optimizing for Happiness
mojombo
379
70k
Writing Fast Ruby
sferik
628
61k
Building Adaptive Systems
keathley
43
2.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Designing for humans not robots
tammielis
253
25k
Transcript
Frontend choices Alex Coles | wroc_love.rb, Wrocław, Polska
Anti-climax
front end vs. frontend
Not really about choice
‘I’m a backend guy living in a frontend world’
About me
@myabc Alex Coles Berlin, Germany Finn GmbH
OpenProject openproject.org
1..2..3
eurucamp eurucamp.org Call for Papers open until 1st May
1..2..3
jeden one: background
Single page v traditional HTML
SPA depends on your content
no kupa, Sherlock
What’s your content? Information Pages Membership sites Closed Systems
Content Criteria • Authentication • Caching • Indexing (SEO) •
curated Content vs Dynamic
dwa two: where we are now
History of the Rails Interface
“Rails is so 2005”
“Rails Way” back in 2005 • Server Generated HTML (ERB,
etc.) • Prototype • Scriptaculous • RJS
“Rails Way” now • Server Generated HTML (ERB, Slim, HAML
etc.) • jQuery • jQuery UI • Server generated JavaScript Responses (SJR)
Where we are now
JavaScript is HUGE
No backend nobackend.org
Hoodie hood.ie
Meteor www.meteor.com
but I <3 Ruby
So here’s the question
None
Room for Rails?
The Rails Way
– Marcin Stecki @madsheep at wroc_love.rb “Not his [DHH]'s responsibility
to tell us how to do these things.”
Frontend frameworks
Frontend (MV*) frameworks • AngularJS • Ember.js • KnockoutJS
Frontend (component) frameworks • ReactJS • Backbone.View (alone) • ExtJS
TodoMVC todomvc.com
KnockoutJS
AngularJS
Ember.js
What is most like Rails?
Ember.js is most like Rails • Everything should inherit from
Ember.Object (think ActiveRecord::Base.inherited) • Routing DSL • Vocabulary (templates, partials, etc.)
trzy three: practical usage
Using asset pipeline / sprockets
Use Bower
gem install bower-rails
Rails 4 (Sprockets 2+)
config.assets.paths << File.join(Rails.root, 'vendor', 'assets', ‘components')
ember-rails-api github.com/dockyard/ember-appkit-rails
None
What is the way forward?
Split Completely
Two applications: one API, one frontend
Rails or Sinatra for API A JS workflow for Frontend
Surprisingly testable (and fast)
Dzięki!
Questions?
@myabc