Journeys in Java, Level 3: Building an Empire of Microservices

Let’s continue our journey to learn microservice. Today we will learn to use a full-fledged MongoDB database running in a Docker container. | Continue reading


@foojay.io | 1 year ago

The Serverless Database You Really Want

This article argues how Apache Cassandra is the Serverless database that is open and free as in freedom in the modern cloud era. | Continue reading


@foojay.io | 1 year ago

Why Pulsar Beats Kafka for a Scalable, Distributed Data Architecture

This article argues why Apache Pulser is better than Apache Kafka when it comes to using cloud and microservices and how it fits the open-source mindset. | Continue reading


@foojay.io | 1 year ago

Debugging Tutorial: Java Return Value, IntelliJ Jump to Line and more

Posted two new videos in the "140 Second Duckling" series. They cover some basic and some little-known features of debuggers. Such as Marking | Continue reading


@foojay.io | 1 year ago

Java Thread Programming (Part 14)

What happens if the child-task creates more tasks and the parent-task waits for the child-tasks to finish in TheadPool in java. | Continue reading


@foojay.io | 1 year ago

Kover : Code Coverage plugin for Kotlin

Kover is a code coverage tool for Kotlin. It's still in incubator phase but I took it for a spin and it is already very useful as part of local or CI workflows! In this article I go through the setup and some of my favourite goodies of the tool. | Continue reading


@foojay.io | 1 year ago

Avoiding Stringly-typed in Kotlin

It is more beneficial to use sealed and value class instead of enumerations in Kotlin; let’s find out why. | Continue reading


@foojay.io | 1 year ago

Introducing KoolKits: OSS Debugging Toolkits for Kubernetes

New OSS approach for debugging live applications - right from inside your IDE or terminal window, and without stopping the live application. | Continue reading


@foojay.io | 1 year ago

Measuring Time and Duration in Kotlin

The DurationAPI is coming out of its experimental stage and offers a nice DSL to easily work with time durations. | Continue reading


@foojay.io | 1 year ago

Save hours on your setup of K8ssandra with the new config builder

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 1 year ago

Project Panama for Newbies (Part 4)

imagine C code capable of performing a computation and after its completion the C code will notify Java code to perform updates to JavaFX UI. | Continue reading


@foojay.io | 1 year ago

Use git bisect to Pinpoint a Bug

I had read about git bisect a few times and figured that this time, I would use that tool to find an annoying bug. | Continue reading


@foojay.io | 1 year ago

Jakarta Concurrency: Present and Future

Jakarta Concurrency is a small, but fundamental, specification in the Jakarta EE umbrella. As project lead, I provide more information on it. | Continue reading


@foojay.io | 1 year ago

Enter the Cloud Native Dojo: Blackbelt-Level Debugging

In this article, I want to go over three challenges we face when debugging modern applications: polyglot, unreproducible, data pollution. | Continue reading


@foojay.io | 2 years ago

Java on Visual Studio Code Update: February 2022

Hi everyone, welcome to the February update of Visual Studio Code Java and this time we have a special edition for education! | Continue reading


@foojay.io | 2 years ago

Hand Ground Coffee: Command Line Tools for Java

I prefer the command line for my daily work, using the combination of git, sed, grep, bash commands etc. makes recurring tasks easier. | Continue reading


@foojay.io | 2 years ago

Controlling Electronics with JBang on the Raspberry Pi

JBang is a great way to create your first program to control electronic components connected to the Raspberry Pi's GPIO pins. | Continue reading


@foojay.io | 2 years ago

7 Ways to Improve Your Code Reading Skills

As more and more companies go Agile, being able to read other's code is more important than ever. Read on for some tips on how to improve this skill. | Continue reading


@foojay.io | 2 years ago

The Critical Role Streaming Plays in a Data Stack

Why Apache Pulsar and its support for streaming data is the right choice for multi-datacenter, geo-distributed deployments. | Continue reading


@foojay.io | 2 years ago

System Logger

Almost all Java developers are familiar with logging frameworks like Log4j, but not the System.Logger that has been available since java 9. | Continue reading


@foojay.io | 2 years ago

Foojay at FOSDEM 2022 on YouTube

Last weekend, FOSDEM 2022 was held, with the friends of OpenJDK putting together an awesome program on the tools and editors around OpenJDK. | Continue reading


@foojay.io | 2 years ago

Journeys in Java, Level 2: Building an Empire of Microservices

Let's dive into the world of microservices find out the complexities, best practices, and troubles. I will share all my learnings, as well! | Continue reading


@foojay.io | 2 years ago

Playing practically with Stream API

Let’s learn java stream API with a few practical examples. | Continue reading


@foojay.io | 2 years ago

Cassandra Database Migration to Kubernetes with Zero Downtime

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago

Building Reactive Java Applications with Spring Framework

Pretty much all Java developers are familiar with Spring Pet Clinic. Let's get to know the reactive implementation of it. | Continue reading


@foojay.io | 2 years ago

Introducing 140 Second Ducklings: What is Debugging?

I’m launching a new Twitter video series that will focus on teaching the concepts of debugging (and other concepts) in small video bites | Continue reading


@foojay.io | 2 years ago

Backpressure in Reactive Systems

Considering a fast data producer and a slow data consumer, backpressure "pushes back" on the producer, not to be overwhelmed by data. | Continue reading


@foojay.io | 2 years ago

Full Stream Ahead: Astra Streaming, Powered by Apache Pulsar

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago

Debugging RAM: Detect/Fix Memory Leaks in Managed Languages – Heap Deep Dive (Part 2)

Java and JavaScript are garbage collected languages. But memory leaks can still plague them. How to avoid, detect, and fix heap problems? | Continue reading


@foojay.io | 2 years ago

Building Scalable Streaming Applications with DataStax Astra Streaming

DataStax Astra Streaming with a step-by-step tutorial that illustrates how it can be used to easily build scalable, streaming applications. | Continue reading


@foojay.io | 2 years ago

SQL vs. NoSQL: Pros & Cons

What’s the best way to store, protect and access your data? This is a fundamental, yet critical decision. Find out more on Foojay.io Today! | Continue reading


@foojay.io | 2 years ago

Java Thread Programming (Part 13)

What is the maximum number of worker threads we can put in a ThreadPool? Let's find out today on Foojay's amazing Java threading series! | Continue reading


@foojay.io | 2 years ago

Installing Java with SDKMAN on Raspberry Pi

Java on Raspberry Pi has always been possible, but SDKMAN makes the getting-started process a lot easier. It's as easy as pi... | Continue reading


@foojay.io | 2 years ago

Deploying to Multiple Kubernetes Clusters with the K8ssandra Operator

Let’s learn about the new K8ssandra Operator that simplifies deploying multiple Apache Cassandra data centers in different regions | Continue reading


@foojay.io | 2 years ago

GoF Design Patterns Using Java – Part 02

Let's continue learning design patterns by implementing the Adapter, Facade, Template, Iterator, and State patterns using Java. | Continue reading


@foojay.io | 2 years ago

Video: SDKMAN Explained

One of the highlights of the Friends of OpenJDK room at FOSDEM 2021 was Marco Vermeulen, the creator of SDKMAN, talking about SDKMAN. | Continue reading


@foojay.io | 2 years ago

Backing up K8ssandra with MinIO

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago

Lights, Camera, Action: GitHub Actions with Java (Part 3)

The Java GitHub Actions that rules them all! Third and final instalment of Lights, Camera, Action: GitHub Actions with Java | Continue reading


@foojay.io | 2 years ago

Friends of OpenJDK at FOSDEM with Prizes

A great line up of known and less known OpenJDK users from the Foojay community will be at FOSDEM, with a quiz and awesome prizes to be won. | Continue reading


@foojay.io | 2 years ago

Create a CRUD UI in Pure Java

Many developers struggle with writing a web UI, but it becomes absolute fun if we could do it with pure java; let's find out how. | Continue reading


@foojay.io | 2 years ago

Four Reasons Why Apache Pulsar is Essential to the Modern Data Stack

Messaging has been on DataStax’s radar for several years regarding microservices-based architectures. Let’s learn the top reasons why we should consider Apache Pulsar. | Continue reading


@foojay.io | 2 years ago

Unboxing K8ssandra: The Data Layer For Your Kubernetes-Powered Applications

foojay is the place for all OpenJDK Update Release Information. Learn More. | Continue reading


@foojay.io | 2 years ago

Java Thread Programming (Part 12)

Let's find out what are the ways to create ThreadPool using Executor framework in java and use result-bearing tasks using Callable and Future | Continue reading


@foojay.io | 2 years ago

The Flatten Maven plugin

You don't need to wait until the release of Maven 5; We can use the Maven Flatter Plugin to between build POM and consumer POM. It's a freebie; consider using it if you are a library developer. | Continue reading


@foojay.io | 2 years ago

Journeys in Java, Level 1: Building an Empire of Microservices

Let's dive into the world of microservices find out the complexities, best practices, and troubles. I will share all my learnings, as well! | Continue reading


@foojay.io | 2 years ago

Treat Security as a Risk

Security is the poster child of a Non-Functional Requirement: most people don't care until the proverbial matter hits the rotary propeller. | Continue reading


@foojay.io | 2 years ago

Java on Visual Studio Code Update – January 2022

Since this is our first blog post of the new year, we are going to look back on highlights of 2021 and take a look at our roadmap for 2022. | Continue reading


@foojay.io | 2 years ago

Java Thread Programming (Part 11)

Learn how to ask the executor framework at startup to provision threads for us and they will be reused as long as the application runs. | Continue reading


@foojay.io | 2 years ago