A free, once-weekly Scala news flash. Easy to unsubscribe. Goes out every Thursday.
July 30th, 2020, ISSUE 337


Thinking With Types

A short series of articles on how put types at the center of your design, applicable both if you're coming from Java or already know some Scala
Alvin Alexander (@alvinalexander)
IntelliJ Scala Plugin 2020.2 is released!

A lot of impressing improvements in the latest release of the Scala plugin!
Pavel Fatin (@pavelfatin)
Announcing Dotty 0.26.0-RC1

Dotty is following its regular release cycle. Time for unified extension methods!
Anatolii Kmetiuk (@AKmetyuk)
A Dive into Configuring Metals · Metals

Metals can behave just as you want it to - all you need is a bit of configuration!
Chris Kipp (@ckipp01)
Life with fatal warnings

On one hand, it seems reasonable to enable fatal warnings. On the other, they are a pain. Is there a middle ground?
Roman Timushev (@rtimush)
Cloudflare Workers Announces Broad Language Support

You can build applications on Cloudflare Workers using your favorite language starting today (compiling to ScalaJS!)
Cody Koeninger (@CodyKoeninger)


Background processing in functional Scala #1

The first episode in a series about background processing in functional Scala.
Jakub Kozłowski (@kubukoz)
Happy eyeballs live-coding using ZIO

A live-coding walk-through implementing a concurrent algorithm using ZIO
Adam Warski (@adamwarski)
Scala 3 - TF related improvements (mostly #implicits)

In this video we will see some improvements which will be introduced in the upcoming version of Scala (Scala 3 / Dotty v0.23.0). The topics presented here are focused on tagless final (TF) so the video is mostly about implicits and a couple of other features which help to reduce boilerplate.
DevInsideYou (@DevInsideYou)


Reimagining Functional Type Classes, July 30th, Scala San Francisco, Online Event

4:30 PM to 6:30 PM PDT. In this presentation, John A. De Goes introduces a new Scala library with a completely different factoring of functional type classes—one which throws literally everything away and starts from a clean slate.
Ziverge (@zivergetech)
Functional Scala Fundamentals, September 1st-3rd, Online Course

Discount applies with the code: SCALATIMES, this time 20% off!
Ziverge (@zivergetech)
Functional Scala, December 3th-4th, London

Learn the critical topics you need to excel as a Scala developer, and celebrate the Scala programming language and community.
Ziverge (@zivergetech)
African Scala Development Program

Jon Pretty and John de Goes are offering a series of free premium Scala training courses to developers based in the African continent. Ziverge is looking for more teachers that would like to join the initiative.
Ziverge (@zivergetech)


Akka Projections 1.0.0-RC1 Released

Akka provides great tools for implementing event sourcing; projections are an essential component of this approach!
Akka Team (@akkateam)
Ciris · Functional Configurations for Scala

Functional, lightweight, and composable configuration loading for Scala.
Viktor Lövgren (@vlovgr)
Command center

A CLI-based launcher and general productivity tool - written, of course, using Scala
reibitto (@reibitto)
Indigo: a game engine for programmers.

A game engine powered by ScalaJS, designed specifically with programmers in mind: focuses on developer productivity and ease of testing.
Purple Kingdom Games (@indigoengine)
Dotty version manager

As the name suggests: helps you manage which Dotty version is present on your $PATH, as well as quickly install latest
Daiki Ogawa (@d_ogxwx)


Scala Times banners?

Want one? Click here
Scala Times stickers?

Want one? Let us know or tweet @scalatimes.
Scala experts?

Need some? SoftwareMill is here, ready to talk and dive deep into your code.

  1. Scala Times Issue #361

    Scala 3: Dependent Types, Part II. Configuring and suppressing warnings in Scala. Threading best practices in Cats Effect. Scala 3 Metaprogramming by Example by Adam Warski. What the Functor?.

  2. Scala Times Issue #360

    Scala 3: Dependent Types, Part I. Publish Scala 2 and Scala 3 macros together. Concurrent state machines. Wire Signals - Yet Another Event Streams Library. Scala Love CFP.

  3. Scala Times Issue #359

    Implementing Type classes in Scala 3. Finite-State Machines + FS2 streams: A match made in heaven. Scala Compiler Options, Fatal Warnings and Linting Guide. ZLayers by example. Scala 3 type classes.

  4. Scala Times Issue #358

    VirtusLab’s Scala 3 cooperation update. Scala 3.0.0-M3: developer's preview before RC1. How to Use Thread.sleep Without Blocking on the JVM. New in Scala 3. Scala Love CFP.

  5. Scala Times Issue #357

    Join the Scala Discord Server!. Enforcing Semantic Versioning with sbt-strict-update. Kafka Cron using wix/greyhound. Scala Filesystem Operations (paths, move, copy, list, delete) . Metals 2020 Review.

  6. Scala Times Issue #356

    Scala 3 Developers' Survey. Tapir vs Endpoints4s. Opaque Type Aliases and Open Classes. Akka Platform Guide. Type classes with Scala 2.

  7. Scala Times Issue #355

    Scala 3 Developers' Survey. Four new features of Scala 2.13 releases that you probably missed. Scala 3: Path-Dependent Types, Dependent Methods and Functions. Message-based Parallelism with Actors. IntelliJ Scala Plugin 2020.3 Is Out!.

  8. Scala Times Issue #354

    Scala 3 Developers Survey. A case for akka-coordination lease. Monad transformers and cats  -  3 tips for beginners. Forward Compatibility for the Scala 3 Transition. Mirror, Mirror on the Wall, Who’s the Genericioust of Them All?.

  9. Scala Times Issue #353

    Scala 3 Developers Survey. Managing Database Migrations in Scala. One year with Akka 2.6. Best practice for natural Ordering. Event-driven railway network based on Pulsar.

  10. Scala Times Issue #352

    Domain-Driven Design with FP in Scala. Explicit term inference with Scala 3. Keep alive for JMS connections. Why You Should Learn Scala in 2020?. A step-by-step guide for debugging memory leaks in Spark Applications.

  11. Scala Times Issue #351

    Autorecovery for (JMS) Streams. ZIO-AWS with ZIO Query. Implementing Scala.js Support for Scala 3. Let’s Talk About the Scala 3 Indentation. Concurrency in Cats Effect 3.

  12. Scala Times Issue #350

    Designing tapir’s WebSockets support. BSP Support in sbt 1.4. Streaming With Probabilistic Data Structures: Why & How. Scala 3 Migration guide. ScalaZONE - Scala 3 Programming Language Courses.

  13. Scala Times Issue #349

    Generic IOApp alternative. Let's build a Scala mock library. How To Make Integration Tests Less Flaky. Option  - the null of our times. Top Link of September: Polynote, A better notebook for Scala.

  14. Scala Times Issue #348

    Java 15 through the eyes of a Scala programmer. Functional Design, October 20th - 22nd, Online training. Scale By the Bay, November 12th - 14th, online event. Functional Data Modeling, November 18th - 19th, Online training. ZIO Hackathon, November 20th-21st, online event.

  15. Scala Times Issue #347

    A short guide to Blocker. Using: Did they forget something?. The assignment operator is broken!. Attending a hackathon with Scala and Akka (Streams) on Microsoft Azure. Programming Scala, Third Edition.

  16. Scala Times Issue #346

    Getting Started with Knative in Scala. Tagless Final - Part 12 - delivery-http-http4s (The Big Rewrite). Programming in Scala for beginners - week 5: classes. Eyjafjallajökull Lecture 2019. Scala 3: Enums.

  17. Scala Times Issue #345

    Tour of Scala. Polynote, A better notebook for Scala. Single command Scala setup. Dotty becomes Scala 3. Functional Effects with ZIO.

  18. Scala Times Issue #344

    Can we build better?. Algebra and Parametricity. How to Deploy a Scala Application to AWS Lambda. 5 lessons learned from my continuing awesome journey with ZIO. Scala 3 - A community powered release.

  19. Scala Times Issue #343

    Underscores are Overloaded in Scala!. Scala, React, and SSR (part 2). Scala Africa Development Program Has Launched. Scala micro.sphere.it, September 15th. Essential Effects EU, September 14th-16th, Online Course.

  20. Scala Times Issue #342

    What’s coming up in sttp client 3?. FP in the City Virtual Conference, September 10th. Scala Castle, September 14th-17th. Scala micro.sphere.it, September 15th. Essential Effects EU, September 14th-16th, Online Course.

  21. Scala Times Issue #341

    Concurrency In Scala with Cats-Effect. Scala, React, and SSR (part 1). More Algebra of Algebraic Data Types. Akka HTTP 10.2 Release - Q/A with the Akka team. Type-Level Programming in Scala, Part 3.

  22. Scala Times Issue #340

    SoftwareMilling around OSS - Scala Love. More Intuition on Optics. Type-Level Programming in Scala, Part 2. An Introduction to Functional Design. VimtelliJ: All the best of Vim in IntelliJ.

  23. Scala Times Issue #339

    Scala Knowledge Bits Archives. Functional Effects with ZIO. Experiment with Loom. Auto publish sbt plugin from Travis CI. Scala String Interpolation.

  24. Scala Times Issue #338

    ZIO 1.0 Released. Retry Failing Tasks with Cats and Scala. An Intuition for Optics. Evoneering - Scala Bootcamp. How Does "20 seconds" Work in Scala?.

  25. Scala Times Issue #337

    Thinking With Types. IntelliJ Scala Plugin 2020.2 is released!. Announcing Dotty 0.26.0-RC1. A Dive into Configuring Metals · Metals. Life with fatal warnings.

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.