A free, once-weekly Scala news flash. Easy to unsubscribe. Goes out every Thursday.
May 11th, 2023, ISSUE 481

READING

Scala Space

Where Scala meets the industry.
VirtusLab and SoftwareMill
Scala and Kotlin Under One Roof

In one of our latest open-source projects, we’ve combined Kotlin and Scala code under a single Gradle project. This post describes some of the bumps we found along the way and what we learned to solve them.
Alejandro Serrano Mena (@trupill)
About current debates about shrinking the Scala user base and the slow adoption of Scala 3

The issue is that most Scala web backend projects use a Future-based stack.
Ruslan Shevchenko (@rssh1)
Another two cents about the current situation with the Scala user base and economics

A Reddit discussion thread about The Current Thing.
A Twitter thread about the current Scala situation

One more discussion regarding the situation mentioned in links above.
Intermediate's guide to derivations in Scala: Magnolia

In the previous post about Scala derivation I’ve explained the idea of derivation and showed how we can benefit from it by using library-provided derivations. This time let’s dig deeper and implement our own derviation with Magnolia.
Michał Pawlik
Replacing sbt with scala-cli in a simple project

This is a somewhat controversial post because we got to use scala-cli outside its purpose, as a build-tool for a multi-module project.
Alexis Hernandez (@alexitcdev)

VIDEOS

Scala Server Security with Http4s: CORS and CSRF

This video shows you how to configure an Http4s Scala server for security against cross-origin requests (CORS) and request forgery (CSRF).
Daniel Ciocîrlan (@rockthejvm)

EVENTS

Art of Scala, May 25th, Warsaw

It's a response to the Scala engineers’ needs for professional development and allows attendees to meet with peers for knowledge exchange purposes—a conference organized by engineers for engineers.
Art of Scala
Functional Design with Scala 3, May 29th-30th

Use our link for 15% discount for Scala Times readers!
John A. De Goes (@jdegoes)
Why you should join us at Scala Days Seattle, June 5th - 7th

At Scala Days, you can explore the latest technology updates, interact with companies who use and help to improve Scala, learn new skills from some of the best Scala practitioners, and meet other enthusiastic Scala developers.
Xebia (@Xebia)
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)
Zymposium - ZIO HTTP: RC1 and Beyond, May 12th

Join the meetup at 2 PM BST.
Ziverge (@zivergetech)

RELEASES

sbt 1.9.0-RC2

POM consistency of sbt plugin publishing, sbt new - a text-based adventure, releaseNotesURL setting, and deprecation of IntegrationTest configuration.
Eugene Yokota (@eed3si9n)
Caliban 2.2.0

This release brings a few important changes, including a refactor of request interceptors, support for the @defer directive and support for Scala Native in caliban-client rocket
Caliban contributors
muse

A place for music lovers to create interactive and collaborative reviews for music on Spotify.
Nico Burniske (@nburniske)
tokenizers-scala

Scala bindings for Hugging Face Tokenizers.
Sören Brunk (@soebrunk)





  1. 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!.


  2. 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.


  3. 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.


  4. 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.


  5. 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.


  6. 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 .


  7. 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.


  8. 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.


  9. 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.


  10. 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.


  11. 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 .


  12. 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.


  13. 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.


  14. 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.


  15. 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.


  16. 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.


  17. 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).


  18. 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.


  19. 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.


  20. 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.


  21. Scala Times Issue #464

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


  22. 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.


  23. 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).


  24. 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).


  25. 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.


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.