A Java Geek weekly 47

Spring Modulith: have we reached modularity maturity?

One of the main reasons to design microservices is that they enforce strong module boundaries. However, the cons of microservices are so huge that it’s like chopping off your right hand to learn to write with the left one; there are more manageable (and less painful!) ways to achieve the same result.

Even since the microservices craze started, some cooler heads have prevailed. In particular, Oliver Drotbohm, a developer on the Spring framework, has been a long-time proponent of the moduliths alternative. The idea is to keep a monolith but design it around modules.

DuckDB Tricks – Part 1

Interesting bag of tricks.

The History and Evolution of Open Table Formats - Part I

A long and detailed look at the Hive storage format. I must admit I’m a total stranger in this area so I learned a lot.

Go wild: Wildcard support in Rules and a new open-source wildcard crate

I’m a simple person. I like and use Cloudflare. I like and use Rust. I like when Cloudflare develop new Rust libraries.

ON CONFLICT Clause for Hibernate Insert Queries

I’m far from an Hibernate expert, and I didn’t touch it for a couple of years already. I’m happy to see it evolving, by adding features that are useful to developers.

Back to the Roots: Let’s Talk About Leyden, Loom, and Valhalla
  1. What’s New in Project Leyden
  2. What’s New in Virtual Threads
  3. What’s New in Project Valhalla

    TIL: Jox:

    Modern concurrency for Java 21+ (backed by virtual threads, see Project Loom). Includes:

    • Fast and Scalable Channels in Java. Inspired by the "Fast and Scalable Channels in Kotlin Coroutines" paper, and the Kotlin implementation.
    • Programmer-friendly structured concurrency
    • Blocking, synchronous, functional streaming operators
    GitHub
Why Cutting Costs is Expensive: How $9/Hour Software Engineers Cost Boeing Billions

A good lesson for managers who are regularly told by their engineering teams that the requirements are too wide or the timeline too short. They are (probably) right and you should listen to them!

Terrible Ideas in Kubernetes

A talk by the famous Corey Quinn! It starts very well:

Once upon a time, before a douchebag bought it, there was a website called Twitter

INFO: There’s an audio issue at 44:35 and it’s fixed at 48:35.

Functional (SAM) interface

I write all my JVM code in Kotlin since years, and I didn’t ever use the SAM interface. Is it because it’s relatively new? Or because my design is not production-grade and I don’t need this level of refinement?

Why Coroutines are Actually No Magic in Kotlin

Extremely interesting video. I definitely need to rewatch the code demo again.

The definitive guide to error handling in Rust

Deep-dive post - unfortunately only the first part.

I wrote previously about error handling in Rust as well from a more newbie perspective.

The failed promise of Domain-Driven Design - part 1

I never bought into DDD, but the post raises very good points in any case.

Nicolas Fränkel

Nicolas Fränkel

Developer Advocate with 15+ years experience consulting for many different customers, in a wide range of contexts (such as telecoms, banking, insurances, large retail and public sector). Usually working on Java/Java EE and Spring technologies, but with focused interests like Rich Internet Applications, Testing, CI/CD and DevOps. Also double as a trainer and triples as a book author.

Read More
A Java Geek weekly 47
Share this