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
100% JS @ LXJS 2012
Search
Lucas Hrabovsky
September 29, 2012
Technology
210
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
100% JS @ LXJS 2012
From Applied.js group at LXJS 2012
Lucas Hrabovsky
September 29, 2012
More Decks by Lucas Hrabovsky
See All by Lucas Hrabovsky
Compass Plugins - Philly MUG, May 24th 2018
__lucas
0
54
Electron at MongoDB: LibertyJS 2016
__lucas
0
280
standalone executables for node.js apps
__lucas
1
58
Boatyard @ EmpireJS 2012
__lucas
0
110
Cloudsearch @ ex.fm
__lucas
0
100
mongodb + ex.fm @ MongoPGH 2012
__lucas
2
1.1k
AWS Customer Presentation: exfm - How exfm uses AWS and Amazon CloudSearch- AWS Summit 2012 - NYC
__lucas
2
280
Other Decks in Technology
See All in Technology
Flutterをカメラで動かしたかった話
sony
1
130
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
Genie Codeハンズオン基礎編
taka_aki
1
100
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
220
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
130
Pavlokで始める電撃駆動開発
sgrsn
0
190
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
660
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
220
モバイルアプリ開発概論2026
recruitengineers
PRO
5
560
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
4
1.5k
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
108
250k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
170
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
A Modern Web Designer's Workflow
chriscoyier
698
190k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
A designer walks into a library…
pauljervisheath
211
24k
We Are The Robots
honzajavorek
0
300
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
470
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
240
Transcript
100% JS Saturday, September 29, 12
Hello. __lucas Saturday, September 29, 12
CTO http://ex.fm/iphone http://ex.fm/ Saturday, September 29, 12
What kind of company do we want to be? Saturday,
September 29, 12
Who do we hire? Saturday, September 29, 12
What we need Design UX JavaScript Python Java Objective-C Product
Saturday, September 29, 12
What we need take 2 Design UX JavaScript Python Java
Objective-C Product Saturday, September 29, 12
How do we get there? Client (some other time) Mobile
Server Saturday, September 29, 12
SERVER. Saturday, September 29, 12
Current Stack Flask App uWSGI Nginx Saturday, September 29, 12
Too many things that can go wrong. Saturday, September 29,
12
Pythons Gone Wild Saturday, September 29, 12
PubSub of all user events. Saturday, September 29, 12
Across processes and machines. Saturday, September 29, 12
Don’t try this in Python. Saturday, September 29, 12
<3 Socket.io Saturday, September 29, 12
YNGWIE Saturday, September 29, 12
Hmm... Saturday, September 29, 12
Something going on here. Saturday, September 29, 12
User Service API Site Service Song Service Lots of express
Saturday, September 29, 12
Services are cheap. Saturday, September 29, 12
Spread load and ownership. Saturday, September 29, 12
Easier to test. Saturday, September 29, 12
Happier developers. Saturday, September 29, 12
MOBILE. Saturday, September 29, 12
Our Mobile Web App is better than our native apps.
Saturday, September 29, 12
Q = Σ (P - D) Product Quality = Passion
- Cognitive Distance Saturday, September 29, 12
NO “Why not just hire more android and iOS developers?”
Saturday, September 29, 12
Don’t have time or money for specialists. Saturday, September 29,
12
Just because it’s native does not make it better. Saturday,
September 29, 12
Try optimizing android list views... Saturday, September 29, 12
<3 PhoneGap Saturday, September 29, 12
Deploy to S3 Saturday, September 29, 12
Plugins = Native Polyfills Saturday, September 29, 12
Fix HTML5 Audio with IEXAudio Plugin. https://github.com/exfm/iex-audio Saturday, September 29,
12
Side-note: FireBreath - Prototype new browser API’s http://www.firebreath.org Saturday, September
29, 12
LEARNED. Saturday, September 29, 12
YES “Do you really want front-end people working on the
server?” Saturday, September 29, 12
90/10 Get some data from an API Render a template
Saturday, September 29, 12
Know How The Sausages Get Made. Saturday, September 29, 12
Implement it yourself. Saturday, September 29, 12
Context Switching Saturday, September 29, 12
But.................... Saturday, September 29, 12
2 Problems so far. Saturday, September 29, 12
1. Front-end people have an inherent fear of databases. Saturday,
September 29, 12
Like Spiders... Saturday, September 29, 12
Covered in Spiders... Saturday, September 29, 12
That are electronic. Saturday, September 29, 12
$.post(“/user/”, {‘username’: ‘lucas’}) db.get(‘users’).put({‘username’: ‘lucas’}) Saturday, September 29, 12
Tarantulas aren’t poisonous. Saturday, September 29, 12
2. Async for the procedural folk. Saturday, September 29, 12
Mind-melting, complex, racey, callback nesting. Saturday, September 29, 12
Use flow-control. Saturday, September 29, 12
Anything in futures is great. https://github.com/coolaj86/futures Saturday, September 29, 12
And promises. Saturday, September 29, 12
when is nice and works with jQuery deferreds https://github.com/cujojs/when Saturday,
September 29, 12
Not instant. Saturday, September 29, 12
Sometimes a month, Saturday, September 29, 12
Sometimes an hour, Saturday, September 29, 12
Totally worth it. Saturday, September 29, 12
Obrigado. @__lucas https://github.com/exfm http://ex.fm Saturday, September 29, 12