Scala

Share:

These questions were only shown to the developers who chose Scala as one of their three primary programming languages.

Which versions of Scala do you regularly use?

28%

10%

Scala 3

56%

61%

2.13

39%

50%

2.12

14%

22%

2.11

3%

3%

2.10 or older

2%

2%

I'm not sure

A year ago, a new major version of Scala – Scala 3 – saw the light of day. Since then, migration from Scala 2 has been going at a slow but steady pace. This year, Scala 3 is used by 28% of users compared to 10% a year ago. Scala 2.13 remains the most popular version (56%), while usage of older versions of Scala is on the decline.

What are your compilation targets?

98%

JVM

12%

scala.js

9%

scala-native

1%

Android

Which unit-testing frameworks do you regularly use?

74%

ScalaTest

23%

JUnit

17%

ScalaMock

13%

ScalaCheck

10%

MUnit

9%

specs2

7%

ZIO Test

Which frameworks / libraries do you regularly use for web-development?

35%

Akka-http

25%

Play

19%

http4s

19%

Spring

11%

Spark Java

10%

Netty

10%

sttp

Which frameworks / libraries do you regularly use?

40%

Akka

36%

Spark

30%

Cats

14%

Slick

14%

ZIO

12%

FS2

10%

Shapeless

9%

Scalaz

8%

Monix

What editors / IDEs do you use most for Scala?

82%

IntelliJ IDEA

14%

Visual Studio Code

1%

Visual Studio

1%

Vim

1%

Emacs

2%

Other

Despite all the measures we’ve taken to secure a representative pool of respondents, the results may be slightly shifted towards users of JetBrains products, as they are more likely to take the survey.

Which build systems do you regularly use?

78%

sbt

34%

Maven

21%

Gradle

9%

Bloop

3%

Mill

2%

Ant

1%

Bazel

2%

Other

2%

None

Which interactive Scala environments do you regularly use?

47%

sbt console

37%

Scala REPL

34%

IntelliJ IDEA Worksheet

12%

Jupyter Notebook

10%

Ammonite REPL

9%

Scastie

8%

Scala IDE Worksheet

6%

Apache Zeppelin Notebook

5%

Other

10%

None

Which compiler plugins do you regularly use for Scala?

13%

Kind Projector

10%

Scalamacros/Scalameta Paradise

2%

Miniboxing

2%

Other

76%

None

What other tools do you use for Scala?

52%

Scalafmt

22%

Scalafix

21%

Scoverage

13%

Scalastyle

11%

Wart Remover

3%

Scapegoat

1%

Other

40%

None

What types of software do you develop with Scala?

27%

Libraries / Frameworks

24%

Business Intelligence / Data Science / Machine Learning

22%

Websites

20%

Database / Data Storage

17%

System Software

17%

Utilities (small apps for small tasks)

16%

Finance

On average, Scala developers are slightly older and have a few more years of experience than the average developer. They are involved in a more diverse set of activities including code reviewing, system design, testing, infrastructure development, and working with data.

Could you tell us your age range?

3%

10%

18–20

41%

44%

21–29

33%

28%

30–39

17%

12%

40–49

5%

4%

50–59

1%

2%

60 or older

How many years of professional coding experience do you have?

2%

9%

Less than 1 year

7%

17%

1–2 years

28%

25%

3–5 years

24%

19%

6–10 years

17%

11%

11–16 years

21%

13%

16+ years

2%

6%

I don't have any professional coding experience

In which kinds of activities are you involved?

95%

92%

Coding / Programming

73%

53%

Code Reviewing

66%

38%

System Design

63%

43%

Testing

43%

35%

Deployment

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues.

If you have any questions or suggestions, please contact us at surveys@jetbrains.com.