3 min read
What Can You Do With Scala?
Knowing what Scala is used for makes it easier to stay motivated while learning the basics:
- Big data processing — Spark jobs that clean, join, and aggregate terabytes of data across a cluster.
- Streaming — real-time pipelines with Kafka Streams, Flink, or fs2.
- Web APIs and microservices — with http4s, Tapir, ZIO HTTP, or the Play Framework.
- Distributed systems — actor-based systems with Apache Pekko (the open-source continuation of Akka).
- Compilers and tools — Scala's pattern matching and algebraic data types make it a favorite for parsers, interpreters, and code analysis.
- Front-end code — Scala.js compiles to JavaScript, sharing models between browser and server.
- Command-line tools and scripts — Scala CLI runs single files directly, and Scala Native produces fast-starting executables.
You'll build smaller versions of several of these in the project lessons at the end of each level.