Couldn’t We Just Use AsyncGetCallTrace In A Separate Thread?

Using AsyncGetCallTrace from a separate sampler thread is possible and this article tells you why and how! The post Couldn’t We Just Use AsyncGetCallTrace In A Separate Thread? appeared first on foojay. | Continue reading


@foojay.io | 11 months ago

Relearning Java Thread Primitives

"Synchronized" was revolutionary and still has great uses. But it's time to move to newer thread primitives and rethink our core logic. The post Relearning Java Thread Primitives appeared first on foojay. | Continue reading


@foojay.io | 11 months ago

Foojay Podcast #20: Functional Programming, “The Good, the Bad, and the Ugly”

Functional programming: you either love it or you hate it. But it is a trade-off. So for today, let's focus on the good, the bad, the ugly! The post Foojay Podcast #20: Functional Programming, “The Good, the Bad, and the Ugly” appeared first on foojay. | Continue reading


@foojay.io | 12 months ago

Fearless Distroless

Distroless images are a solution to reduce your image size and improve its security, by providing neither a package manager nor a shell. The post Fearless Distroless appeared first on foojay. | Continue reading


@foojay.io | 12 months ago

Automatically Creating Microservices Architecture Diagrams

Upload a JAR, search for YAML, create a DOT, convert this to a PNG, all taking place behind the scenes, with just a click of a button. The post Automatically Creating Microservices Architecture Diagrams appeared first on foojay. | Continue reading


@foojay.io | 12 months ago

JUG PH: Java User Group PH Revitalization Report 2023

Event group report for the revitalized meetup of Java User Group PH. A meetup group focusing in Java ecosystem. The post JUG PH: Java User Group PH Revitalization Report 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Not Your Grandfather’s Logs — A Java Library’s New Approach To Observability

How a Java library is taking a completely new approach to understanding what the code does, and why it makes perfect developer sense. The post Not Your Grandfather’s Logs — A Java Library’s New Approach To Observability appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #19: How Working For Free For Fun Brought Me Fame and Fortune – Or At Least Some Of Each – In The End

Many developers spend a lot of their time on side projects. It’s an opportunity to learn new techniques and get involved in communities. But sometimes it can also lead to a new job. The post Foojay Podcast #19: How Working For Free For Fun Brought Me Fame and Fortune – Or At Leas … | Continue reading


@foojay.io | 1 year ago

Boldness in Refactoring!

"Don't touch it, it works" is problematic. It leads us down a bad path. How do you handle a project that held that policy for years? The post Boldness in Refactoring! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Replacing Postman with the JetBrains HTTP Client

How to use the JetBrains HTTP Client to replace Postman, test third party APIs, share requests and run them in CI all of that within minutes! The post Replacing Postman with the JetBrains HTTP Client appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Chronicle FIX: Much More Than a Quick Fix

Many of our customers have upgraded from QuickFIX/J to Chronicle FIX and this article provides some background as to why. The post Chronicle FIX: Much More Than a Quick Fix appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Getting Started With Jakarta EE 10 – Jakarta REST

In this article, we take a look at how to get started developing RESTful web services on the Jakarta EE Platform using the Jakarta REST API. The post Getting Started With Jakarta EE 10 – Jakarta REST appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Hidden Beauties of Java Enums

Java enums can contain much more than just a list of definitions, but also data and extended functionality! The post Hidden Beauties of Java Enums appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Introducing Bld: A New Pure Java Build System

We created bld because we're not really interested in build tools. We use them because we have to, but we'd rather just get on with coding the real stuff. The post Introducing Bld: A New Pure Java Build System appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

My First Firefox Extension

A couple of weeks ago, I spent the weekend creating another CFP submission helper in the form of a Firefox extension. The post My First Firefox Extension appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Unlocking Java Secrets with Frank Delporte: Insights, Stories, and Tips for Success

Dive into our insightful interview with Frank Delporte, Java Champion and Senior Technical Writer at Azul Systems, as he shares his experiences in the software industry, valuable advice for Java beginners, and his journey in technical writing. Discover the resources Frank recomme … | Continue reading


@foojay.io | 1 year ago

Time Zone and Currency Database in JDK

You aren’t a real developer until you have programmed with dates, times, daylight savings, and time zones. Luckily the JDK assists you! The post Time Zone and Currency Database in JDK appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Instrumenting Java Code to Find and Handle Unused Classes

Ever wondered how to find classes and dependencies that you don't actually use? Here I describe how to implementing an instrumenting Java agent. The post Instrumenting Java Code to Find and Handle Unused Classes appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Chronicle FIX: Designed Not To Skip A Message Even If Your Data Centre Fails

High availability is achieved in Chronicle FIX by failover, where workload is transferred from a primary engine to a secondary engine in the event of a primary engine failure. The post Chronicle FIX: Designed Not To Skip A Message Even If Your Data Centre Fails appeared first on … | Continue reading


@foojay.io | 1 year ago

Cherry-Pick: Move a Commit to a Different Branch

Moving a commit to a different branch: not nearly as scary as it sounds! Let the IDE help to turn this into a quick, low-stress task. The post Cherry-Pick: Move a Commit to a Different Branch appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

DevOps For Developers: Continuous Integration, GitHub Actions, and Sonar Cloud

When it is done badly, the CI process can turn this amazing tool into a nightmare. CI should make our lives easier, not the other way around. The post DevOps For Developers: Continuous Integration, GitHub Actions, and Sonar Cloud appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Unlocking the Secrets to a Successful Software Engineering Career: An Interview with Otavio Santana

Otavio Santana shares his journey as a passionate software engineer and architect, emphasizing the crucial roles of open-source contributions, mentorship, and simplicity in shaping successful software engineering careers. The post Unlocking the Secrets to a Successful Software En … | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #18: Atlanta JUG and DevNexus

Today we travel back to the US to learn more about the Atlanta JUG, mainly because this week, they are organizing the DevNexus conference! The post Foojay Podcast #18: Atlanta JUG and DevNexus appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Coroutines on the RaspberryPi (Pi4J-Kotlin)

Find out all the details on Pi4J-Kotlin v2.4.0: Coroutines, I2C, and Serial DSL on Foojay.io Today, the place for OpenJDK friends. The post Coroutines on the RaspberryPi (Pi4J-Kotlin) appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

JavaFX Links of March 2023

Already the end of March, so time to look back at the JavaFX Links Of The Week that were published on JFXCentral.com. The post JavaFX Links of March 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

My Evaluation of the Scaleway Cloud Provider

Heroku's owner, Salesforce, announced it would stop the free plan, I found a new provider, Scaleway, and here are my experiences. The post My Evaluation of the Scaleway Cloud Provider appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Writing a Profiler in 240 Lines of Pure Java

How to develop a tiny Java profiler, that can output flame graphs, in just 240 lines of pure Java, making it easy for anyone to understand. The post Writing a Profiler in 240 Lines of Pure Java appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Competing for the Crown: A Friendly Debate on the Future of Java and Kotlin on Foojay.io Today

In this article, we look at a discussion on Foojay's Slack comparing Java and Kotlin, showing why developers should join the platform. The post Competing for the Crown: A Friendly Debate on the Future of Java and Kotlin on Foojay.io Today appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Chronicle Wire: Object Marshalling

About the efficiencies of using Chronicle Wire to encode small Strings into long primitives and how this improves serialisation performance. The post Chronicle Wire: Object Marshalling appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Getting Started with OpenAPI Generators: Tips & Tricks

Tips and tricks on how to get productive with creating OpenAPI generators. How to run and debug, create your own easily and more! The post Getting Started with OpenAPI Generators: Tips & Tricks appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Ingesting Time-Series Events from Kafka into QuestDB

Ingest streaming time-series data from Apache Kafka into QuestDB using ILP with the Kafka Sink Connector The post Ingesting Time-Series Events from Kafka into QuestDB appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Navigating the Challenges of Modern Software Development: An Exclusive Interview with Shai Almog

Discover the insights of Shai Almog, a Java expert and entrepreneur with over 20 years of experience, as he shares his journey. The post Navigating the Challenges of Modern Software Development: An Exclusive Interview with Shai Almog appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Using Bots to Keep Dependencies Updated

Did you know bots can automatically create pull requests to keep dependencies secure and up to date? The post Using Bots to Keep Dependencies Updated appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #17: Execute Java Code with TornadoVM on CPUs, GPUs, and FPGAs

TornadoVM is a programming and execution framework for offloading and running JVM applications on multi-core CPUs, GPUs, and FPGAs. The post Foojay Podcast #17: Execute Java Code with TornadoVM on CPUs, GPUs, and FPGAs appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Watch Area and Renderers

Stop digging through variables in the watch to find nuggets of gold, or rerunning the expression evaluation. Use entity renderers instead. The post Watch Area and Renderers appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Control your Arduino with Spring

Learn how to use Firmata4j to control an Arduino board from a Raspberry Pi board or directly from your computer. The post Control your Arduino with Spring appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Build and Deploy a Real-time Cloud-based Logging System

Learn how to treat logs and traces as part of a scalable cloud storage repository that can be analysed with the techniques used for big data. The post How to Build and Deploy a Real-time Cloud-based Logging System appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

How to Create a Failover Client using the Hazelcast Viridian Serverless

Learn to update a Java client to automatically connect to a secondary, failover cluster if it cannot connect to its original, primary cluster. The post How to Create a Failover Client using the Hazelcast Viridian Serverless appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Mitigating Path Traversal Vulnerabilities in Java

Path traversal vulnerabilities are a serious threat to Java web applications, amongst the top security issues Snyk finds in Java code. The post Mitigating Path Traversal Vulnerabilities in Java appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Predicting Secure Java Projects on Maven Central

Next time you’re considering a new Java library, look for the Sonatype Safety Rating on Maven Central to aid in your decision making. The post Predicting Secure Java Projects on Maven Central appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Event-Driven Order Processing Program

Following the Hello World example, this article looks at an Order Processor with a New Order Single in and an Execution Report out. The post Event-Driven Order Processing Program appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

5 Great Reasons to use jOOQ

jOOQ makes SQL a "first-class" language in the JVM ecosystem by embedding it into Java, Kotlin, and Scala in an idiomatic way. The post 5 Great Reasons to use jOOQ appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Vaadin 24: Java 17, Jakarta EE 10, Servlet 6, Spring Boot 3

Vaadin 24 is a step forward with a new technology baseline that includes Java 17, Jakarta EE 10, Servlet 6.0, Spring 6.0, and Spring Boot 3. The post Vaadin 24: Java 17, Jakarta EE 10, Servlet 6, Spring Boot 3 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Java on Visual Studio Code Update – February 2023

In this article, we will bring you new features related to JUnit 5 parallel testing as well as new filter widget for Spring Boot dashboard. The post Java on Visual Studio Code Update – February 2023 appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

It’s Java 20 Release Day! Here’s What’s New

In this article, we will take you on a tour through all JEPs that come with this release and give you a brief introduction of each one of them. The post It’s Java 20 Release Day! Here’s What’s New appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

From Assembler to Chat-GPT: Steve Poole on the Shifting Landscape of Programming

In this engaging interview with Steve Poole, a seasoned Java developer and DevOps practitioner, we delve into his career journey, valuable insights, and the evolution of technology. Poole shares his experiences, highlighting the importance of critical thinking, adapting to change … | Continue reading


@foojay.io | 1 year ago

Foojay Podcast #16: Welcome to Java 20!

What new features does Java 20 bring? And why should we use it? And what can we expect from the next LTS version, 21, in September? The post Foojay Podcast #16: Welcome to Java 20! appeared first on foojay. | Continue reading


@foojay.io | 1 year ago

Book Review: “API Design Patterns”

This review is about API Design Patterns by JJ Geewax from Manning. Check it out and if you've read it too, what did you think? The post Book Review: “API Design Patterns” appeared first on foojay. | Continue reading


@foojay.io | 1 year ago