Foojay Podcast #38: Java in the Cloud

Java was born in 1995, when the internet as we know it today didn’t exist yet. Cloud servers, Docker, Kubernetes, distributed systems, scaling up and down… these things are now part of our daily job, but Java wasn’t originally designed for it. In this episode, we want to learn if the recent evolutions in OpenJDK, and ongoing related projects, will …

Read More »

Five Apache Projects You Probably Haven’t Heard Of (Yet)

In early 2021, I started to work on the Apache APISIX project. I have to admit that at the time I had never heard about it before. As a result, in this article, I’d like to introduce some Apache projects that are less well-known than HTTPD or Kafka. Apache APISIX APISIX is an API Gateway. It builds upon OpenResty, a …

Read More »

Book Review: Modern Frontends with htmx

People who follow me probably know I have a big love for user interface development with JavaFX (for desktop), and Vaadin (for browser). But as always, there are different solutions for every challenge, and building a web user interface with Java can be done with other frameworks. htmx seems to be one of those hot new rising stars, and I …

Read More »

Handling security vulnerabilities in Spring Boot

In the world of software development, managing dependencies is a core part of creating strong and secure applications. Spring Boot, a favorite among Java developers, makes building applications easier, but there’s more to it than meets the eye. Keeping your dependencies in check is crucial to ensure that your Spring Boot projects run smoothly and remain resilient in the face …

Read More »

lntelliJ IDEA: Selectively Commit Changes to a File

Sometimes you’re making multiple changes to a file that you don’t want to commit together. For example, if you’re working on a new feature, but notice some other small things you want to fix. If these changes are in separate files, we can commit each file separately. But what if they’re in the same file? In IntelliJ IDEA (as of …

Read More »

Writing C Code in Java

The Foreign Function & Memory API (also called Project Panama) has come a long way since it started. You can find the latest version implemented in JDK 21 as a preview feature (use –enable-preview to enable it) which is specified by the JEP 454: By efficiently invoking foreign functions (i.e., code outside the JVM), and by safely accessing foreign memory …

Read More »

Benchmark JDBC connectors and Java 21 virtual threads

Why should Java and database developers care about Virtual Threads? Developers can write faster and more resource efficient applications without having to refactor synchronous code a.k.a. “imperative”) JDBC code into asynchronous (a.k.a “reactive”) code that is hard to create, debug and maintain. Writing scalable network code is always difficult. Synchronous APIs can’t be scaled beyond a certain point because they …

Read More »

Canary Releases with Apache APISIX

In a few words, the idea of canary releases is to deliver a new software version to only a fraction of the users, analyze the results, and decide whether to proceed further or not. If results are not aligned with expectations, roll back; if they are, increase the number of users exposed until all users benefit from the new version. …

Read More »

Foojay Podcast #37: J-Fall Report, Part 4 (final)

Check the previous Foojay Podcasts for the first three parts of our J-Fall report (part 1, part 2, and part 3). That one-day conference in the Netherlands in November was packed with amazing sessions. In this episode, you’ll get the remaining interviews we made that day! And as they say, last but not least, again, we have some fascinating insights …

Read More »

Book Review: The Software Engineer’s Guidebook

Gergely Orosz’s book, “The Software Engineer’s Guidebook,” takes readers on an enthralling exploration of the realm of software development, working in various companies, and startups. A software engineer in a startup or Big Tech company traces the journey in this book, starting from a beginner developer to a principal engineer. This book serves as a comprehensive guide, especially beneficial for …

Read More »