<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Geertjan Wielenga on foojay.io - Friends Of OpenJDK</title><link>https://foojay.io/today/author/geertjan-wielenga/</link><description>Articles written by Geertjan Wielenga on foojay.io - Friends Of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 08 Sep 2026 08:29:37 +0000</lastBuildDate><atom:link href="https://foojay.io/today/author/geertjan-wielenga/index.xml" rel="self" type="application/rss+xml"/><item><title>From OpenTelemetry to DuckDB</title><link>https://foojay.io/today/from-opentelemetry-to-duckdb/</link><pubDate>Tue, 08 Sep 2026 08:29:37 +0000</pubDate><guid>https://foojay.io/today/from-opentelemetry-to-duckdb/</guid><description>&lt;p&gt;Observability platforms generally expect you to do your analysis inside them, using their query language and their dashboards. That works for the questions you already know you have. It works less well for the ad-hoc ones: &lt;em&gt;&lt;strong&gt;a quick percentile&lt;/strong&gt;&lt;/em&gt; , &lt;em&gt;&lt;strong&gt;a pivot by status code&lt;/strong&gt;&lt;/em&gt; , or &amp;ldquo;&lt;em&gt;&lt;strong&gt;which service is actually eating the latency budget?&lt;/strong&gt;&lt;/em&gt;&amp;rdquo; once the data is in front of you.&lt;/p&gt;&#10;&lt;p&gt;This article describes a small pipeline for that kind of question. On one side is &lt;a href="https://duckdb.org" target="_blank" rel="noopener noreferrer"&gt;DuckDB&lt;/a&gt;, the in-process analytical database that reads CSV, JSON and Parquet directly. On the other is the &lt;a href="https://github.com/dash0hq/dash0-cli" target="_blank" rel="noopener noreferrer"&gt;Dash0 CLI&lt;/a&gt;, which pulls OpenTelemetry spans, logs, metrics and traces out of &lt;a href="https://www.dash0.com" target="_blank" rel="noopener noreferrer"&gt;Dash0&lt;/a&gt; and prints them as CSV or JSON.&lt;/p&gt;</description></item><item><title>NetBeans DataWrangler: Query, Convert, and Edit Data Analytics Files</title><link>https://foojay.io/today/netbeans-datawrangler-query-convert-and-edit-data-analytics-files/</link><pubDate>Sun, 30 Aug 2026 10:25:43 +0000</pubDate><guid>https://foojay.io/today/netbeans-datawrangler-query-convert-and-edit-data-analytics-files/</guid><description>&lt;p&gt;&lt;a href="https://github.com/geertjanw/Apache-NetBeans-Data-Wrangler" target="_blank" rel="noopener noreferrer"&gt;Apache NetBeans DataWrangler&lt;/a&gt; brings the file formats of data analytics into Apache NetBeans 31: CSV, &lt;a href="https://parquet.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Parquet&lt;/a&gt;, JSON and Excel, the formats exchanged with pandas, Spark, R, dbt, Power BI and Excel itself.&lt;/p&gt;&#10;&lt;p&gt;You can query, convert, inspect, edit and analyze them without leaving the IDE. They open as documents with their own views and you can query them with SQL, join, aggregate and pivot them, convert them between formats, load them into tables and export the results. The SQL editor is enhanced with code completion, documentation, error checking and quick fixes for analytical SQL.&lt;/p&gt;</description></item><item><title>Running DuckDB's JDBC Driver in a GraalVM Native Image</title><link>https://foojay.io/today/running-duckdbs-jdbc-driver-in-a-graalvm-native-image/</link><pubDate>Sat, 29 Aug 2026 16:22:10 +0000</pubDate><guid>https://foojay.io/today/running-duckdbs-jdbc-driver-in-a-graalvm-native-image/</guid><description>&lt;p&gt;&lt;a href="https://duckdb.org/" target="_blank" rel="noopener noreferrer"&gt;DuckDB&lt;/a&gt; is an in-process analytical database. You add one JAR to a Java project and get a SQL engine that reads CSV, Parquet, and JSON files directly, with no server to run.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://www.graalvm.org/jdk25/reference-manual/native-image/" target="_blank" rel="noopener noreferrer"&gt;GraalVM Native Image&lt;/a&gt; compiles a Java program ahead of time into a standalone executable that starts in milliseconds and needs no JVM on the target machine.&lt;/p&gt;&#10;&lt;p&gt;Combining the two produces a data tool that is distributed as a single binary, like a Go or Rust program, while using Java libraries.&lt;/p&gt;</description></item><item><title>DuckDB in Spring Batch: Replace In-Memory Java Loops with One SQL Statement</title><link>https://foojay.io/today/duckdb-in-spring-batch-replace-in-memory-java-loops-with-one-sql-statement/</link><pubDate>Tue, 11 Aug 2026 13:34:43 +0000</pubDate><guid>https://foojay.io/today/duckdb-in-spring-batch-replace-in-memory-java-loops-with-one-sql-statement/</guid><description>&lt;p&gt;Spring Batch jobs usually follow the same pattern: an &lt;code&gt;ItemReader&lt;/code&gt; streams rows, an &lt;code&gt;ItemProcessor&lt;/code&gt; transforms each one, and an &lt;code&gt;ItemWriter&lt;/code&gt; writes them out, chunk by chunk. A chunk-oriented step wires those three pieces together:&lt;/p&gt;&#10;&lt;pre class="EnlighterJSRAW" data-enlighter-language="generic"&gt;new StepBuilder(&amp;#34;transform&amp;#34;, jobRepository)&#10; .&amp;lt;Order, Summary&amp;gt;chunk(1_000, transactionManager)&#10; .reader(reader) // stream rows&#10; .processor(processor) // transform each row&#10; .writer(writer) // write the chunk&#10; .build();&lt;/pre&gt;&lt;p&gt;&lt;em&gt;The chunk-oriented processing model (&lt;a href="https://docs.spring.io/spring-batch/reference/step/chunk-oriented-processing.html" target="_blank" rel="noopener noreferrer"&gt;Spring Batch reference&lt;/a&gt;).&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;That pattern works well for moving records between systems.&lt;/p&gt;</description></item><item><title>Embedding DuckDB in a Maven App (and Using It for Things That Aren't Databases)</title><link>https://foojay.io/today/embedding-duckdb-in-a-maven-app-and-using-it-for-things-that-arent-databases/</link><pubDate>Thu, 06 Aug 2026 08:46:28 +0000</pubDate><guid>https://foojay.io/today/embedding-duckdb-in-a-maven-app-and-using-it-for-things-that-arent-databases/</guid><description>&lt;p&gt;&lt;a href="https://duckdb.org/" target="_blank" rel="noopener noreferrer"&gt;DuckDB&lt;/a&gt; is described as &amp;ldquo;SQLite for analytics,&amp;rdquo; which is true: it&amp;rsquo;s an in-process database engine that runs inside your application, with no server to install or manage. What&amp;rsquo;s less obvious from that description is that &lt;strong&gt;you can get value out of it without ever creating a database at all&lt;/strong&gt;. Because it can query CSV, JSON, and Parquet files directly — local or over HTTP — it works perfectly well as an embedded data-crunching library that happens to speak SQL.&lt;/p&gt;</description></item><item><title>How to Create a Spring Boot Fraud Scoring Service</title><link>https://foojay.io/today/how-to-create-a-spring-boot-fraud-scoring-service/</link><pubDate>Fri, 31 Jul 2026 08:45:43 +0000</pubDate><guid>https://foojay.io/today/how-to-create-a-spring-boot-fraud-scoring-service/</guid><description>&lt;p&gt;Most Java teams who want a machine learning model in production end up standing up a Python service and calling it over HTTP. That works, but it buys you, as a Java developer, a second runtime, a second deployment pipeline, a network hop on every prediction, and a team boundary that turns retraining into someone else&amp;rsquo;s ticket.&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.deepnetts.com/" target="_blank" rel="noopener noreferrer"&gt;Deep Netts&lt;/a&gt; removes that split: it&amp;rsquo;s a pure-Java deep learning library, so the model trains in Java, serializes to a file, and loads back into your Spring Boot application as an ordinary bean. Predictions become in-process method calls measured in microseconds, with nothing extra to deploy, secure, or monitor.&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Toward a Durable Spring PetClinic</title><link>https://foojay.io/today/toward-a-durable-spring-petclinic/</link><pubDate>Sun, 19 Jul 2026 18:06:06 +0000</pubDate><guid>https://foojay.io/today/toward-a-durable-spring-petclinic/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;&#10;&lt;p&gt;&lt;strong&gt;Durable Execution&lt;/strong&gt; is a way of running code so that its progress survives failure. A normal program keeps its state in memory: if the process crashes, the machine reboots, or a network call times out halfway through a multi-step operation, that state is gone and the work is left half-done.&lt;/p&gt;&#10;&lt;p&gt;Temporal, the Durable Execution platform, persists every step of a process to its &lt;strong&gt;Event History&lt;/strong&gt; — a durable, append-only log of Events — so that after any failure the work resumes exactly where it left off, as if the crash never happened.&lt;/p&gt;</description></item><item><title>Temporal Is to Your Code What a Database Is to Your Data</title><link>https://foojay.io/today/temporal-is-to-your-code-what-a-database-is-to-your-data/</link><pubDate>Sat, 11 Jul 2026 10:31:54 +0000</pubDate><guid>https://foojay.io/today/temporal-is-to-your-code-what-a-database-is-to-your-data/</guid><description>&lt;p&gt;&lt;strong&gt;Once upon a time, applications managed their own data files. Every program hand-rolled its own locking, its own crash recovery, its own consistency guarantees. Every program did it badly, in its own unique way.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;Then the relational database arrived and made a deal with application developers: &lt;em&gt;&lt;strong&gt;you declare what you want, and I guarantee it survives&lt;/strong&gt;.&lt;/em&gt; Atomicity, durability, crash recovery: all of it moved out of application code and into a dedicated platform. Nobody writes their own file-based transaction log anymore.&lt;/p&gt;</description></item><item><title>"This Can't Possibly Work": What I Learned at a Temporal.io Workshop</title><link>https://foojay.io/today/this-cant-possibly-work-what-i-learned-at-a-temporal-io-workshop-on-durable-execution/</link><pubDate>Fri, 10 Jul 2026 08:41:22 +0000</pubDate><guid>https://foojay.io/today/this-cant-possibly-work-what-i-learned-at-a-temporal-io-workshop-on-durable-execution/</guid><description>&lt;p&gt;&lt;strong&gt;When developers first hear about &lt;a href="https://temporal.io/" target="_blank" rel="noopener noreferrer"&gt;Temporal&lt;/a&gt;, they tend to move through a predictable sequence of emotions. First comes disbelief — the claim that your application can crash mid-execution and simply pick up where it left off, variables intact, sounds like nonsense. Then comes irritation that anyone would even say such a thing is possible. Then they try it, discover it actually works, and get very excited. And finally they ask the only question that matters: &lt;em&gt;how?&lt;/em&gt;&lt;/strong&gt;&#10;&lt;img src="https://foojay.io/today/this-cant-possibly-work-what-i-learned-at-a-temporal-io-workshop-on-durable-execution/IMG_2977-1024x768.jpeg" alt="" width="1024" height="768" loading="lazy" decoding="async"&gt;&lt;/p&gt;</description></item><item><title>Observing Apache NetBeans with OpenTelemetry and Dash0</title><link>https://foojay.io/today/observing-apache-netbeans-with-opentelemetry-and-dash0/</link><pubDate>Sun, 14 Jun 2026 22:03:09 +0000</pubDate><guid>https://foojay.io/today/observing-apache-netbeans-with-opentelemetry-and-dash0/</guid><description>&lt;p&gt;&lt;em&gt;What happens when you point an observability agent at your IDE rather than your application?&lt;/em&gt;&lt;/p&gt;&#10;&lt;h2 id="the-question-nobody-thinks-to-ask"&gt;The question nobody thinks to ask&lt;/h2&gt;&#10;&lt;p&gt;Observability is something we do to our applications. We instrument services, add trace context to HTTP requests, collect JVM heap metrics, ship logs to a backend. The IDE we use to write that instrumentation is — by convention — invisible. It just runs. When it is slow, we assume it is busy. When it crashes, we restart it. We have no data.&lt;/p&gt;</description></item><item><title>"Agentic" Was Everywhere at Money20/20 Amsterdam</title><link>https://foojay.io/today/agentic-was-everywhere-at-money20-20-amsterdam-once-i-started-looking/</link><pubDate>Fri, 05 Jun 2026 08:55:48 +0000</pubDate><guid>https://foojay.io/today/agentic-was-everywhere-at-money20-20-amsterdam-once-i-started-looking/</guid><description>&lt;p&gt;&lt;strong&gt;I walked the floor at &lt;a href="https://www.money2020.com/" target="_blank" rel="noopener noreferrer"&gt;Money20/20&lt;/a&gt; in Amsterdam with a simple little mission: count the first ten vendor booths using &amp;ldquo;AI,&amp;rdquo; &amp;ldquo;agent,&amp;rdquo; or &amp;ldquo;agentic&amp;rdquo; in their pitch.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;My first impression was that this would be hard. Hundreds of organizations, and the buzzwords felt oddly absent — payments, core banking, compliance, the usual fintech furniture, but not the wall-to-wall &amp;ldquo;agentic everything&amp;rdquo; I&amp;rsquo;d braced for. I jotted down my first ten and thought: &lt;em&gt;&lt;strong&gt;huh, AI is barely here&lt;/strong&gt;.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>From Zero (Really Zero) to OpenTelemetry</title><link>https://foojay.io/today/from-zero-really-zero-to-opentelemetry/</link><pubDate>Tue, 19 May 2026 13:36:11 +0000</pubDate><guid>https://foojay.io/today/from-zero-really-zero-to-opentelemetry/</guid><description>&lt;p&gt;Here&amp;rsquo;s a super awesome prompt (e.g., for Claude Code) that you can use with &lt;a href="https://github.com/dash0hq/agent-skills" target="_blank" rel="noopener noreferrer"&gt;https://github.com/dash0hq/agent-skills&lt;/a&gt;, the free collection of skills for AI coding agents to make applications observable with OpenTelemetry, such as with &lt;a href="https://www.dash0.com/" target="_blank" rel="noopener noreferrer"&gt;Dash0&lt;/a&gt;.&lt;/p&gt;&#10;&lt;p&gt;And the end result is this, a view into the traces of your application (without anything at all at the start of the process).&#10;&lt;img src="https://foojay.io/today/from-zero-really-zero-to-opentelemetry/dash0-foojay-2-1024x545.jpg" alt="" width="1024" height="545" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;h2 id="the-super-awesome-prompt"&gt;&lt;strong&gt;The Super Awesome Prompt&lt;/strong&gt;&lt;/h2&gt;&#10;&lt;p&gt;Take a careful look below: before doing this prompt, not only do we not have an application that is instrumented with OpenTelemetry yet. Not only do we not have the agent we need to do the instrumentation yet.&lt;/p&gt;</description></item><item><title>Foojay Podcast #94: More Than a Blog: How Foojay Connects, Sustains, and Evolves the Java Community</title><link>https://foojay.io/today/foojay-podcast-94/</link><pubDate>Mon, 04 May 2026 06:26:00 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-94/</guid><description>&lt;p&gt;Foojay.io, the website for the Friends Of OpenJDK, is turning six years old. To celebrate, Frank Delporte headed to JCON in Cologne, Germany, and sat down with twelve members of the Java community to talk about what Foojay means to them, what they learn from each other, and how the community is evolving.&lt;/p&gt;&#10;&lt;p&gt;This episode covers a lot of ground. Sharat Chandar reflects on 25 years in the Java community and why the people are what keep the language alive. Markus Westergren and Iryna Dohndorf both focus on a theme that comes up again and again: developer sustainability. Not just green software, but how you stay healthy, grounded, and relevant when AI is changing everything around you. Markus and his wife researched how developers are reacting to AI, from ignoring it completely to transforming everything they do. Iryna talks about building resilience and robustness as skills, not afterthoughts.&lt;/p&gt;</description></item><item><title>From Zero to Full Observability with Dash0</title><link>https://foojay.io/today/from-zero-to-full-observability-with-dash0/</link><pubDate>Sat, 04 Apr 2026 06:35:47 +0000</pubDate><guid>https://foojay.io/today/from-zero-to-full-observability-with-dash0/</guid><description>&lt;p&gt;This guide walks through the complete process of deploying a minimal Spring Boot service to Kubernetes and adding full observability using the &lt;a href="https://www.dash0.com/docs/dash0/monitoring/kubernetes/about-kubernetes" target="_blank" rel="noopener noreferrer"&gt;Dash0 Kubernetes Operator&lt;/a&gt; — without making any changes to the application code.&lt;/p&gt;&#10;&lt;p&gt;&lt;a href="https://www.dash0.com/docs/dash0" target="_blank" rel="noopener noreferrer"&gt;Dash0&lt;/a&gt; is an OpenTelemetry-native observability platform that collects and correlates traces, metrics, and logs, and provides infrastructure monitoring across Kubernetes resources — pods, nodes, namespaces, deployments, daemonsets, statefulsets, jobs, and cronjobs — as well as cloud infrastructure such as AWS. Its Kubernetes operator can automatically instrument workloads at the pod level, with no changes required to application code or container images.&#10;&lt;img src="https://foojay.io/today/from-zero-to-full-observability-with-dash0/kubernetes-dash0-1024x581.jpg" alt="" width="1024" height="581" loading="lazy" decoding="async"&gt;&lt;/p&gt;</description></item><item><title>Announcing: Sustainability for Java Developers</title><link>https://foojay.io/today/announcing-sustainability-for-java-developers-a-new-collaborative-guide-from-the-foojay-io-community/</link><pubDate>Mon, 02 Feb 2026 11:04:54 +0000</pubDate><guid>https://foojay.io/today/announcing-sustainability-for-java-developers-a-new-collaborative-guide-from-the-foojay-io-community/</guid><description>&lt;p&gt;Java developers from around the world are writing a book about a question that&amp;rsquo;s becoming impossible to ignore: how do we write software that&amp;rsquo;s good for both our projects and the planet?&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;Sustainability for Java Developers: Towards an Understanding of Sustainable Java Software Development&lt;/em&gt; is now freely available on Leanpub, bringing together Java Champions, architects, and technical writers to look at sustainability from every angle.&lt;/p&gt;&#10;&lt;figure class="size-large is-resized"&gt;&#10; &lt;img src="https://foojay.io/today/announcing-sustainability-for-java-developers-a-new-collaborative-guide-from-the-foojay-io-community/sustainabilitybook-793x1024.jpg" alt="" width="793" height="1024" style="width:277px;height:auto" loading="lazy" class="is-zoomable"&gt;&lt;/figure&gt;&#10;&#10;&lt;p&gt;The book covers everything from the environmental footprint of our data centers to the ethics of open source supply chains, from efficient data formats to the often-overlooked topic of career longevity.&lt;/p&gt;</description></item><item><title>Webinar: "Moving Applications From JDK 21 to JDK 25: What You Need to Know"</title><link>https://foojay.io/today/webinar-moving-applications-from-jdk-21-to-jdk-25-what-you-need-to-know/</link><pubDate>Mon, 26 Jan 2026 14:14:32 +0000</pubDate><guid>https://foojay.io/today/webinar-moving-applications-from-jdk-21-to-jdk-25-what-you-need-to-know/</guid><description>&lt;p&gt;JDK 25 has arrived as the latest long-term support (LTS) release for Java, bringing performance improvements and enhanced stability for modern applications. If your organization is running JDK 21, now is the time to start planning your migration path.&lt;/p&gt;&#10;&lt;h2 id="why-upgrade"&gt;Why Upgrade?&lt;/h2&gt;&#10;&lt;p&gt;Each new LTS release represents years of refinements, optimizations, and new capabilities. JDK 25 builds on the foundation of JDK 21 while delivering the reliability that enterprise applications demand. But understanding what&amp;rsquo;s changed—and what might break—is essential for a smooth transition.&lt;/p&gt;</description></item><item><title>Super Early Bird Tickets: Voxxed Days Amsterdam</title><link>https://foojay.io/today/super-early-bird-tickets-voxxed-days-amsterdam/</link><pubDate>Mon, 06 Oct 2025 12:37:44 +0000</pubDate><guid>https://foojay.io/today/super-early-bird-tickets-voxxed-days-amsterdam/</guid><description>&lt;p&gt;After this year&amp;rsquo;s success, the Voxxed Amsterdam team is proud to announce that next year will be even bigger, with more speakers, breakouts, sponsors, and attendees. We warmly invite you to join and meet us at the &lt;strong&gt;JUG Square&lt;/strong&gt; on &lt;strong&gt;April 1–2, 2026&lt;/strong&gt; in Amsterdam.&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;Date:&lt;/strong&gt; April 1–2, 2026&lt;br&gt;&#10;&lt;strong&gt;Location:&lt;/strong&gt; Pathé Amsterdam (North)&lt;br&gt;&#10;&lt;strong&gt;Details &amp;amp; tickets:&lt;/strong&gt; &lt;a href="http://amsterdam.voxxeddays.com" target="_blank" rel="noopener noreferrer"&gt;amsterdam.voxxeddays.com&lt;/a&gt;&lt;/p&gt;&#10;&lt;h3 id="speaker-line-up"&gt;Speaker Line-up&lt;/h3&gt;&#10;&lt;p&gt;These industry leaders will be sharing their unique insights at the conference:&lt;/p&gt;</description></item><item><title>Take the State of Java 2025 Survey</title><link>https://foojay.io/today/take-the-state-of-java-2025-survey/</link><pubDate>Mon, 06 Oct 2025 12:23:17 +0000</pubDate><guid>https://foojay.io/today/take-the-state-of-java-2025-survey/</guid><description>&lt;p&gt;Do you want to know which Java JDK distribution is used where for what and when? The time has come again to take the State of Java Survey and share insights while gaining Java ecosystem knowledge.&lt;/p&gt;&#10;&lt;p&gt;All those participating will get the complete research, which can be of great benefit in your technology choices in the Java ecosystem.&lt;/p&gt;&#10;&lt;p&gt;Click the image below to get started:&#10;&lt;a href="https://survey.alchemer.com/s3/8466906/Azul-State-of-Java-Survey" target="_blank" rel="noopener noreferrer"&gt;&lt;img src="https://foojay.io/today/take-the-state-of-java-2025-survey/which-1024x387.png" alt="" width="1024" height="387" loading="lazy" decoding="async"&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;Or simply click this link:&lt;/p&gt;</description></item><item><title>Ai4Devs Amsterdam: Successful Inaugural Developer-Focused AI Conference</title><link>https://foojay.io/today/ai4devs-amsterdam-successful-inaugural-developer-focused-ai-conference/</link><pubDate>Fri, 03 Oct 2025 09:37:43 +0000</pubDate><guid>https://foojay.io/today/ai4devs-amsterdam-successful-inaugural-developer-focused-ai-conference/</guid><description>&lt;p&gt;&lt;strong&gt;The &lt;a href="https://amsterdam.ai4devs.io/" target="_blank" rel="noopener noreferrer"&gt;inaugural AI4Devs conference in Amsterdam&lt;/a&gt;, held recently Friday 19 September, a collaboration between Java Champion Jonathan Vila, &lt;a href="https://www.iodigital.com/en" target="_blank" rel="noopener noreferrer"&gt;local developer agency IO Digital&lt;/a&gt; (in particular Joost Kaan, Arno Koehler, and Michel Blankenstein), and the Friends Of OpenJDK (Foojay.io), proved to be a resounding success, bringing together approximately 200 developers at Amsterdam&amp;rsquo;s iO Digital Campus.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;ING, Azul, Qodo, and ContentStack&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;Co-sponsored and co-organized with ING and Azul, together with Qodo and ContentStack, the event featured standout keynote sessions from Josh Long, of SpringBoot fame, and Pratik Patel, from Azul, who delivered insights on AI in the context of Spring and on increasing the speed of Java-based applications, especially in the context of AI-oriented applications.&#10;&lt;img src="https://foojay.io/today/ai4devs-amsterdam-successful-inaugural-developer-focused-ai-conference/IMG_6230-1024x683.jpg" alt="" width="1024" height="683" loading="lazy" decoding="async"&gt;&lt;/p&gt;</description></item><item><title>CodeRabbit Tutorial for Java Developers</title><link>https://foojay.io/today/coderabbit-tutorial-for-java-developers/</link><pubDate>Mon, 28 Jul 2025 12:43:19 +0000</pubDate><guid>https://foojay.io/today/coderabbit-tutorial-for-java-developers/</guid><description>&lt;p&gt;&lt;a href="https://www.coderabbit.ai/" title="CodeRabbit" target="_blank" rel="noopener noreferrer"&gt;CodeRabbit&lt;/a&gt; is an AI-powered code review tool that integrates seamlessly with your Git workflow to provide intelligent, automated code reviews.&lt;/p&gt;&#10;&lt;p&gt;For Java developers, CodeRabbit offers specialized analysis that understands Java syntax, best practices, and common patterns.&lt;/p&gt;&#10;&lt;h2 id="getting-started"&gt;&lt;strong&gt;Getting Started&lt;/strong&gt;&lt;/h2&gt;&#10;&lt;h3 id="prerequisites"&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;A GitHub, GitLab, Azure DevOps, or Bitbucket repository.&lt;/li&gt;&#10;&lt;li&gt;Java project with standard structure (Maven or Gradle).&lt;/li&gt;&#10;&lt;li&gt;Admin access to your repository.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="setup-process"&gt;&lt;strong&gt;Setup Process&lt;/strong&gt;&lt;/h3&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;Install CodeRabbit&lt;/strong&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Visit &lt;a href="https://coderabbit.ai/" target="_blank" rel="noopener noreferrer"&gt;CodeRabbit.ai&lt;/a&gt;.&lt;/li&gt;&#10;&lt;li&gt;Sign up using your credentials, while noting that CodeRabbit is free for OSS, supports GitHub, GitLab, Azure DevOps, and Bitbucket.&lt;/li&gt;&#10;&lt;li&gt;Grant necessary permissions to your repositories.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Repository Configuration&lt;/strong&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Select the Java repositories you want CodeRabbit to review.&lt;/li&gt;&#10;&lt;li&gt;CodeRabbit automatically detects Java projects and configures appropriate rules.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Initial Setup Verification&lt;/strong&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Create a test pull request with a simple Java change.&lt;/li&gt;&#10;&lt;li&gt;Verify CodeRabbit comments appear within minutes.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="core-features-for-java-development"&gt;&lt;strong&gt;Core Features for Java Development&lt;/strong&gt;&lt;/h2&gt;&#10;&lt;h3 id="1-code-quality-analysis"&gt;&lt;strong&gt;1. Code Quality Analysis&lt;/strong&gt;&lt;/h3&gt;&#10;&lt;p&gt;CodeRabbit analyzes your Java code for:&lt;/p&gt;</description></item><item><title>Foojay Podcast #76: DevBcn Report, Part 1 – Learn from the Community</title><link>https://foojay.io/today/foojay-podcast-76/</link><pubDate>Mon, 21 Jul 2025 06:41:00 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-76/</guid><description>&lt;p&gt;In early July, the DevBcn conference in Barcelona featured a diverse lineup of speakers, covering topics across multiple technology domains. Geertjan Wielenga took the camera and microphone with him to Spain. Together with Nacho Cougil and Jonathan Vila, two of the organizers, he spoke with many visitors about what they like most in Java, how AI influences their work, and what is important to them in the work they do.&lt;/p&gt;</description></item><item><title>Prime Time: The High Performance Java Event</title><link>https://foojay.io/today/prime-time-the-high-performance-java-event/</link><pubDate>Tue, 08 Jul 2025 07:05:00 +0000</pubDate><guid>https://foojay.io/today/prime-time-the-high-performance-java-event/</guid><description>&lt;p&gt;&lt;strong&gt;Java is the engine behind mission-critical applications and end user experiences. From faster response times to consistent performance, Java can have a significant impact on business results and cloud costs.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;Join Azul and leading voices from the Java community for Prime Time, a dynamic virtual event dedicated to innovations, strategies, and real-world insights that power high-performance Java estates. No matter where you&amp;rsquo;re running your apps – on-prem or in the cloud, or if you&amp;rsquo;re looking to modernize legacy Java workloads – when performance, elasticity, scale and cloud cost matter, &lt;strong&gt;Make It Prime&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>New AI Conference For And By Developers</title><link>https://foojay.io/today/new-ai-conference-for-and-by-developers/</link><pubDate>Mon, 07 Jul 2025 11:50:54 +0000</pubDate><guid>https://foojay.io/today/new-ai-conference-for-and-by-developers/</guid><description>&lt;p&gt;AI4DEVS, &lt;strong&gt;September 19, 2025&lt;/strong&gt; in Amsterdam, is created &lt;strong&gt;for and by developers working with AI technologies&lt;/strong&gt; . Our mission is simple: share practical, usable knowledge with real use cases and code. Whether you&amp;rsquo;re an experienced AI engineer or just starting to explore machine learning in your applications, AI4DEVS offers &lt;strong&gt;valuable knowledge for every level&lt;/strong&gt; . All the details are here: &lt;a href="https://amsterdam.ai4devs.io/" target="_blank" rel="noopener noreferrer"&gt;https://amsterdam.ai4devs.io/&lt;/a&gt;&#10;&lt;a href="https://amsterdam.ai4devs.io/" target="_blank" rel="noopener noreferrer"&gt;&lt;img src="https://foojay.io/today/new-ai-conference-for-and-by-developers/ai4devs0-1024x616.jpg" alt="" width="1024" height="616" loading="lazy" decoding="async"&gt;&lt;/a&gt; &lt;a href="https://amsterdam.ai4devs.io/" target="_blank" rel="noopener noreferrer"&gt;&lt;img src="https://foojay.io/today/new-ai-conference-for-and-by-developers/ai4devs-730x1024.png" alt="" width="730" height="1024" loading="lazy" decoding="async"&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;All the details are here: &lt;a href="https://amsterdam.ai4devs.io/" target="_blank" rel="noopener noreferrer"&gt;https://amsterdam.ai4devs.io/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Azul and JetBrains Collaborate to Enhance Runtime Performance for Kotlin Workloads</title><link>https://foojay.io/today/azul-and-jetbrains-collaborate-to-enhance-runtime-performance-for-kotlin-workloads/</link><pubDate>Mon, 26 May 2025 08:23:56 +0000</pubDate><guid>https://foojay.io/today/azul-and-jetbrains-collaborate-to-enhance-runtime-performance-for-kotlin-workloads/</guid><description>&lt;p&gt;&lt;strong&gt;SUNNYVALE, Calif., — May 20, 2025 — &lt;a href="https://www.azul.com/" target="_blank" rel="noopener noreferrer"&gt;Azul&lt;/a&gt;, the only company 100% focused on Java, and &lt;a href="https://www.jetbrains.com/" target="_blank" rel="noopener noreferrer"&gt;JetBrains&lt;/a&gt;, the leading provider of professional software development tools and creator of the Kotlin programming language, today announced a strategic technical collaboration to enhance the runtime performance and scalability of web and server-side Kotlin applications. This strategic collaboration empowers Kotlin teams to accelerate development cycles and optimize application performance, helping them support their business priorities while driving greater operational efficiency.&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Book Review: Raising Young Coders</title><link>https://foojay.io/today/book-review-raising-young-coders/</link><pubDate>Wed, 07 May 2025 07:04:09 +0000</pubDate><guid>https://foojay.io/today/book-review-raising-young-coders/</guid><description>&lt;p&gt;&amp;ldquo;&lt;a href="https://www.amazon.com/Raising-Young-Coders-Teaching-Programming/dp/B0DVBQZ483/" target="_blank" rel="noopener noreferrer"&gt;Raising Young Coders&lt;/a&gt;&amp;rdquo; by Cassandra Chin: A Parent&amp;rsquo;s Guide to Inspiring the Next Generation of Technologists&lt;/p&gt;&#10;&lt;p&gt;&lt;strong&gt;An Author Who Understands Both Sides&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&amp;ldquo;Raising Young Coders: A Parent&amp;rsquo;s Guide to Teaching Programming at Home&amp;rdquo; by Cassandra Chin is an invaluable resource for parents seeking to introduce their children to the world of technology in a fun, accessible way.&lt;/p&gt;&#10;&lt;p&gt;As a young computer science student who has been teaching kids&amp;rsquo; programming workshops since age 14, Chin brings both technical expertise and genuine understanding of children&amp;rsquo;s learning styles to this comprehensive guide.&lt;/p&gt;</description></item><item><title>Foojay Podcast #70: Celebrating 5 Years of Foojay</title><link>https://foojay.io/today/foojay-podcast-70/</link><pubDate>Fri, 25 Apr 2025 08:00:00 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-70/</guid><description>&lt;p&gt;On April 25, 2020, &lt;a href="https://foojay.io/today/foojay-a-place-for-friends-of-openjdk/"&gt;Geertjan Wielenga published the first Foojay post&lt;/a&gt;. Yes, we are celebrating 5 years since the Friends Of OpenJDK website launch! Today, more than 1,600 posts are on the site, written by over 250 authors. And there is much more to discover within the Foojay world&amp;hellip;&lt;/p&gt;&#10;&lt;p&gt;In this podcast, we look at how Foojay started with founder Geertjan Wielenga. We&amp;rsquo;ll also hear from Gerrit Grunwald about how Foojay&amp;rsquo;s Disco API has become part of your daily work without you realizing it. We also have several of our regular authors and podcast guests who share how Foojay has influenced them (and vice versa).&lt;/p&gt;</description></item><item><title>Foojay Podcast #69: All Things Java at VoxxedDays Amsterdam</title><link>https://foojay.io/today/foojay-podcast-69/</link><pubDate>Mon, 14 Apr 2025 11:23:24 +0000</pubDate><guid>https://foojay.io/today/foojay-podcast-69/</guid><description>&lt;p&gt;On April 3rd, the first &lt;a href="https://amsterdam.voxxeddays.com/" target="_blank" rel="noopener noreferrer"&gt;VoxxedDays event in Amsterdam&lt;/a&gt; took place. VoxxedDays are tech events organized by local community groups, with support from the Devoxx team. Geertjan Wielenga brought along a camera and microphone and spoke with many of the attendees.&lt;/p&gt;&#10;&lt;p&gt;This is the first Foojay podcast ever to feature more than 20 guests! Geertjan asked the same two questions to many of conference visitors: &amp;ldquo;Tell us who you are and what excites you about the technology landscape?&amp;rdquo; and &amp;ldquo;What are two tips or insights you&amp;rsquo;d like to share?&amp;rdquo;&lt;/p&gt;</description></item><item><title>Join the Celebration of 30 Years of Java</title><link>https://foojay.io/today/join-the-celebration-of-30-years-of-java/</link><pubDate>Mon, 03 Feb 2025 08:03:07 +0000</pubDate><guid>https://foojay.io/today/join-the-celebration-of-30-years-of-java/</guid><description>&lt;p&gt;&lt;strong&gt;On Thursday, March 13, Azul is hosting a virtual celebration of 30 years of Java, starting at 09:00 PST / 17:00 GMT / 18:00 CET.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;In addition to discussion panels, including a Friends Of OpenJDK Panel with Marit Van Dijk, Ondro Mihályi, and Simon Martinelli, the highlighted speakers and topics of the program are:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&amp;ldquo;30 Years of Java&amp;rdquo; by Simon Ritter&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;AI for Busy Java Developers&amp;rdquo; by Frank Greco&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;Behind-the-Scenes Innovations in Java&amp;rdquo; by Venkat Subramaniam&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;Reading Code&amp;rdquo; by Marit van Dijk&lt;/li&gt;&#10;&lt;li&gt;&amp;ldquo;We Hate Code - The Joy of Maintaining Dead and Unused Code&amp;rdquo; by Gerrit Grunwald&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;&lt;a href="https://www.azul.com/duke-turns-30-celebrating-java/#agenda" target="_blank" rel="noopener noreferrer"&gt;The whole program is here.&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Encryption and Data Security Market Analysis: Market Analysis 2025</title><link>https://foojay.io/today/encryption-and-data-security-market-analysis-market-analysis-2025/</link><pubDate>Tue, 07 Jan 2025 09:01:13 +0000</pubDate><guid>https://foojay.io/today/encryption-and-data-security-market-analysis-market-analysis-2025/</guid><description>&lt;p&gt;The data encryption and security market continues to evolve as organizations face increasing demands for data protection while maintaining operational efficiency.&lt;/p&gt;&#10;&lt;p&gt;The market includes established solutions and innovative approaches to encrypted data processing and security.&lt;/p&gt;&#10;&lt;h2 id="market-overview"&gt;Market Overview&lt;/h2&gt;&#10;&lt;p&gt;The global encryption software market is driven by data protection regulations, Cloud adoption, and the need for secure data processing. Organizations seek solutions that balance robust security with practical operational capabilities.&lt;/p&gt;&#10;&lt;h2 id="competitive-landscape"&gt;Competitive Landscape&lt;/h2&gt;&#10;&lt;h3 id="anjuna"&gt;Anjuna&lt;/h3&gt;&#10;&lt;p&gt;&lt;a href="https://anjuna.io" target="_blank" rel="noopener noreferrer"&gt;Anjuna&lt;/a&gt; delivers baseline confidential computing capabilities focused on hardware-based security measures. Their platform implements routine encryption management through standard TEE integrations and common key management approaches. The solution provides fundamental confidential computing features while following accepted enterprise security patterns.&lt;/p&gt;</description></item><item><title>Incident Response Platform Comparison: Market Analysis 2025</title><link>https://foojay.io/today/incident-response-platform-comparison-market-analysis-2025/</link><pubDate>Thu, 02 Jan 2025 08:38:07 +0000</pubDate><guid>https://foojay.io/today/incident-response-platform-comparison-market-analysis-2025/</guid><description>&lt;p&gt;The incident response platform market continues to expand as organizations prioritize effective incident management in their Cloud-native environments and beyond.&lt;/p&gt;&#10;&lt;p&gt;The market features a range of solutions offering incident management capabilities, with varying approaches to enterprise and team needs.&lt;/p&gt;&#10;&lt;h2 id="market-overview"&gt;Market Overview&lt;/h2&gt;&#10;&lt;p&gt;The incident management market is driven by increasing Cloud complexity, rising downtime costs, and growing DevOps adoption.&lt;/p&gt;&#10;&lt;p&gt;Organizations are seeking solutions that can effectively integrate with their existing tools while providing streamlined incident response workflows.&lt;/p&gt;</description></item></channel></rss>