Modular Monolithic in Practice

With the usage of microservices in application modernization, we have seen both the advantages and disadvantages of maintaining such software development styles. When we create applications mostly in enterprise organizations, the first thing that comes to our mind now is how to decouple our applications. There will be times when creating too many microservices is not the best way and …

Read More »

Java Bytecode Simplified: Journey to the Wonderland (Part 3)

Our previous article unpacked Bytecode further and discussed ConstantPool, today I’ll go through several resources for working with it now. Java bytecode is the Java Virtual Machine’s (JVM) intermediate representation of Java code. While Java bytecode is not meant to be human-readable, it may be edited and manipulated for several reasons. This article examines the tools and methods used to …

Read More »

Vaadin, OAuth2, and Keycloak

This article shows how to configure Vaadin and Spring Security to use OAuth2 with Keycloak. Keycloak First, we must start Keycloak and configure a realm. The easiest way is to start Keycloak with Docker. Caution: This is just for development purposes. Don’t use the setup in production. docker run -d -p 8180:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:20.0.1 start-dev Now you …

Read More »

Foojay Podcast #12: State and Future of the IDEs

In this podcast,  we are talking to some of the key people working on different IDEs, Integrated Development Environments. Those are applications that provide tools to computer programmers for software development. An IDE typically consists of at least a source code editor, build automation tools, and a debugger. Let’s learn how these tools evolved, and the challenges they face to …

Read More »

Foojay.io FOSDEM Speaker Predictions for 2023

FOSDEM is around the corner and a group of great speakers is lined up to talk about the OpenJDK and the many different ways in which to make use of it. Each comes from a different part of the OpenJDK ecosystem, with different perspectives, and therefore unique insights into what to expect for this year. Tip—in each expectation/prediction for 2023 …

Read More »

Friends of OpenJDK Schedule at FOSDEM 2023

Again, i.e., following on from good times in 2022 and 2021, we have a really great schedule with inspiring speakers for FOSDEM in Brussels, on Sunday, February 5, providing a place for friends of OpenJDK in the Foojay.io Developer Room. It’s all free and fun and we’re also organizing a get together with drinks and food the evening before, on …

Read More »

How Does Kafka Perform When You Need Low Latency?

Most Apache Kafka benchmarks appear to test high throughput but not low latency. Kafka was traditionally used for high throughput rather than latency-sensitive messaging, but it does have a low-latency configuration. (Mostly setting linger.ms=0 and reducing buffer sizes). In this configuration, you can get below 1-millisecond latency a good percentage of the time for modest throughputs. Benchmarks tend to focus …

Read More »

How to Release a Java Module with JReleaser to Maven Central with GitHub Actions

This article is a tutorial that guides you through the process of releasing a Java module with JReleaser to Maven Central and Github Actions. JReleaser is a tool that streamlines the release process for Java projects, allowing developers to quickly and efficiently publish their modules to Maven Central. If you just want to publish your Maven project by hand, then …

Read More »

Foojay Podcast #11: Looking Back to 2022 and Predictions for 2023

A few weeks ago, Ted Neward published a post in which he reviewed the predictions he made one year ago and added a long list of predictions for 2023. In this Foojay Podcast episode, we talk about these predictions, and we even found an analogy between what has happened at Twitter in the last months and the history of Java! …

Read More »

The Massive Hidden Power of Breakpoints

It’s been a big week. I’m currently reviewing the final draft of my upcoming debugging book. This is always a sobering, and exciting moment. A moment in which all of a sudden all the months of work become “real”. I also recorded 9 videos for youtube bringing up the total videos in the course to 29 (with many more on …

Read More »