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
Ember.js Meetup - Koblenz and Neuwied
Search
Kasper Tidemann
September 11, 2014
Programming
3
190
Ember.js Meetup - Koblenz and Neuwied
Slides from my talk at the Ember.js meetup in Koblenz at the rz-Druckhaus.
Kasper Tidemann
September 11, 2014
Tweet
Share
More Decks by Kasper Tidemann
See All by Kasper Tidemann
Distribuerede systemer på CBS, 18. september 2017 - transaktioner, del 2
kaspertidemann
1
280
Distribuerede systemer på CBS, 14. september 2017 - transaktioner, del 1
kaspertidemann
0
460
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 2
kaspertidemann
0
430
BitLab - Do IT Yourself
kaspertidemann
1
72
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 1
kaspertidemann
0
460
Distribuerede systemer på CBS, 5. oktober 2016 - arkitektur og repetition
kaspertidemann
0
230
Distribuerede systemer på CBS, 3. oktober 2016 - arkitektur
kaspertidemann
0
230
Oplæg om IT-arkitektur, AEA, 29. september 2016
kaspertidemann
1
120
Distribuerede systemer på CBS, 28. september 2016 - transaktioner
kaspertidemann
0
230
Other Decks in Programming
See All in Programming
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
2.3k
CSC307 Lecture 02
javiergs
PRO
1
770
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
200
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
190
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
590
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
780
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.5k
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
4
3.9k
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
330
SQL Server 2025 LT
odashinsuke
0
190
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
170
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1.1k
Featured
See All Featured
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
270
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Speed Design
sergeychernyshev
33
1.5k
Rails Girls Zürich Keynote
gr2m
96
14k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
420
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
55
49k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Mind Mapping
helmedeiros
PRO
0
53
Claude Code のすすめ
schroneko
67
210k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
740
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Transcript
September 11, 2014 Ember.js Meetup Koblenz und Neuwied
{ name: “Kasper Tidemann”, profession: “Software developer”, company: “Tidemann&Co”, codes:
[“JavaScript”, “Go”], likesTo: “Be nice and drink beer.”, places: [“Copenhagen”, “San Francisco”], alsoDoes: “Blogging”, website: “kaspertidemann.com” } string
Meeho! is a CRM system and my first company.
My favorite editor is Atom. Now you know everything about
me.
A bit about where we came from and where we’re
headed. Status quo
Back then…
Now: Unreal 4 in the browser thanks to asm.js, a
subset of JavaScript.
Seriously, that’s crazy! OMG LOOOOOOOL
Let’s talk Ember.js! App.inject( );
First things first. A framework for creating ambitious web applications.
… there’s more to it, but let’s stick to the
basic. Ember.js has routes, templates and controllers. Core concepts App.Router.map(function() { this.route(‘koblenz’); this.route(‘neuwied’); }); <script type=“text/x-handlebars” id=“koblenz”> <p>Welcome to Koblenz!</p> <p>Today is {{date}}.</p> </script> App.KoblenzController = Em.Controller.extend({ date: Em.computed(function() { return (new Date()).getTime(); }) });
A brief overview of what comes from where. App.Router.map(function() {
this.route(‘koblenz’); this.route(‘neuwied’); }); <script type=“text/x-handlebars” id=“koblenz”> <p>Welcome to Koblenz!</p> <p>Today is {{date}}.</p> </script> App.KoblenzController = Em.Controller.extend({ date: Em.computed(function() { return (new Date()).getTime(); }) });
Essentially, anyway. The router takes care of turning the URL
into meaningful state. It invokes controllers, views, and has templates appear in the browser. Router
Like partials in Ruby on Rails and so on. Templates
contain the HTML to show in the browser. Ember.js uses Handlebars for templating, a string-based solution soon to be replaced by HTMLBars. Templates
Glueing everything together! Controllers are typically instantiated by the router.
Each route has a corresponding controller for working with data, variables, bindings and so on. Controllers
Demonstration
We’ve only just touched upon the surface of what Ember.js
is. There is way more to Ember.js than just that: models, mixins, helpers, bindings, components and so on.
Sharing is caring. <3 https://github.com/KasperTidemann/emberjs-meetup-koblenz-neuwied Example files are available on
GitHub:
Enough talk! Who actually uses this magnificent piece of software?
Who uses Ember.js?
None
Because of the sensible conventions, the rapid development experience, the
helpful bindings… Why should you use Ember.js? (And because you really don’t want to setInterval() for checking hash changes nor fiddle with push states yourself. Believe me, I did that once. All you want is to build an awesome app.)
http://www.kaspertidemann.com/ Thank you!