foojay

autumo beetRoot – another Java web-dev-framework, really? Yes! But…

Over the years I have struggled with various Java web development frameworks and they all have their weaknesses and strengths. A few years ago, I once evaluated over 10 of these frameworks for a project for a Swedish company. Nothing really impressed me at the time. It was only later that SpringBoot came along, which seemed to fulfill all the …

Read More »

Renovate for everything

In my earlier post about moving from Kotlin Scripting to Python, I mentioned several reasons: Separating the content from the script Kotlin Scripting is an unloved child of JetBrains Renovate cannot update Kotlin Scripting files I was wrong on the third point. Here’s my mea culpa. First things first, Renovate does indeed manages Kotlin Scripting files – since 2022. Even …

Read More »

How to Run Neo4j on Kubernetes

Kubernetes is an open-source container orchestration platform that automates the deployment, scaling, and management of containerized applications. In this post, we walk through how to run the Neo4j graph database on Kubernetes. For an upcoming event, I was asked to give a demo of how to run Neo4j on Kubernetes. I had very little experience with Kubernetes, so I decided …

Read More »

Foojay Podcast #54: Music and MIDI with Java and Kotlin

MIDI is a universal standard for communicating between musical instruments and computers. Within OpenJDK, there is a whole Java package dedicated to MIDI communication and data handling. Is it up to date? Are there better approaches now? And what can we do with music, Java, and Kotlin? Let’s find out… Video Podcast (audio only) Guests Atsushi Eno  https://atsushieno.github.io/   @atsushieno@g0v.social   @atsushieno@fedibird.com  …

Read More »

Example Java Application with Embedded Jetty and a htmx Website

I was experimenting with a Java application that can act as a web server and includes the user interface HTML-files that get modified with htmx, to replace certain parts of the HTML with other ones created in Java. I found it pretty hard to understand how to configure the embedded Jetty webserver, but as always with Java libraries, it’s pretty …

Read More »

Exploring New Features in JDK 23: Simplifying Java with Module Import Declarations with JEP 476

As Java evolves, simplifying code and improving developer productivity remain priorities. JEP 476 introduces a new feature in JDK 23: Module Import Declarations. This feature aims to streamline the process of importing multiple packages from a module, enhancing code readability and reducing boilerplate. What is JEP 476? JEP 476 proposes the ability to import all packages exported by a module …

Read More »

Even More Opentelemetry!

I continue to work on my Opentelemetry demo. Its main idea is to showcase traces across various technology stacks, including asynchronous communication via an MQTT queue. Recently, I added a couple of components and changed the architecture. Here are some noteworthy learnings; note that some of them might not be entirely connected to OpenTelemetry. Here’s an updated diagram. New components …

Read More »

Why is Kubernetes Debugging so Problematic?

The Immutable Nature of Containers The Limitations of kubectl exec Avoiding Direct Modifications Enter Ephemeral Containers Using kubectl debug Practical Application of Ephemeral Containers Security Considerations Interlude: The Role of Observability Command Line Debugging Connecting a Standard IDE for Remote Debugging Conclusion Debugging application issues in a Kubernetes cluster can often feel like navigating a labyrinth. Containers are ephemeral by …

Read More »

Java on Visual Studio Code May 2024 Update – New AI Feature, Spring Updates

Hi everyone, welcome to the May update for Visual Studio Code for Java! In this articlem we are going to share an exciting new AI related feature for Java developers on Visual Studio Code. In addition, there will be several important Spring updates, so let’s get started. Rewriting your Java code with Copilot-based suggestions As our code undergoes updates and …

Read More »

Foojay Podcast #53: JCON Report, Part 5 – CQRS, JOOQ, GraphQL, API, Vaadin, OpenRewrite, ErrorProne, Gateways, Proxies,…

This is the final part of the JCON interviews. Did I save the best for last? It’s up to you to decide… In this episode you’ll hear Simon Martinelli, Nicolas Fränkel, Marcus Hellberg, Rick Ossendrijver, and Abdel Sghiouar. We talked about a bunch of topics like evolving your APIs, GraphQL, Java versus Kotlin versus Rust, Vaadin, AI and ChatGPT, OpenRewrite, …

Read More »