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
How Scala is made
Search
Grzegorz Kossakowski
March 18, 2015
Programming
3
970
How Scala is made
Scala Days SF 2015 presentation on how we think of Scala as a product.
Grzegorz Kossakowski
March 18, 2015
Tweet
Share
Other Decks in Programming
See All in Programming
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
180
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
540
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
560
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.6k
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
400
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
16
3.1k
CSC307 Lecture 15
javiergs
PRO
0
240
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1k
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
560
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
290
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
370
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
140
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
55
8k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
BBQ
matthewcrist
89
10k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
150
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
390
How to make the Groovebox
asonas
2
2k
Fireside Chat
paigeccino
42
3.8k
Faster Mobile Websites
deanohume
310
31k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
130
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
ラッコキーワード サービス紹介資料
rakko
1
2.6M
Transcript
How Scala is made Grzegorz Kossakowski Typesafe @gkossakowski
Plan • why do we make Scala • how do
we go about new features • what practices and tools • who is making Scala
Impact
Popularity Novelty Small impact
Popularity Novelty Medium impact
Popularity Novelty Large impact
Popularity Novelty Stability Large impact
Stability understand loss aversion
Features & stability
Dumb down?
Making a feature • 12 months are needed to develop
a new feature • feedback from existing projects is essential • good design is best achieved after couple of failed iterations
Releasing a feature Segment your audience. Make a feature an
opt-in.
Feature flags Feature Flag Bytecode emitter -Ybackend Lambda translation -Ydelambdafy
Functional interfaces -Xexperimental New optimizer -Yopt Lambda bytecode -target Classpath handling -YclasspathImpl
Tools are top priority http://algeri-wong.com/yishan/engineering-management- tools-are-top-priority.html
Scala ♥ GitHub
Shorten the feedback loop
Make change validation impersonal
Pull request validation
Dbuild: testing at large scale 1.5 million lines of Scala
compiled every night 80+ community projects covered
Community build https://github.com/scala/community-builds
Bugs caught • Tricky (new) optimizer bugs that led to
incorrect behaviour at runtime (#4312) • Edge cases in translation to Java 8-style lambdas • Tuple optimization in pattern matcher (#4376)
Reactive infrastructure
Reactive infrastructure
Resilient infrastructure Recovers cheaply & happily.
Resilient infrastructure • Infrastructure as Code (IaC) • Fully automated
• Easy to manage • Easy to track changes
Crowd behind Scala
Crowd behind Scala 49% 43% 8% Community EPFL Typesafe Commits
to 2.10
Crowd behind Scala 55% 23% 22% Community EPFL Typesafe Commits
to 2.11 Almost 3x! More time for research
Crowd behind Scala 5 4 33 Community EPFL Typesafe 2.10
team size Almost 3x! More time for research Members submit 90% of all commits
Crowd behind Scala 5 4 47 Community EPFL Typesafe 2.11
team size +42% Members submit 90% of all commits
Crowd behind Scala commits 2.10 commits 2.11 team (90%) 2.10
team (90%) 2.11 everyone 2.10 everyone 2.11 community 8% 22% 33 47 69 104 epfl 43% 23% 4 4 19 13 typesafe 49% 54% 5 5 22 22 all 4495 2582 42 56 110 139
Recap • Making Scala is about impact • Stability &
novelty • Tools are top priority • We’re proud that Scala is becoming increasingly open
Thank you! \_(ツ)_/¯ @gkossakowski