Loading...
Hot Topic

Mittelstand, Finger weg von Microservices!

Architecture
15. April 2024
Zum Post

Letzte Beiträge

Performance 12. Juni 2023

Performanceprobleme ade: Wie Project Loom die Asynchronität abschafft

Jeder der eine Backendanwendung mit mehr als einer Hand von Nutzern entwickelt weiß, dass die meisten Performanceprobleme mit I/O zutun haben. In modernen Webanwendungen sind dies in der Regel Calls übers Netzwerk. Sei es REST-Requests zu einem anderen Service, Queries an die externe Datenbank, oder die Kommunikation mit einer Middleware. All diese Fälle bearbeiten wir - bewusst oder unbewusst - in asynchronen Threads. Und damit blockieren wir den main-thread nicht mehr.


JPA 21. Januar 2023

Accessing Non-Final Property Name in Constructor With JPA

The implications of JPA always manage to surprise me. Yesterday a colleague of mine made me aware of a warning in IntelliJ. The conversation went like that: “Marcus, in your blog you explained that we should check constraints in the constructor instead of bean validation . Me: “yeah”. “I wanted to make it right, but when I do it in this entity IntelliJ warns me with Accessing non-final property name in constructor”.


Clean Code 20. November 2022

Don't confuse configuration and constants

From time to time I experience that an application is unnecessarily configurable. In a recent project I experienced how too many options lead me to feel much more complexity and increased my mental load. Looking deeper into some of the values I saw that these were actually constants that would be dangerous to change “on-the-fly” anyway. In this post I reflect on this and share my thoughts. In this project the backend processes data from an embedded devices that communicate through LPWA networks.


Architecture 28. Juli 2022

Microservices are a Big Ball of Mud

Over the past years I attended hundreds of interviews. Many candidates proudly told tales on how they develop their projects with a microservice architecture. Often (I don’t want to say “always”, but from my memory I think it actually is “always”) it does not require many questions to see that they used a rocket launcher to kill a mouse. Microservices are hard. Everyone who experienced the pain of operating such an architecture can relate to it.


Clean Code 20. März 2022

Java Bean Validation is an Anti-Pattern

The javax.validation package is widely used in our industry. And I don’t like it. I believe using bean validation is an anti-pattern. It hides business relevant constraints, it leaves the choice when a validation happens to other framework code, and I even saw cases where developers expected that the validation “just had to take place”, but it never happened. Of course, there was also no test for it. And speaking about tests - testing these business relevant constraints is painful as well.


Top