Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
How Scala is made
Search
Grzegorz Kossakowski
March 18, 2015
Programming
980
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How Scala is made
Scala Days SF 2015 presentation on how we think of Scala as a product.
Grzegorz Kossakowski
March 18, 2015
Other Decks in Programming
See All in Programming
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
220
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
150
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
150
一人だけ、Kiroが静止する日
hideg
0
130
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
390
Workers Cache を知る
syumai
0
250
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
820
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.2k
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.9k
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
130
Webの地図
yosuke_furukawa
PRO
6
4.7k
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
930
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Darren the Foodie - Storyboard
khoart
PRO
4
3.9k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
720
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
550
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Making the Leap to Tech Lead
cromwellryan
135
10k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
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