Aspect-Oriented Programming (AOP) Made Easy With Java

The AspectJ framework streamlines AOP adoption in Java. AOP improves modularity which leads to code that is easier to understand and maintain. The post Aspect-Oriented Programming (AOP) Made Easy With Java appeared first on foojay. | Continue reading


@foojay.io | 7 hours ago

Tips for reading code

As developers, we read code more than we write it. When reading code inside the IDE, IntelliJ IDEA helps us to read and understand code by providing helpful features. The post Tips for reading code appeared first on foojay. | Continue reading


@foojay.io | 2 days ago

To Brussels, Canada and Back

I went traveling again, read more on my travels to FOSDEM, Canada and Zurich in February/early March in this travel report. The post To Brussels, Canada and Back appeared first on foojay. | Continue reading


@foojay.io | 2 days ago

Apache APISIX North America Tour

Today, I'd like to write about my North America "Tour" across several conferences and user groups. The post Apache APISIX North America Tour appeared first on foojay. | Continue reading


@foojay.io | 2 days ago

Spring: Internals of RestClient

Experience the ease and efficiency of Spring Framework RestClient. Simplify your RESTful API integration and unlock the full potential of your applications. The post Spring: Internals of RestClient appeared first on foojay. | Continue reading


@foojay.io | 3 days ago

FEPCOS-J (4) Easy programming of a multithreaded TCP/IP server in Java

FEPCOS-J prototypically implements a Java language extension that allows the realization of a multithreaded TCP/IP server in Java without thread or network programming. The post FEPCOS-J (4) Easy programming of a multithreaded TCP/IP server in Java appeared first on foojay. | Continue reading


@foojay.io | 7 days ago

The “Spring Way” of Doing Things: 9 Ways to Improve Your Spring Boot Skills

How to make sure you're unlocking the full potential of Spring Boot. 9 ways to improve your Spring Boot Skills. The post The “Spring Way” of Doing Things: 9 Ways to Improve Your Spring Boot Skills appeared first on foojay. | Continue reading


@foojay.io | 7 days ago

Localize applications with AI

Ever wondered if AI can localize an entire project? Let’s take a canonical open-source application and walk through the process end-to-end. The post Localize applications with AI appeared first on foojay. | Continue reading


@foojay.io | 8 days ago

Hello eBPF: Ring buffers in libbpf (6)

This week I'll implement ring buffer support in my eBPF library and explain how ring buffers are used in eBPF. The post Hello eBPF: Ring buffers in libbpf (6) appeared first on foojay. | Continue reading


@foojay.io | 8 days ago

Java 22 Is Here, And It’s Ready To Rock

Java 22 is here, and it's ready to rock! Boasting a set of 12 JEPs, it finalizes features like 'unnamed variables and patterns' and previews new ones like 'statements before super(...)' and 'stream gatherers' . The post Java 22 Is Here, And It’s Ready To Rock appeared first on fo … | Continue reading


@foojay.io | 9 days ago

Java 22: What’s New?

As soon as Java 22 is out, it'll be time to walk through all the functionalities that this version bring to us as developers. The post Java 22: What’s New? appeared first on foojay. | Continue reading


@foojay.io | 10 days ago

Foojay Podcast #45: Welcome to Java 22

Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features. Does Java 22 also bring that much innovation, or is it "just" a bug-fix release? The post Foojay Podcast #45: Welcome to Java 22 appeared first o … | Continue reading


@foojay.io | 10 days ago

Foojay Podcast #45: Welcome to Java 22

Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features. Does Java 22 also bring that much innovation, or is it "just" a bug-fix release? The post Foojay Podcast #45: Welcome to Java 22 appeared first o … | Continue reading


@foojay.io | 10 days ago

How Oracle Separates Java Pricing from Value

Oracle deserves props for continuing to develop Java as an open-source platform, but its pricing model and licensing continues to drive users away. The post How Oracle Separates Java Pricing from Value appeared first on foojay. | Continue reading


@foojay.io | 13 days ago

Increase readability and reduce complexity with Java’s Pattern Matching

Increase readability, reduce cognitive complexity, and avoid bugs that are hard to spot with Java's Pattern Matching. The post Increase readability and reduce complexity with Java’s Pattern Matching appeared first on foojay. | Continue reading


@foojay.io | 14 days ago

Running JavaFX applications on the Windows Subsystem for Linux and more

Learn about the flexibility of running your JavaFX applications in a Linux environment on a Windows host system without any issues, which can be a big plus, depending on your use cases. The post Running JavaFX applications on the Windows Subsystem for Linux and more appeared firs … | Continue reading


@foojay.io | 15 days ago

Foojay.io Mini Conference at Uber, Amsterdam

Uber Tech is partnering with Java User Group Amsterdam to host their first mini conference with Foojay.io. The post Foojay.io Mini Conference at Uber, Amsterdam appeared first on foojay. | Continue reading


@foojay.io | 16 days ago

Secure your API with these 16 Practices with Apache APISIX – part 2

In this two-post series, I've addressed most of 16 different practices to secure APIs with Apache APISIX. The post Secure your API with these 16 Practices with Apache APISIX – part 2 appeared first on foojay. | Continue reading


@foojay.io | 17 days ago

Secure your API with these 16 Practices with Apache APISIX – part 1

See how to configure Apache APISIX to secure your APIs against 7 of the 16 rules in the "16 practices to secure your API" list. The post Secure your API with these 16 Practices with Apache APISIX – part 1 appeared first on foojay. | Continue reading


@foojay.io | 17 days ago

TornadoInsight: Harness the Power of TornadoVM from IntelliJ IDEA

TornadoInsight is an open-source IntelliJ IDEA plugin for enhancing the developer experience when working with TornadoVM. The post TornadoInsight: Harness the Power of TornadoVM from IntelliJ IDEA appeared first on foojay. | Continue reading


@foojay.io | 20 days ago

Payara Cloud Hackathon is Open for Sign-ups!

We're excited to announce that the 2nd edition of Payara Hackathon is now open for sign ups! The post Payara Cloud Hackathon is Open for Sign-ups! appeared first on foojay. | Continue reading


@foojay.io | 21 days ago

Hello eBPF: First steps with libbpf (5)

Learn why using libbcc is not the best idea and start working with the newer libbpf. The post Hello eBPF: First steps with libbpf (5) appeared first on foojay. | Continue reading


@foojay.io | 21 days ago

Microservices Design Principles for Well-Crafted Architecture

Dive into the Microservices Design Principles with our in-depth guide to creating modular, scalable, and resilient software systems. learn The post Microservices Design Principles for Well-Crafted Architecture appeared first on foojay. | Continue reading


@foojay.io | 22 days ago

Why I moved my blog to RIFE2 after 23 years?

In April 2023, I decided to move my 23-year-old blog to RIFE2, a no-dependencies full-stack Java framework… The post Why I moved my blog to RIFE2 after 23 years? appeared first on foojay. | Continue reading


@foojay.io | 23 days ago

Foojay Podcast #44: Quarkus Club

Did you know? The Quarkus Clubd initiative started less than a year ago and is already one of the biggest groups in the world dedicated to Quarkus! The post Foojay Podcast #44: Quarkus Club appeared first on foojay. | Continue reading


@foojay.io | 24 days ago

JavaFX Links of February 2024

Here is the overview of the JavaFX LinksOfTheMonth of February 2024 that got published on jfx-central.com during this month. Core Christopher Schnick shared a video: "The JavaFX 22 platform preferences API in action. You can now query and observe the ... The post JavaFX Links of … | Continue reading


@foojay.io | 28 days ago

Builders, Withers, and Records: Java’s path to immutability

Immutability in Java with creational patterns Builders and Withers, along with a new type of immutable object in Java: Records. The post Builders, Withers, and Records: Java’s path to immutability appeared first on foojay. | Continue reading


@foojay.io | 29 days ago

You’re Invited to IntelliJ IDEA Conf 2024!

We are back and excited to invite you to IntelliJ IDEA Conf 2024, a developer-focused, live, online event that is free for all to attend! The post You’re Invited to IntelliJ IDEA Conf 2024! appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Foojay Podcast #43: Modern Java Testing

Learn from the experts in this podcast about testing methodologies, tools, and best practices, empowering you to write reliable Java applications. The post Foojay Podcast #43: Modern Java Testing appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Hello eBPF: Tail calls and your first eBPF application (4)

Learn how to use tail calls and develop your first standalone eBPF application using the hello-ebpf library The post Hello eBPF: Tail calls and your first eBPF application (4) appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

12 Lessons Learned From Doing The One Billion Row Challenge

How fast can you process a 1 billion rows text file in Java? That's the challenge that many Java developers tried to solve in January 2024. The post 12 Lessons Learned From Doing The One Billion Row Challenge appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Cloud Cost Optimization Is Hard, Java Can Help

Did you know switching your Java runtime helps reduce Cloud waste? The post Cloud Cost Optimization Is Hard, Java Can Help appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Hardening Apache APISIX with the OWASP’s Coraza and Core Ruleset

Most organizations don't incentivize for security. Hence, we need to be smart about it and use existing components as much as possible. The post Hardening Apache APISIX with the OWASP’s Coraza and Core Ruleset appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Build Flexible Jakarta EE Applications With Apache CouchDB NoSQL Database

Are you a Jakarta EE developer interested in leveraging the power of NoSQL databases for your applications? The post Build Flexible Jakarta EE Applications With Apache CouchDB NoSQL Database appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Video: Spring Boot Testcontainers Support for Local Development

With Spring Boot 3.1, Testcontainers support for local development was added. This video will show you how this works and how to use it. The post Video: Spring Boot Testcontainers Support for Local Development appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

State of Open (Source?!) and Free AI – a FOSDEM recap

Recap of spending the day in AI and Machine Learning Developer Room at FOSDEM’24! The post State of Open (Source?!) and Free AI – a FOSDEM recap appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Top Most Detected Issues in Java Projects

The most detected issues in Java projects by not following the clean code approach, and how to fix them with clear examples. The post Top Most Detected Issues in Java Projects appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Minimize Costs by Utilizing Cloud Storage with Spring-Data-Eclipse-Store

How to save money storing data in Cloud blob-stores instead of expensive databases through the use of the open-source Spring-Data-Eclipse-Store library. The post Minimize Costs by Utilizing Cloud Storage with Spring-Data-Eclipse-Store appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

DTrace Revisited: Advanced Debugging Techniques

Learn about DTrace, an innovative tool that has reshaped the landscape of debugging and system analysis. The post DTrace Revisited: Advanced Debugging Techniques appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Is JDWP’s onjcmd feature worth using?

We run benchmarks to see whether JDWP's onjcmd features improves the debugging performance. The post Is JDWP’s onjcmd feature worth using? appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

The Evolution of Microservices with SOA: Navigating the Architectural Landscape

Explore the Evolution of Microservices: Microservices in the Modern Architecture Landscape with our in-depth guide that compares it with SOA. The post The Evolution of Microservices with SOA: Navigating the Architectural Landscape appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Kicking the Tires of Docker Scout

Let's try Docker Scout, the Docker image vulnerability detection tool. The post Kicking the Tires of Docker Scout appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Sorting Text in Java, How Complicated Can It Be?

Text is represented by the String class in Java. In this article we'll explore how to sort String, the advantages and drawbacks of each possibility. The post Sorting Text in Java, How Complicated Can It Be? appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

OpenRewrite: Migrate to Spring Boot 3.2

Simplify your migration process to Spring Boot 3.2 with the help of OpenRewrite. The post OpenRewrite: Migrate to Spring Boot 3.2 appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Foojay Podcast 42: Jozi-JUG and Cape Town Java Community

Today, we are traveling to Cape Town and Johannesburg to learn more about its Java communities! The post Foojay Podcast 42: Jozi-JUG and Cape Town Java Community appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Hello eBPF: Recording data in event buffers (3)

How to use another kind of eBPF maps, the perf event buffer, and run tests with docker and JUnit 5. The post Hello eBPF: Recording data in event buffers (3) appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

Achieving High Throughput Without Sacrificing Latency

Low latency coding techniques are designed to keep a processor core as busy as possible, executing at its full potential and so getting work done as quickly as possible. The post Achieving High Throughput Without Sacrificing Latency appeared first on foojay. | Continue reading


@foojay.io | 1 month ago

JavaFX Links of January 2024

This is the first JavaFX LinksOfTheMonth review for 2024, an overview of the LinksOfTheWeek that got published on jfx-central.com during January. The post JavaFX Links of January 2024 appeared first on foojay. | Continue reading


@foojay.io | 1 month ago