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
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
13k
The Niche of CDK Grant オブジェクトって何者?/the-niche-of-cdk-what-isgrant-object
hassaku63
1
610
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
180
NEWT Backend Evolution
xpromx
1
140
CDK引数設計道場100本ノック
badmintoncryer
2
480
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
11
1.3k
型で語るカタ
irof
0
700
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
500
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1.1k
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
390
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
15k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1031
460k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Being A Developer After 40
akosma
90
590k
Making Projects Easy
brettharned
116
6.3k
Writing Fast Ruby
sferik
628
62k
A better future with KSS
kneath
238
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
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