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
Scala at journi
Search
Christian Papauschek
October 28, 2014
Programming
1
260
Scala at journi
Review of using Scala and Play Framework for 2 years at journi.
Christian Papauschek
October 28, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
120
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
6.2k
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
200
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
160
Python札幌 LT資料
t3tra
7
1.1k
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
390
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.7k
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
830
Vibe codingでおすすめの言語と開発手法
uyuki234
0
210
CSC307 Lecture 06
javiergs
PRO
0
680
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5.9k
Featured
See All Featured
Marketing to machines
jonoalderson
1
4.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Statistics for Hackers
jakevdp
799
230k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
A Soul's Torment
seathinner
5
2.2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
YesSQL, Process and Tooling at Scale
rocio
174
15k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
130
HDC tutorial
michielstock
1
340
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
55
49k
Evolving SEO for Evolving Search Engines
ryanjones
0
110
Believing is Seeing
oripsolob
1
44
Transcript
A travel journaling app & web platform at Christian @papauschek
Challenges Web & Mobile platform 15000 users, 800 daily active
users Real time (push-)notifications Storing lots of pictures (GBs / day) Handling Apple featurings …
Scala libraries we use • Play Framework 2.3 • Slick
2.1 • Akka (for “cronjobs”)
(Java libraries we use ;-) • ImgScalr • Amazon S3
Library • Twitter4J • LogEntries (Cloud logging) • Metadata extractor (EXIF) Started replacing them with Play-WS
Our experience • We love Scala. • We love Play
Framework 2. • We have a love / hate relationship with Slick 2.
• Having type-safe db access is great. • Having generated
SQL in combination with ancient query optimizers is not so great. • Had to write SQL manually in some cases :(
(intermission) Be careful when picking your database!
Framework 2 • Very stable • Very performant (something else
will be slow :D) • Team-friendly • Akka in the backend opens up possibilities • Exciting future (ScalaJS + Play2, anyone?)
Project structure 4 project modules web mobile common tools JS/HTML
JSON API everything and the kitchen sink command-line helpers
Where to run a Play 2 app? • Huge performance
differences (SSD!) • Huge price differences • We evaluated AWS / DigitalOcean / Linode / Hetzner
Server Monitoring • Find issues before they become real problems.
• Is Facebook down, or your app?
Uptime so far (includes 2 Apple featurings)
Thank you, Play Framework! ~148ms response time
Thanks! Got questions?