[MM’s] Engineering Weekly #34 — Layers, Lifecycles and Smarter Systems
A week of APIs, JVM evolution, Spring releases and sharper engineering habits.

🎯 Featured Article
🧅 Why Good APIs Are Like Ogres
Good APIs balance a friendly surface with layered internal capabilities. This piece explains why layering improves usability, maintainability, and long-term API ergonomics.
⬢ Advocates intuitive entry points backed by deeper power
⬢ Shows how hiding complexity enables cleaner mental models
⏩ TL;DR (Quick Recap)
⬢ Layer APIs for clarity and ergonomics
⬢ Track major JVM updates: Vector API, AOT caching and JDK 26 progress
⬢ Explore Spring Boot 4 RC updates and Spring Framework 7 GA
⬢ Learn practical patterns from Kotlin agents and structured concurrency
☕ JVM Corner
🔥 OpenJDK News Roundup: Vector API, AOT Caching & Final Means Final
A dense update featuring multiple JEPs promoted to Targeted for JDK 26 and confirmation of the release schedule.
⬢ Summarizes ecosystem momentum around JDK 26
📦 Java Annotated Monthly — November 2025
A curated roundup of practical Java insights, tutorials, and ecosystem news.
⬢ Covers trends shaping the JVM landscape
🧵 Structured Concurrency in Action
A hands-on exploration of Structured Concurrency’s fifth preview in Java 25.
⬢ Shows how concurrency scopes improve task lifecycle management
⬢ Demonstrates patterns likely to stabilize soon
🛑 End of Life: Changes to Eclipse Jetty and CometD
Jetty 9–11 and CometD 5–7 reach end of life with no further public releases.
⬢ No future artifacts will be published to Maven Central
⬢ Encourages migration to maintained versions
🤖 Building AI Agents in Kotlin — Part 1
An introduction to Kotlin-based LLM agents capable of autonomously executing developer-defined tasks.
⬢ Breaks down agent loops and function-calling patterns
⬢ Provides minimal, practical examples
🍃 Spring Updates
🌱 Spring Boot 4.0.0-RC2 Available Now
The latest release candidate brings modular tracing, renewed Jersey support, and final stabilizing fixes.
⬢ Final refinements before the GA release
🧠 LLM Response Evaluation with Spring AI
Spring AI introduces recursive advisors to enable LLM-as-a-Judge response evaluation.
⬢ Supports scalable, cost-effective evaluation pipelines
🛡️ Null-Safe Applications with Spring Boot 4
JSpecify delivers a standardized nullability contract for Spring Boot 4 APIs.
⬢ Enhances correctness via explicit null semantics
⬢ Improves static analysis and tool interoperability
🌼 Spring Framework 7.0 General Availability
Spring Framework 7 embraces modern Java, Jakarta EE 11, and Kotlin 2.2 with platform-wide updates.
🔍 Extra Reads
AI & Dev Productivity
🤖 Thoughts About Junie — A thoughts of JetBrains’ project-scoped coding agent and its practical limitations.
🤝 Collaboration Sucks — A contrarian take on why collaboration culture can slow organizations down.
🚪 Always Be Ready to Leave — A guide to building professional habits that make transitions seamless.
Code Quality & Engineering Practices
🔁 Clarifying the Rule of Three in Refactoring — When duplication becomes a refactoring signal — and when it doesn’t.
🧰 The (Lazy) Git UI You Didn’t Know You Need — Why lazygit succeeds as a fast, intuitive TUI developer tool.
🧪 Zod + TypeScript: Schema Validation Made Easy — A walkthrough of runtime-safe validation using Zod.
Originally posted on marconak-matej.medium.com.