A free, once-weekly Scala news flash. Easy to unsubscribe. Goes out every Thursday.
February 24th, 2023, ISSUE 470


Kubernetes and the JVM

In conclusion, during this journey, we have learned that deploying Scala microservices in a Kubernetes cluster involves careful consideration of the JVM’s memory requirements.
Juan Pedro Moreno (@juanpedromoreno)
Exploring Scala CLI  -  the new scala runner

What is Scala CLI and what is it good for? What does this change mean for the Scala community? Or, as many everyday Scala users could probably ask — what even is the scala runner?
Piotr Chabelski
An incomplete guide to Scala 3 macros and Multi-stage programming

In this guide, I provide a more theoretical perspective compared to the official guide while covering less material. Although Scala 3 macros are no longer experimental, it's still a research area and thus under-documented.
eason du
Web Scraping with Scala

The article first explains how to scrape a static HTML page with Scala using jsoup and Scala Scraper. Then, it explains how to scrape a dynamic HTML website with Scala using Selenium.
Raul Estrada (@HerrRul)
Cross build anything with Bazel

This idea of cross building could be useful in Bazel, which allows the migration of some axis to take place in situ over a course of some time. For example you could start with Scala 2.12 in the monorepo, but gradually try to migrate to 2.13 such that most targets would build in both Scala 2.12 and Scala 2.13.
Eugene Yokota (@eed3si9n)


The Great Concurrency Smackdown

ZIO versus JDK
John A. De Goes (@jdegoes)
Pursuing Practical Refinement Types

This talk presents a refinement-type implementation based on ad hoc subtyping. Scala 3 language features enable great improvements in this area, and Michael analyzes the strengths and weaknesses of such a system. He also explores the advances in compile-time verification of static data, its limitations, and alternatives to achieve a similar level of confidence.
Michael Perucca


Exclusive Scalar offer for Scala Times subscribers

Exclusive for email subscribers: 10 discount tickets just released. Hurry and join Scalar with code: ScalaTimes10 for 10% off
SoftwareMill (@scalarconf)
Call For Proposals - ZIO World 2023

Submit your talk and join the lineup!
Ziverge (@zivergetech)
ZIO World, April 21st, Lisbon, Portugal (discount!)

The hybrid third edition of ZIO World showcases the power, performance, and productivity of ZIO 2 and its growing ecosystem. Use our exclusive link to get a 10% off for Scala Times readers!
Ziverge (@zivergetech)
Scala Days, June 4th-7th (Seattle, USA), Sept 11th - 12th (Madrid, Spain)

This year’s Scala Days marks the conference’s return since it was put on hold in 2020. This year we’re happy to host in Seattle, WA, in the US, and Madrid, Spain.
Scala Days (@scaladays)
10% discount for the Scala 3 Metaprogramming (ALL-NEW) course for our readers!

Use code SCALATIMES10off and enjoy the course!
John A. De Goes (@jdegoes)
10% discount for Functional Scala, Nov 30th - Dec 1st, London

Use code ScalaTimesFS2023 and get our exclusive discount!
Ziverge (@zivergetech)


scala-cli 0.2.0

A major update with many changes and fixes.
scala-cli contributors

  1. Scala Times Issue #475

    Actor implementation experiments with ZIO. Vote for Scala support in JetBrains Fleet IDE. 10+ Scala Concepts you Need to Know. Call For Proposals - ZIO WORLD 2023 . 10% discount for Functional Scala, Nov 30th - Dec 1st, London.

  2. Scala Times Issue #474

    RFC-1: sbt cache ideas. Functional Programming anti-patterns in Scala. Why use Scala for building backend applications?. Pragmatic DDD in Scala with ZIO. Call For Proposals - ZIO WORLD 2023 .

  3. Scala Times Issue #473

    Enum serialization in Scala. The official Scala programming language Mastodon account. Functional Programming is Based. Scala is Ready to Power the Future of Financial Services Today. VS Code Profile for Scala.

  4. Scala Times Issue #472

    Contribution Equals Impact. Scala Center's five-year impact report. ZIO Streaming Applications, Transformation, and Error Handling. Scala case class comparison using diffx. Proxy large messages via S3 with pass4s.

  5. Scala Times Issue #471

    A solid checklist for configuring new Scala projects. Coding Adventures with Party Parrot. Scala Center Is Accepted as a Mentor Organization for GSoC 2023!. Scala 3's New Compile-Time Features. Exclusive Scalar offer for Scala Times subscribers.

  6. Scala Times Issue #470

    Kubernetes and the JVM. Exploring Scala CLI  -  the new scala runner. An incomplete guide to Scala 3 macros and Multi-stage programming. Web Scraping with Scala. Cross build anything with Bazel.

  7. Scala Times Issue #469

    Performance tips for IntelliJ Scala Plugin. Introduction to Bazel for Scala developers. Gradle Inc. Acquires Triplequote to Expand Developer Productivity Solutions Footprint. Concise enumeration in Scala. Akka Streams - Working with Stage Actors.

  8. Scala Times Issue #468

    Prototype Loom-based concurrency API for Scala. Why Learn Contextual Abstractions in Scala 3 First. 10 years of Scala.js. ZIO From Scratch (Part 4). ZIO From Scratch (Final).

  9. Scala Times Issue #467

    Scala Center Roadmap for 2023 and Beyond. How to use a Rust lib inside the Scala app. Scalar 2023, March 23rd-24th, Warsaw, Poland.

  10. Scala Times Issue #466

    Pub/Sub with Scala. 6 Tips for Scala Adoption. Implicit parameters when to use them? Part 2. Call for Scala GSoC 2023 projects!. Scalar 2023, March 23rd-24th, Warsaw, Poland.

  11. Scala Times Issue #465

    Deploy http4s on your domain with fly.io. Early adventures in ZIO land. Implicit parameters when to use them? Part 1. Tour of Scala. Sttp4: improving the developer experience.

  12. Scala Times Issue #464

    Scala CLI Tutorial: Creating a CLI Sudoku Solver. Scalar 2023, March 23rd-24th, Warsaw, Poland. NEScala 2023 Call to Action.

  13. Scala Times Issue #463

    Universally Unique Sortable Identifier - ULID. Compile time validation using inline modifier in Scala 3. Thank you for taking part in Advent of Code 2022!. Nix Flake for Scala - a Nix Introduction, Overview and Demo. Scalar 2023, March 23rd-24th, Warsaw, Poland.

  14. Scala Times Issue #462

    Support Scala Center. Dancing with ZIO. Scalar 2023, March 23rd-24th, Warsaw, Poland. NEScala 2023 Call to Action. CFP: ScalaMatsuri (Online event, April 15th-16th 2023).

  15. Scala Times Issue #461

    Python and ZIO crushed my egotism. Fast Scala 3 parsing with tree-sitter. Scalar 2023, March 23rd-24th, Warsaw, Poland. NEScala 2023 Call to Action. CFP: ScalaMatsuri (Online event, April 15th-16th 2023).

  16. Scala Times Issue #460

    Fabric: A New JSON Library. Benchmarking Kafka vs Akka Brokerless Pub/Sub. Scala Developer Survey 2022 Results. State of Scala survey 2022. Integration testing using docker containers in Scala.

  17. Scala Times Issue #459

    IntelliJ Scala Plugin 2022.3. Scala Center Advent of Code. Use Typescript libraries with Scala.js! - ScalablyTyped. The fastest and safest JSON parser and serializer for Scala. Lichess on Scala 3.

  18. Scala Times Issue #458

    Grenoble Scala User Group (France). Getting started with Scala.js, Laminar and ScalablyTyped. Finagle Tutorial: Twitter's Scala RPC Library. Scalar 2023, March 23rd-24th, Warsaw, Poland. NEScala 2023 Call to Action.

  19. Scala Times Issue #457

    Native Config Lands in ZIO 2.0 . Automatic parallelisation of for-comprehensions in Scala 3. The Journey of a Dotty Diagnostic. The Magic of Lazy Lists. Scala 3: the missing compiler plugin.

  20. Scala Times Issue #456

    Scala Toolkit makes Scala powerful straight out of the box. Scala 3 migration: 7 benefits that outweigh the risks. Google Summer of Code 2022: How It Was. Things that are things, but not other things. Function reuse is just wishful thinking.

  21. Scala Times Issue #455

    Integrating Java APIs with Cats Effect. Speed up ZIOs with memoization. Archive your toots to Hugo. Software Engineering Radio: on Scala and Tapir . Top 10 Skills to Learn to Be a Scala Developer.

  22. Scala Times Issue #454

    I ❤️ Scala's Community. Immutable Collections should be Your Default. Data Transformations in Scala with Gallia: Version 0.4.0 Is Out. Quine 1.4.0: Scale, Stability, Supernode Mitigation. Functional Scala 2022, December 1st-2nd, London.

  23. Scala Times Issue #453

    Scala for Game Server Development. Pekko accepted into the Apache Incubator. On Scala 3's Optional Braces. ZIO HTTP Tutorial, Part 2 - Security, CORS, CSRF, Authentication, Websockets. Where to find a Remote Scala Job?.

  24. Scala Times Issue #452

    The case against Effect Systems (e.g., the IO data type). Cut the Technobabble. Build Web Apps with ZIO 2.0, October 17th-19th. ZIO Hackathon, October 27th-28th, New York, USA & Online. Functional Scala 2022, December 1st-2nd, London.

  25. Scala Times Issue #451

    Support for XML request responses in sttp and tapir. Scala Center Activity Report for 2022 Q3. SBT in Scala (part 3). ZIO API Design Techniques. Migrating From Akka to ZIO Panel Discussion.

Organizing an event?
Promote it with
Scala Times.
The Scala Times reader?
Get a banner!
Got a tip?Send it in!
Follow us onTwitter.
Curated bySoftwareMill.
We arehiring.
Andtaking on projects.