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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Christian Papauschek
October 28, 2014
Programming
260
1
Share
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
JavaDoc 再入門
nagise
0
240
Moments When Things Go Wrong
aurimas
3
140
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.8k
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
380
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
11k
AIとRubyの静的型付け
ukin0k0
0
500
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
130
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
120
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
410
Inspired By RubyKaigi (EN)
atzzcokek
0
490
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.5k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Google's AI Overviews - The New Search
badams
0
1k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
The Curse of the Amulet
leimatthew05
1
13k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
760
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
850
Practical Orchestrator
shlominoach
191
11k
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?