1. Spring and Java
>> Transactional Rollback Strategies with Spring Cloud Stream and Apache Kafka [spring.io]
Transactions in distributed systems are hard, but Spring has some tooling to help us with them.
>> Apache Kafka’s Exactly-Once Semantics in Spring Cloud Stream Kafka Applications [spring.io]
Kafka “broke” the rules of physics and enabled the exactly-once semantics – let’s see how to leverage it in Spring.
>> Support Markdown in javadoc Comments [inside.java]
The Java team is researching enabling Markdown inside Javadoc comments… the future is almost here 🙂
Also worth reading:
- >> Changes Included in the Stable release 23.08 of Azul Zulu Prime Builds of OpenJDK [foojay.io]
- >> The best way to use Spring Data JPA Stream methods [vladmihalcea.com]
- >> State of the Software Supply Chain Report: Key Takeaways for Java Developers [foojay.io]
- >> FEPCOS-J (2) – Declaratively compose networked systems in Java [foojay.io]
- >> Writing integration tests with GreenMail and Jsoup for Spring Boot applications that send Emails [tech.asimio.net]
- >> Python “magic” methods [blog.frankel.ch]
- >> Level-up your Java Debugging Skills with on-demand Debugging [foojay.io]
- >> The Files in JDK 21 [foojay.io]
Webinars and presentations:
- >> Teaching Old Streams New Tricks [inside.java]
- >> ArrayList vs. LinkedList – JEP Cafe #20 [inside.java]
- >> Where the JVM is Entering the Era of AI Performance Tuning! [inside.java]
- >> Java Language Architect Brian Goetz [spring.io]
- >> Project Leyden [inside.java]
- >> Java 21… and Beyond [inside.java]
- >> G1: Java’s Default Garabge Collector – Stack Walker #4 [inside.java]
- >> Runtime efficiency with Spring (today and tomorrow) [spring.io]
- >> Why JUnit’s Dynamic Tests ARE SO GOOD [marcobehler.com]
Time to upgrade:
- >> Spring Framework 6.0.13 available now as well as 6.1 RC1 [spring.io]
- >> Spring Data 2023.0.5, 2022.0.11, and 2021.2.17 released and 2023.1 goes RC1 [spring.io]
- >> Spring Cloud Dataflow 2.11.1 Released [spring.io]
- >> Quarkus 2.16.12.Final, 3.4.3 , and 3.5.0.CR1 Released [quarkus.io]
- >> JHipster v8.0.0-rc.1 Released [jhipster.tech]
- >> Eclipse Microprofile 6.1 Released [eclipse.org]
- >> Eclipse Vert.x 4.4.6 Released [eclipse.org]
- >> JJWT 0.12.3 Released [github.com/jwtk/jjwt]
- >> Elasticsearch 8.10.4 Released [elastic.co]
2. Technical & Musings
>> One does not simply deliver software [benjiweber.co.uk]
“Delivery” is not the best word to describe software production.
This should be viewed more as a process of exploration and learning, emphasizing the need for adaptability, experimentation, and continuous improvement rather than strict adherence to predetermined plans and routes.
>> Internal and external events, or how to design event-driven API [event-driven.io]
It’s crucial to differentiate between internal and external events to avoid issues such as leaking abstractions and coupling.
Also worth reading:
- >> Send Your Logs To Loki [foojay.io]
- >> Patterns For The Design Of Microservices – Part 1 [foojay.io]
- >> GraalVM Replaces the GraalVM Updater with Language Libraries [infoq.com]
- >> Introduction to Kotest [reflectoring.io]
- >> Book review: “Get Your Hands Dirty on Clean Architecture – Second Edition” [foojay.io]
- >> Engineering Team Lessons from Cycling [benjiweber.co.uk]
3. Pick of the Week
>> Strong static typing, a hill I’m willing to die on… [svix.com]