Blog Layout

Remote and Distributed Build Patterns

Remote and distributed builds are terms frequently used, misused and abused. Here we share insight for what these terms mean and how they affect your build feedback times. A frequently-requested feature for the Gradle Build Tool is the ability to perform remote or distributed builds. But what exactly does this mean? And what are the motivations behind the requests? This …

Read More »

J-Fall Call for Papers has opened!

The Call for Papers application for the biggest Java event of the Netherlands is open! For J-Fall 2022 we will use a sessionize Call for Papers app. Do you have a interesting Java-related story that you would like to share with your fellow NLJUG members? Then submit your paper now. That way we will produce the best possible program by …

Read More »

How to Secure Your Web Apps With An API Gateway

API management solutions, also known as API gateways, are a must in the day and age of APIs. However, once you’ve set up such a gateway, you can use it for different purposes unrelated to APIs. Today, I want to show you how to improve the security of web apps. Prevent sniffing Browsers are fantastic pieces of technology that try …

Read More »

Debugging Java Collections Framework Issues in Production

The Java Collections Framework was a huge leap forward when it was introduced as part of Java 2 (JDK 1.2). Thanks to the included collection classes we finally moved beyond the limits of Vector and Hashtable to more mature and generic solutions. With the introduction of streams and functional concepts in Java 8 the framework took everything to the next …

Read More »

Deserialization Exploits in Java: Why Should I care?

Hackers refer to deserialization in Java as “the gift that keeps on giving”. But what is actually the problem? In most cases, it is not even your own code that creates this security vulnerability. This problem is also not restricted to Java’s custom serialization framework. When deserializing JSON, XML, or YAML, similar issues can occur as well. I recently gave …

Read More »

Journeys in Java, Level 6: Build a Neo4j Microservice

For our next adventure in Java microservices, we want to expand our system for book review data. While books and authors are well-suited for a document database such as MongoDB, once you add reviews to the mix, the importance of the relationships makes this project better suited for a graph database. This way, we can utilize relationships between the different …

Read More »

Jakarta Concurrency: Present and Future

Jakarta EE, previously Java EE, is a set of specifications that enables the world wide community of Java developers to work on cloud native Java enterprise applications. It is an open source project maintained by the Eclipse Foundation. Jakarta Concurrency is a small, but fundamental, specification under the Jakarta EE umbrella. As project lead, I provide more information on what …

Read More »

The End of the Beginning for Apache Cassandra

Image: Pixabay Editor’s note: This story originally ran on July 27, 2021, the day that Apache Cassandra 4.0 was released. Today is a big day for those of us in the Apache Cassandra community. After a long uphill climb, Apache Cassandra 4.0 has finally shipped. I say finally, because it has at times seemed like an elusive goal. I’ve been involved in the Cassandra …

Read More »

JDK 7: An Extended Hello and Farewell

On July 7th, 2011, eleven years ago, JDK 7 was released.  In some ways, it was one of the more significant releases of Java.  Indeed, there were some excellent technical features: Project Coin gave us things like try-with-resources, strings in switch and multi-catch.  However, it was two non-technical aspects of JDK 7 that made it important.  The first was that it was the …

Read More »