Arguably the best resource for learning how to structure production-grade applications with Cats Effect and Fs2 is now completely free! π Huge contribution to the community by Gabriel Volpe π #Scala
This feature in Scala 3.8 is so experimental that it doesn't even have a SIP yet! π I hope I don't need to explain the code, but be warned: exhaustivity checking is currently broken for this π #Scala
Next on the list of Scala 3.8 experimental features: Flexible Varargs. Until now, passing multiple collections to a varargs method required manual concatenation. With this change, you can mix multiple splices and single arguments freely β¨#scala
How to access method default parameters via macro? π§
Pretty niche topic, but after reading you will learn:
β How some JVM internals work
β What the Selectable trait is
β About the transparent keyword
I've started working on a project in Go - who would have expected that? π€· I'm treating it as a personal challenge. Sometimes you have to lose something to understand its value. #golang #scala
Scala 3.8 will bring several experimental features. One of them is the relaxed lambda syntax, where you don't need to put a newline after the colon. Haters of the braceless syntax will hate it even more! π #scala
Hey, Java devs! If you're on JDK 17+, it's time to start using Sealed Classes to eliminate invalid states. On JDK 21+, combine them with Pattern Matching for a truly powerful result. The difference in conciseness and safety is incredible! π #java
This is a follow-up to the previous article about builder type gymnastics. This time, all the boilerplate code is hidden behind the macro. Sadly, under the Scala 2 macro π #scala
The SBT plugin absolutely no one asked for... but I built it anyway. π€·ββοΈ You can now use HOCON files for your build configuration. Itβs surprisingly clean. Iβd love to hear your opinions π #scala
Apache Spark 4.1 is officially here and it's a massive release! π₯
1οΈβ£ TIME WITH TIME ZONE: finally, proper timezone support! π
2οΈβ£ WITH RECURSIVE: native support for recursive CTEs in SQL. π
3οΈβ£ Real-Time Mode: sub-second latency (<300ms) for streaming. β‘
4οΈβ£ Declarative Pipelines: define ETL state, let Spark handle the execution. ποΈ
5οΈβ£ Pythonization: native Python data sources, remapped JVM exceptions etc. π
Did you know thereβs a Functional Programming course you can download right into IntelliJ? It includes 8 lessons and 40 challenges on everything from Immutability to Monads. π§ #scala
Another year of new habits and milestones. Here are the highlights that stand out:
1οΈβ£ Started a new chapter working for SiriusXM π»
2οΈβ£ Continued sharing my passion for tech, (re)posting over 400 articles, videos and tips π‘
3οΈβ£ Switched to an electric vehicle β‘
4οΈβ£ Started with cold showers - the positive impact is huge! πΏ
5οΈβ£ Unlocked a core memory: witnessing my son truly experience the sea for the first time ππΆ
6οΈβ£ Read 10 books, switching completely to English even for novels π
7οΈβ£ Walked and hiked a total of 970 km, including a 52.5 km in a single activity π₯Ύβ°οΈ
8οΈβ£ Completed 41 strength training sessions, 43 climbing sessions and 24 runs ποΈββοΈπ§π
9οΈβ£ Didn't make much progress on the accordion πͺ
Another effect system? π I usually avoid sharing these because I hate fragmentation and this one is still experimental. However, Ξ»ΓS deserves a look. It implements a unique direct style approach, and the progress is impressive. π (Also, there is a cats-effect integration!) #scala
Super important video on how the CPU actually handles threads and memory access, and why it matters for your app's performance. Watch this to see how cats-effect outperforms standard Spring architecture π #scala #java
In Czech, Chanterelle π is called "the fox". π¦ In Scala 3, it means easy named tuple manipulation. A handy utility library from the author of ducktape. #scala