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
260
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scala at journi
Review of using Scala and Play Framework for 2 years at journi.
Christian Papauschek
October 28, 2014
Other Decks in Programming
See All in Programming
数百円から始めるRuby電子工作
tarosay
0
120
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
370
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
140
Build-to-own AI: Agentic Development for Humans
inesmontani
PRO
0
130
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
2
1.3k
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
740
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
790
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
120
AIが無かった頃の素敵な出会いの話
codmoninc
1
300
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
200
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
120
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
190
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Mind Mapping
helmedeiros
PRO
1
290
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Site-Speed That Sticks
csswizardry
13
1.4k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
500
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
41k
Bash Introduction
62gerente
615
220k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
390
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
270
GraphQLとの向き合い方2022年版
quramy
50
15k
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?