A free, once-weekly Scala news flash. Easy to unsubscribe. Goes out every Thursday.
April 20th, 2023, ISSUE 478

READING

Concurrency with Cats Effect

Learn how to deal with Fibers, timeouts, structured concurrency with Supervisor, and how to leverage operators like race, racePair, both, and delayBy.
Krzysztof Atłasik (@_katlasik_)
Using Vulcan Codecs with Kafka Java APIs

Vulcan is a functional Avro encoding library that uses the official Apache Avro library under the hood. The difference between this and the official Avro build plugins approach is that the types are defined in plain Scala.
César Enrique
Scala Center Activity Report for 2023 Q1

A detailed summary of all the developments around the compiler, tools, documentation, and community.
Scala Center (@scala_lang)
Are you sure your Scala 3 opaque types don’t instantiate?

An update to an investigation of value classes in Scala 2, now looking into the runtime efficiency of their replacement, Scala 3 Opaque Type Aliases.
Mikołaj Koziarkiewicz (@mikolak_net)
Underrated Scala Features and Hidden Gems in the Standard Library

Learn about scala.util.Using, PartialFunctions, scala.util.chaining, Function types, Implicits & term inference, Local functions, Type aliases, as well as lazy vals & by name parameters.
Anzori Ghurtchumelia
Making of a hybrid ScalaMatsuri

Learn interesting facts about how this untypical edition of Scala Matsuri got organized.
Eugene Yokota (@eed3si9n)
Integrating Akka with Cats-Effect 3

We are using a combination of Akka and Cats-Effect (ver. 3) for building payment processors. Integrating them isn’t without challenges. This post describes some solutions we’ve discovered.
Alexandru Nedelcu (@alexelcu)
Dropped: Package Objects

Package objects are no longer needed since all kinds of definitions can now be written at the top-level.
Faster Scala.js development with front-end tooling and new tutorials

In this post, we introduce vite-plugin-scalajs, a new plugin that can reduce your Scala.js turnaround time from 10 seconds to under one.
Sébastien Doeraene (@sjrdoeraene)

VIDEOS

The Secret VS Code Hack for Indentation Guides!

It was harder than necessary to set up indentation guides in VS Code exactly how I wanted, but I found a way and it's not the intentional one! This video is especially useful for Scala 3.3.x that is about to come out.
DevInsideYou (@DevInsideYou)
Scalar Conference 2023 talks

All talks from the conference are now available!
SoftwareMill (@scalarconf)
Understanding FP: Overcoming Intuition and Ease Hurdles

Some people state that the FP way of doing things is easier, while others say it’s more complicated and isn’t even worth it. Let’s explore this.
Yevhenii Zelenskyi (@impurepics)

EVENTS

Call For Proposals - ZIO WORLD 2023

Add your talk here.
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)
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!
Ziverge (@zivergetech)
10% discount for LambdaConf, Sept 16th-19th, Boulder, Colorado

LambdaConf returns in its first edition after the pandemic, reimagined as a multi-disciplinary developer conference featuring thought-provoking, entertaining, and mind-blowing talks and workshops that will forever change the way you write software.
Ziverge (@zivergetech)
Call For Proposals - LambdaConf 2023

Send your talk and join LambdaConf!
Ziverge (@zivergetech)
Call for Volunteers - Lambda Conf 2023

Become part of the team!
Ziverge (@zivergetech)
10% discount for Functional Scala, Nov 30th - Dec 1st, London

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

RELEASES

zio-dynamodb 0.2.9

Simple, type-safe, and efficient access to DynamoDB.
Avinder Bahra





  1. Scala Times Issue #500

    IntelliJScala @ Scala Days 2023 Madrid. OOP classes vs Higher-order Functions (HOFs). Work-in-Progress Scala 3 Specification. 10% discount for Functional Scala, Nov 30th - Dec 1st, London. LambdaConf 2024, May 4th-10th, Estes Park, Colorado.


  2. Scala Times Issue #499

    State of Scala 2023 by ScalaCenter and VirtusLab. JDK 21 LTS - All Features Explained!. The Scala Center Fundraising Campaign. So, What's So Special About The Mill Scala Build Tool?. Kyo: Toolkit for Scala Development.


  3. Scala Times Issue #498

    Generating a Rust client library for ZIO Http endpoints. Why Scala Dominates Data Engineering. CFP: NEScala 2023. London Scala Talks, Sept 20th. 10% discount for Functional Scala, Nov 30th - Dec 1st, London.


  4. Scala Times Issue #497

    Compare Task Processing Approaches in Scala. Temporal Workflows with ZIO: Introduction. REST APIs Using Play Framework and Scala: A Comprehensive Guide. Automating Data Transformations with ducktape. CFP: NEScala 2023.


  5. Scala Times Issue #496

    Lightbend transfers ownership of sbt to the Scala Center. Type safety with Iron. Scala Days Madrid, Sept 11th-12th. Performance Optimization on the JVM, Sept 11th-15th, Online. London Scala Talks, Sept 20th.


  6. Scala Times Issue #495

    Slack Bot in Scala and 12 Ways to Run It. Cost of boxing. Diving into ZIO Test 'Aspects'. Contribution Equals Impact. Do your Values align with FP Values?.


  7. Scala Times Issue #494

    Cats Effect vs ZIO. Principles of developing applications in Scala. The Scala Week in Madrid. Scala Days Madrid, Sept 11th-12th. Performance Optimization on the JVM, Sept 11th-15th, Online.


  8. Scala Times Issue #493

    Native app development with sttp and Scala Toolkit. ZIO Kafka with Jules & Erik. ScalaWAW #30, Aug 17th, Warsaw. Scala Days Madrid, Sept 11th-12th. Performance Optimization on the JVM, Sept 11th-15th, Online.


  9. Scala Times Issue #492

    Go-like channels in Scala: receive, send, and default clauses. IntelliJ Scala Plugin 2023.2 Is Out!. Scala Days Madrid, Sept 11th-12th. Performance Optimization on the JVM, Sept 11th-15th, Online. 10% discount for Functional Scala, Nov 30th - Dec 1st, London.


  10. Scala Times Issue #491

    Scala Websites Improvements. Signature polymorphic methods in Scala. Scala Center Roadmap for 2023 Q3. Zymposium - ZIO Maelstrom. Zymposium - Partial Functions & Future ZIO HTTP Features.


  11. Scala Times Issue #490

    How to implement streaming microservices with ZIO 2 and Kafka. Automation tools for Scala development. Introduction to optics in Scala. Comprehensive Data Validation in Scala. ZIO 2 Runtime Improvements .


  12. Scala Times Issue #489

    6 Common Misconceptions Around Akka-HTTP / Pekko-HTTP. "No More Orphans" in Practice. Interesting patterns to consume ZIO Streams. Why I keep choosing ZIO!. Breaking framework chains with vanilla Scala.


  13. Scala Times Issue #488

    Two types of futures. Chatbot Showdown: Typelevel Scala Edition. An intro to Flow Fields in Scala. Mastering ScalaTest - Exploring Tagging, Retry, Runner and More. Top Scala open source projects and contributors.


  14. Scala Times Issue #487

    5 Scala Libraries That Will Make Your Life Easier. Post-Conference Notes on Scala Days 2023 Seattle. Dependency Injection with Cats-effect Resource Monad. Developer Ecosystem Survey 2023. ScalaWAW #28, June 28th, Warsaw.


  15. Scala Times Issue #486

    Getting started with ZIO, part 1. Introducing ZIO Flow. The Business of the Scala Programming Language. ScalaWAW #28, June 28th, Warsaw. 10% discount for LambdaConf, Sept 16th-19th, Estes Park, Colorado.


  16. Scala Times Issue #485

    Functional Declarative Design. How to use Large Language Models for Scala documentation. Scala 3 Significant Indentation Woes: Sample. Iron updates: turning opaque types into value objects. Why we used Quill in RealWorld project?.


  17. Scala Times Issue #484

    Google Summer of Code 2023 Timeline. Scala 3 Enums. On the road to Scala 3. Encoding Base58: Understanding and implementing in Scala. Teach Your Web API To Speak Loud And Clear CLI!.


  18. Scala Times Issue #483

    A Splendid Scala Journey. From spring boot to ZIO. Two More Old Cents on Scala 3 Migration. Functional Design with Scala 3, May 29th-30th. 10% discount for LambdaConf, Sept 16th-19th, Boulder, Colorado.


  19. Scala Times Issue #482

    The Scala 3 compatibility story. The RedMonk Programming Language Rankings: January 2023. Akka: Enabling the Cloud to Edge Continuum. Writing a GitHub Action with Scala.js. Chain of responsability with Scala partial functions.


  20. Scala Times Issue #481

    Scala and Kotlin Under One Roof. Intermediate's guide to derivations in Scala: Magnolia. Replacing sbt with scala-cli in a simple project. Scala Server Security with Http4s: CORS and CSRF. Art of Scala, May 25th, Warsaw.


  21. Scala Times Issue #480

    More than just HelloWorld.json in sttp & upickle. Single-File JVM Apps: Rapid Development. Single-File JVM Apps Pt. 2: AWS Lambda Simplified. Mastering SBT: Tips and Tricks for Using Not-So-Common Features. Accumulate errors in Scala with typelevel cats.


  22. Scala Times Issue #479

    Kotlin Coroutines to Cats-Effect. Build your vocabulary with Scala affixes. Scala.js Interoperability with TypeScript/JavaScript. Introduction to Scala Development using VS Code. Call For Proposals - ZIO WORLD 2023 .


  23. Scala Times Issue #478

    Concurrency with Cats Effect. Using Vulcan Codecs with Kafka Java APIs. Scala Center Activity Report for 2023 Q1. Are you sure your Scala 3 opaque types don’t instantiate?. Underrated Scala Features and Hidden Gems in the Standard Library.


  24. Scala Times Issue #477

    Good practices for schema evolution with Protobuf using ScalaPB and fs2grpc. New Scala Build Tool. March 2023 - Scala Tooling Summit. Conferences are BACK! (Scalar Conf 2023 recap). Direct Style Scala.


  25. Scala Times Issue #476

    ZIO SQL: Type-safe SQL for ZIO applications. Go-like channels using project Loom and Scala. Functional Error Handling in Scala. Top 10 pattern matching tips in Scala. Programming in Scala: Carbon Footprint.


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.