<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Videos on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/category/videos/</link><description>Recent content in Videos on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 09 Jul 2026 13:32:00 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/category/videos/index.xml" rel="self" type="application/rss+xml"/><item><title>The Java Story: A Film About All of Us</title><link>https://foojayio.github.io/website/today/the-java-story-a-film-about-all-of-us/</link><pubDate>Thu, 09 Jul 2026 08:43:59 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-java-story-a-film-about-all-of-us/</guid><description>&lt;p&gt;Every so often a story comes along that belongs to an entire community rather than any one company or person. The Java Story documentary by CultRepo is one of those. On July 17th at 7pm UTC, the official Java documentary premieres live on YouTube - if you&amp;rsquo;ve spent any significant part of your career working with Java (and I assume most Foojay readers have!), I really think you&amp;rsquo;d want to watch it!&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #16</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-16/</link><pubDate>Tue, 09 Jun 2026 18:28:33 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-16/</guid><description>&lt;p&gt;Over the past two weeks, the field of artificial intelligence has continued its remarkable pace of advancement. As AI becomes increasingly woven into the fabric of daily life, shaping how we work, communicate, and make decisions, it is both timely and valuable to step back and understand the broader trajectory of this technology. Whether the developments around us feel promising or challenging, one truth remains clear: AI is not simply going away. It is here to stay, and understanding its evolution is essential from many perspectives. Have you ever wondered what harness engineering is, how evals attempt to move traditional unit tests onto a probabilistic plane, or how AI is reshaping entire industries across various branches? Let&amp;rsquo;s start.&lt;/p&gt;</description></item><item><title>No Keys, No LLM: Building a Wikidata Definition API with Embabel</title><link>https://foojayio.github.io/website/today/embabel-spring-boot-wikidata-definition-api/</link><pubDate>Thu, 05 Mar 2026 08:00:25 +0000</pubDate><guid>https://foojayio.github.io/website/today/embabel-spring-boot-wikidata-definition-api/</guid><description>&lt;h2 id="h2-0-tl-dr"&gt;TL;DR&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;I built a &lt;strong&gt;Spring Boot 4&lt;/strong&gt; API that defines terms via &lt;strong&gt;Wikidata&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;The app is fully reproducible: &lt;strong&gt;no API keys&lt;/strong&gt; and &lt;strong&gt;no model installation&lt;/strong&gt; needed.&lt;/li&gt;
&lt;li&gt;Embabel orchestrates the pipeline as a sequence of actions to achieve the goal &lt;code&gt;DefinitionResult&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The logs show planning, execution, and typed object binding&amp;mdash;the most useful part for teaching agentic flows.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/TiuYS6K3HaU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;I wanted a demo that is &lt;strong&gt;simple&lt;/strong&gt; , &lt;strong&gt;reproducible&lt;/strong&gt; , and still &lt;strong&gt;shows agentic orchestration&lt;/strong&gt; in a way that&amp;rsquo;s easy to explain on video.&lt;/p&gt;</description></item><item><title>Shaping Jakarta Agentic AI Together</title><link>https://foojayio.github.io/website/today/shaping-jakarta-agentic-ai-together-watch-the-open-conversation/</link><pubDate>Mon, 02 Mar 2026 11:15:46 +0000</pubDate><guid>https://foojayio.github.io/website/today/shaping-jakarta-agentic-ai-together-watch-the-open-conversation/</guid><description>&lt;p&gt;Last week, Eclipse Foundation and Payara hosted &lt;em&gt;Jakarta Agentic AI, An Open Conversation&lt;/em&gt;, an open house Jakarta TechTalk session, exploring a brand new initiative under the Eclipse Foundation. If you could not join us live, the full recording is now available.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/92Iv-q6o1fQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;h2 id="h2-0-what-is-jakarta-agentic-ai"&gt;What is Jakarta Agentic AI?&lt;/h2&gt;
&lt;p&gt;Jakarta Agentic AI is an exploratory project looking at how AI agents could be built, deployed and run within Jakarta EE runtimes. As AI systems increasingly move from simple inference to autonomous, agent-based behaviour, the question becomes how these systems fit into enterprise Java environments that value reliability, security, and portability.&lt;/p&gt;</description></item><item><title>Personal Branding Tips for Java Developers</title><link>https://foojayio.github.io/website/today/watch-the-recording-diy-technical-marketing-for-java-developers/</link><pubDate>Thu, 26 Feb 2026 10:28:58 +0000</pubDate><guid>https://foojayio.github.io/website/today/watch-the-recording-diy-technical-marketing-for-java-developers/</guid><description>&lt;p&gt;The software development industry is more competitive than ever. Being a strong technical expert is essential, but on its own it is often not enough to grow your career or open new opportunities.&lt;/p&gt;
&lt;p&gt;In this short, practical talk&lt;em&gt;DIY Technical Marketing, Real World Tips For Building A Successful Developer Brand&lt;/em&gt; , delivered at &lt;a href="https://www.jfokus.se/" title="Jfokus 2026 conference" target="_blank" rel="noopener noreferrer"&gt;Jfokus 2026 conference&lt;/a&gt;
, Payara Community Manager Dominika Tasarz-Sochacka explores why personal branding matters for developers and how even small, intentional actions can make a real difference over time.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #13</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-13/</link><pubDate>Thu, 05 Feb 2026 21:12:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-13/</guid><description>&lt;p&gt;Two weeks have passed, and it is time to present a new collection of readings that may shape developments, utilization or ideas in the field of artificial intelligence in 2026.&lt;/p&gt;
&lt;p&gt;While significant activity characterizes the AI field, many unresolved research, design, and implementation challenges continue to impact progress. Future advancement depends heavily on understanding the nature of these challenges to approach probabilistic problems from the appropriate directions. This JC-AI newsletter features insightful interviews with key figures in the field, enabling readers to ask the right questions and compare visions of an &amp;lsquo;uncertain future&amp;rsquo; against current capabilities to maintain a grounded perspective.&lt;/p&gt;</description></item><item><title>First Experiments with Java on the LattePanda IOTA: An Alternative to Raspberry Pi?</title><link>https://foojayio.github.io/website/today/first-experiments-with-java-on-the-lattepanda-iota/</link><pubDate>Thu, 11 Dec 2025 09:13:14 +0000</pubDate><guid>https://foojayio.github.io/website/today/first-experiments-with-java-on-the-lattepanda-iota/</guid><description>&lt;p&gt;After years of experimenting with Raspberry Pi boards, Java, JavaFX, and &lt;a href="https://www.pi4j.com/" target="_blank" rel="noopener noreferrer"&gt;Pi4J&lt;/a&gt;
 to control electronics, I wanted to explore whether my knowledge and experience could be applied to similar boards from other providers. There are many alternatives available these days, based on ARM, Intel processors, and RISC-V architectures.&lt;/p&gt;
&lt;p&gt;I reached out to several suppliers to see if I could get evaluation copies, and I&amp;rsquo;m happy to share that I received my first box from DFRobot containing the &lt;a href="https://www.dfrobot.com/product-2989.html" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;LattePanda IOTA&lt;/strong&gt;&lt;/a&gt;
.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #11</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-11/</link><pubDate>Tue, 09 Dec 2025 16:12:01 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-11/</guid><description>&lt;p&gt;&lt;strong&gt;F&lt;/strong&gt;ourteen days have passed, and it is time to present a fresh collection of readings that could influence developments in the field of artificial intelligence.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;T&lt;/strong&gt;his newsletter explores the evolution of agentic AI systems, provides valuable insights into the Chain-of-Thought (CoT) approach, Vibe coding, and discusses the pattern-matching capabilities of LLMs. The newsletter features an insightful interview with Stuart J. Russell, known for his significant contributions to the AI field. Even more exciting is the published paper by Apple researchers titled &amp;lsquo;The Illusion of Thinking&amp;hellip;&amp;rsquo; and several immediate reactions to the authors&amp;rsquo; conclusions, which allow newsletter readers to observe current research challenges and scientific community responses. This provides readers with a vital picture of the state-of-the-art in AI research.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #10</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-10/</link><pubDate>Wed, 26 Nov 2025 18:39:40 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-10/</guid><description>&lt;p&gt;&lt;strong&gt;F&lt;/strong&gt;ourteen days have passed, and it is time to present a fresh collection of readings that could influence developments in the field of artificial intelligence.&lt;/p&gt;
&lt;p&gt;This newsletter focuses on examining how agentic AI systems improve accuracy, tutorials on agentic system architecture, and importnat security challenges arising from increased not only from agentic AI systems adoption. This edition of the AI newsletter includes compelling discussions and interviews about the future of AI and approaches.&lt;/p&gt;</description></item><item><title>Micrometer &amp; Prometheus in Spring Boot: Kafka Burger Orders</title><link>https://foojayio.github.io/website/today/micrometer-prometheus-in-spring-boot-kafka-burger-orders/</link><pubDate>Fri, 14 Nov 2025 10:13:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/micrometer-prometheus-in-spring-boot-kafka-burger-orders/</guid><description>&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/eSreg0xPGqo?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;👨‍💻 GitHub: &lt;a href="https://github.com/vinny59200/dukeburger" target="_blank" rel="noopener noreferrer"&gt;https://github.com/vinny59200/dukeburger&lt;/a&gt;
&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;🔵⚪⚪⚪⚪⚪⚪⚪⚪⚪⚪⚪&lt;/p&gt;
&lt;p&gt;This guide shows how to use &lt;strong&gt;Micrometer and Prometheus in Spring Boot&lt;/strong&gt; to track a custom metric for a Kafka-driven Burger Orders app. You&amp;rsquo;ll post a burger order to a REST endpoint, publish it to Kafka, consume the topic, and increment a counter for all &amp;ldquo;DukeBurger&amp;rdquo; orders. Copy the snippets, run, and you&amp;rsquo;ll see your metric on &lt;code&gt;/actuator/prometheus&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #9</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-9/</link><pubDate>Wed, 12 Nov 2025 15:21:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-9/</guid><description>&lt;p&gt;&lt;strong&gt;F&lt;/strong&gt;ourteen days have passed, and it is time to present a fresh collection of readings that could influence developments in the field of artificial intelligence.&lt;/p&gt;
&lt;p&gt;This newsletter focuses on examining how AI enhances productivity through enterprise studies, tutorial, agentic system architecture, GraphRAG, evaluating risk methodologies in agentic systems, and the security challenges arising from increased AI-LLM adoption. This edition of the AI newsletter includes a compelling discussion between six of the most influential leaders in artificial intelligence, along with additional content.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #8</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-8/</link><pubDate>Thu, 30 Oct 2025 06:36:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-8/</guid><description>&lt;p&gt;&lt;strong&gt;Fourteen days have passed, and it is time to present a fresh collection of readings that could influence developments in the field of artificial intelligence.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This newsletter focuses on examining how AI enhances productivity through enterprise studies, agentic system architecture, attack vectors, Model Context Protocol (MCP) implementation, Agent-to-Agent (A2A) protocol, Java code generation within IDEs, LLM benchmarking methodologies, and the security challenges arising from increased AI-LLM adoption.&lt;/p&gt;
&lt;p&gt;The world influenced by LLM is changing very quickly, let&amp;rsquo;s start&amp;hellip;&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #2</title><link>https://foojayio.github.io/website/today/jc-ai-newsletter-2/</link><pubDate>Tue, 05 Aug 2025 06:30:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/jc-ai-newsletter-2/</guid><description>&lt;h3 id="h3-0-in-the-first-newsletter-we-introduced-a-14-day-cadence-which-means-that-this-week-it-s-time-for-a-new-collection-of-articles-from-the-fields-of-ai-llm-java-and-more"&gt;&lt;strong&gt;I&lt;/strong&gt; n &lt;a href="https://foojayio.github.io/website/today/ai-newsletter-1/"&gt;the first newsletter&lt;/a&gt;
, we introduced a 14-day cadence, which means that this week it&amp;rsquo;s time for a new collection of articles from the fields of AI, LLM, Java and more.&lt;/h3&gt;
&lt;p&gt;The JC-AI Newsletter Vol.2 brings again a very interesting collection of articles worth considering.&lt;/p&gt;
&lt;p&gt;The world influenced by LLM is changing very quickly, let&amp;rsquo;s start&amp;hellip;&lt;/p&gt;
&lt;h3 id="h3-1-article-openai-ceo-sam-altman-warns-of-an-ai-fraud-crisis"&gt;article: &lt;a href="http:https://edition.cnn.com/2025/07/22/tech/openai-sam-altman-fraud-crisis//" title="OpenAI CEO Sam Altman warns of an AI ‘fraud crisis’"&gt;OpenAI CEO Sam Altman warns of an AI &amp;lsquo;fraud crisis&amp;rsquo;&lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;author&lt;/strong&gt; : Clare Duffy, CNN&lt;br&gt;
&lt;strong&gt;date&lt;/strong&gt; : 2025-07-22&lt;br&gt;
&lt;strong&gt;desc.&lt;/strong&gt;: Sam Altman discusses the serious potential for current AI abuse. Although the example of attacks on financial institutions is mentioned, Sam Altman warns of the broader impact before one even takes advantage of LLM agent systems.&lt;/p&gt;</description></item><item><title>Release V0.0.2 of Java DMX512 Library With Universes and USB-to-DMX support</title><link>https://foojayio.github.io/website/today/release-v0-0-2-of-java-dmx512-library-with-universes-and-usb-to-dmx-support/</link><pubDate>Mon, 04 Aug 2025 14:19:25 +0000</pubDate><guid>https://foojayio.github.io/website/today/release-v0-0-2-of-java-dmx512-library-with-universes-and-usb-to-dmx-support/</guid><description>&lt;p&gt;Earlier this month, I &lt;a href="https://webtechie.be/post/2025-07-17-introducing-java-dmx512-library-with-demo-javafx-ui/" target="_blank" rel="noopener noreferrer"&gt;released V0.0.1 of my new Java library to interact with DMX512 devices using (optionally) the Open Fixture Library (OFL)&lt;/a&gt;
. After some more experimenting, I&amp;rsquo;m able to announce the next (beta) release V0.0.2 with the following major changes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Code refactoring&lt;/strong&gt;: As this library is still in beta, major changes were expected and happened 😉 The video of V0.0.1 is still valid, but some of the demonstrated code has changed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved demos&lt;/strong&gt; : Demo code has been moved to the &lt;a href="https://github.com/codewriterbv/DMX512/tree/main/src/main/java/be/codewriter/dmx512/demo" target="_blank" rel="noopener noreferrer"&gt;&lt;code&gt;demo&lt;/code&gt; directory in the sources&lt;/a&gt;
 to make them easier to understand and reuse.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Introduction of DMX Universes&lt;/strong&gt;: to be able to control fixtures connected to the two ports of my IP-to-DMX controller, universes needed to be added. (more info below)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;USB-to-DMX Support&lt;/strong&gt;: First working protocol over serial communication to DMX512! (more info below)&lt;/li&gt;
&lt;/ul&gt;
&lt;figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex"&gt;
 &lt;figure class="wp-block-image size-large"&gt;
 &lt;img fetchpriority="high" decoding="async" width="1024" height="637" data-id="117016" src="ip-to-dmx-universes-1024x637.jpg" alt="" class="wp-image-117016"&gt;
 &lt;/figure&gt;
 &lt;figure class="wp-block-image size-large"&gt;
 &lt;img decoding="async" width="1024" height="572" data-id="117015" src="usb-to-dmx-1024x572.jpg" alt="" class="wp-image-117015"&gt;
 &lt;/figure&gt;
&lt;/figure&gt;
&lt;h2 id="h2-0-introduction-of-dmx-universes"&gt;Introduction of DMX Universes&lt;/h2&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/slC4niKWUq0?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;For my tests, I&amp;rsquo;m using an &lt;a href="https://www.amazon.com.be/dp/B0CYPQ2Z4V" target="_blank" rel="noopener noreferrer"&gt;JUNELIONY ArtNet 1024 2-Port Sulite DMX LAN512 2-Port ArtNet Converter&lt;/a&gt;
 controller. It has two XLR-connectors, labeled as &lt;code&gt;DMX1&lt;/code&gt; and &lt;code&gt;DMX2&lt;/code&gt;, which can be controlled as universe ID 0 and 1.&lt;/p&gt;</description></item><item><title>Monolith vs Microservices in 2025</title><link>https://foojayio.github.io/website/today/monolith-vs-microservices-2025/</link><pubDate>Mon, 04 Aug 2025 13:45:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/monolith-vs-microservices-2025/</guid><description>&lt;p&gt;In recent years, the tech world has been buzzing with debates about architecture choices. However, 2025 offers a more balanced perspective.&lt;/p&gt;
&lt;p&gt;Simplicity, developer experience, and maintainability are reshaping how teams design software.&lt;/p&gt;
&lt;p&gt;From Infrastructure as Code (IaC) to &amp;ldquo;vibecoding&amp;rdquo; culture, and from startups to enterprises, many rethink their position on the monolith vs microservices 2025 spectrum.&lt;/p&gt;
&lt;p&gt;So, what has actually changed?&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;🔵⚪⚪⚪⚪⚪&lt;/p&gt;
&lt;h2 id="h2-0-terraform-and-iac-changing-architecture-with-confidence"&gt;🔁 Terraform and IaC: Changing Architecture with Confidence&lt;/h2&gt;
&lt;h3 id="h3-1-how-infrastructure-as-code-helps-teams-adapt-architecture-efficiently"&gt;How Infrastructure as Code helps teams adapt architecture efficiently&lt;/h3&gt;
&lt;p&gt;Infrastructure as Code tools like Terraform make architecture changes easier. Nevertheless, the process is not effortless.&lt;/p&gt;</description></item><item><title>Introducing a New Java DMX512 Library With Demo JavaFX User Interface</title><link>https://foojayio.github.io/website/today/introducing-a-new-java-dmx512-library-with-demo-javafx-user-interface/</link><pubDate>Fri, 25 Jul 2025 06:17:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/introducing-a-new-java-dmx512-library-with-demo-javafx-user-interface/</guid><description>&lt;p&gt;In this post, I would like to inform you about a new Java library that is now available on Maven Central, allowing interaction with DMX512 devices using (optionally) the Open Fixture Library (OFL). I also published a video with a code walkthrough of my test setup and demo code.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/ztrO3Crexmg?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;But first&amp;hellip;&lt;/p&gt;</description></item><item><title>AI Newsletter #1</title><link>https://foojayio.github.io/website/today/ai-newsletter-1/</link><pubDate>Tue, 22 Jul 2025 05:39:26 +0000</pubDate><guid>https://foojayio.github.io/website/today/ai-newsletter-1/</guid><description>&lt;p&gt;&lt;strong&gt;There is a lot going on in today&amp;rsquo;s technological world, but the most intense and vibrant area is undoubtedly the field of artificial intelligence. After brainstorming, our Java Champion Education group agreed to create a newsletter with a 14 days cadence. In our newsletters, we will include a collection of recently read interesting resources in the field of artificial intelligence with a short description.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Although the stream of published articles is very large and the ability to read them all is an illusion, the published selection, such as the below is implicitly narrowed. The purpose of the AI Newsletter is to help everyone stay informed and expand their knowledge in areas related to artificial intelligence.&lt;/p&gt;</description></item><item><title>SpringBoot and Kafka Streams – Event Routing &amp; Testing</title><link>https://foojayio.github.io/website/today/spring-boot-kafka-streams-event-routing-testing/</link><pubDate>Thu, 19 Jun 2025 08:37:11 +0000</pubDate><guid>https://foojayio.github.io/website/today/spring-boot-kafka-streams-event-routing-testing/</guid><description>&lt;p&gt;Welcome to this hands-on guide to building a Spring Boot Kafka Streams application! (SpringBoot and Kafka Streams).&lt;/p&gt;
&lt;p&gt;In this article, I&amp;rsquo;ll walk you through a project I built during the first day of a three-day Kafka Streams training. The goal? Validate sightseeing events in Lille based on predefined timetables and route the data accordingly.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s explore how Kafka Streams powers a real-time city tour experience! 🧭&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/s07d3SmoBMI?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;hr&gt;
&lt;p&gt;🔵⚪⚪⚪⚪⚪⚪⚪⚪⚪&lt;/p&gt;</description></item><item><title>Speed up your Spring Batch with Native Image and GraalVM</title><link>https://foojayio.github.io/website/today/speed-up-your-spring-batch-with-native-image-and-graalvm/</link><pubDate>Tue, 10 Dec 2024 15:47:53 +0000</pubDate><guid>https://foojayio.github.io/website/today/speed-up-your-spring-batch-with-native-image-and-graalvm/</guid><description>&lt;p&gt;&lt;strong&gt;Spring Batch is often used for&lt;/strong&gt; data processing &lt;strong&gt;jobs that don&amp;rsquo;t run continuously.&lt;/strong&gt; Instead, they start, process, and stop,&lt;strong&gt;which makes them a perfect candidate for GraalVM Native Image.&lt;/strong&gt; Unlike traditional Java applications that require a long JVM startup time, Native Images execute almost instantly, giving a significant performance boost.&lt;/p&gt;
&lt;p&gt;In this article, you&amp;rsquo;ll learn how to build a Spring Batch application that reads a CSV file, logs its content, and writes it to a PostgreSQL database.&lt;strong&gt;We&amp;rsquo;ll see how to compile it into a Native Image using GraalVM&lt;/strong&gt; , and most importantly**, we&amp;rsquo;ll benchmark the difference between** running it as &lt;strong&gt;a traditional JAR and&lt;/strong&gt; as &lt;strong&gt;a native binary&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Prevent LDAP injection in #java 💥💉with #springboot</title><link>https://foojayio.github.io/website/today/prevent-ldap-injection-in-java-with-springboot/</link><pubDate>Wed, 04 Dec 2024 14:45:35 +0000</pubDate><guid>https://foojayio.github.io/website/today/prevent-ldap-injection-in-java-with-springboot/</guid><description>&lt;p&gt;&lt;strong&gt;LDAP (Lightweight Directory Access Protocol)&lt;/strong&gt; is essential for managing and accessing directory information in Java web applications. However, it&amp;rsquo;s crucial to understand and prevent &lt;strong&gt;LDAP Injection&lt;/strong&gt;, a serious security vulnerability that can lead to unauthorized access and data breaches.&lt;/p&gt;
&lt;p&gt;Following &lt;strong&gt;OWASP Recommendations&lt;/strong&gt; , such as validating user inputs and using parameterized queries, is vital for securing your applications. In this article, we&amp;rsquo;ll dive into LDAP, explore LDAP Injection, share OWASP&amp;rsquo;s best practices, and demonstrate secure coding in &lt;strong&gt;Spring Boot&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Client-server application in Java: Easy with FEPCOS-J – Video.</title><link>https://foojayio.github.io/website/today/fuchs-2024-video-fepcos_j-client-server-application-in-java/</link><pubDate>Tue, 30 Jul 2024 11:51:04 +0000</pubDate><guid>https://foojayio.github.io/website/today/fuchs-2024-video-fepcos_j-client-server-application-in-java/</guid><description>&lt;p&gt;&lt;strong&gt;This is a result of the &lt;a href="http://fepcos.info" target="_blank" rel="noopener noreferrer"&gt;FEPCOS-Project&lt;/a&gt;
, aka @FepcosInfo; #FepcosJ_blog5.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;See how FEPCOS-J relieves developers of the network programming required to implement a client-server application in Java.&lt;br&gt;
&lt;a href="https://youtu.be/qtPP7kZbriQ" target="_blank" rel="noopener noreferrer"&gt;&lt;img src="https://foojayio.github.io/website/today/fuchs-2024-video-fepcos_j-client-server-application-in-java/fuchs2024FepcosJ_video1-512x512-1.png" alt="Link to video: Easy Implementation of a Client-Server Application in Java with FEPCOS-J.
#FepcosJ_video1, #FepcosJ." loading="lazy"&gt;
&lt;/a&gt;
 &lt;strong&gt;External link to&lt;/strong&gt; : G. Fuchs: &lt;em&gt;Video: Easy Implementation of a Client-Server Application in Java with FEPCOS-J&lt;/em&gt;; On: YouTube, FEPCOS-Project (@FepcosInfo); 29-July-2024; &lt;a href="https://youtu.be/qtPP7kZbriQ" target="_blank" rel="noopener noreferrer"&gt;https://youtu.be/qtPP7kZbriQ&lt;/a&gt;
.&lt;br&gt;
&lt;img src="https://foojayio.github.io/website/today/fuchs-2024-video-fepcos_j-client-server-application-in-java/fuchs-2024-implementing-a-service-with-fepcos-j-1024x576.png" alt="FEPCOS-J provides annotations for programming a client-server application in Java." loading="lazy"&gt;
 &lt;strong&gt;Impression of the above-linked video&lt;/strong&gt;: FEPCOS-J provides annotations like @AYSpec, @In, @Out, and @Behavior for programming a client-server application in Java. Watch the video for a complete example application of FEPCOS-J.&lt;/p&gt;</description></item><item><title>New video series "JavaFX In Action", Part 1</title><link>https://foojayio.github.io/website/today/new-video-series-javafx-in-action-part-1/</link><pubDate>Tue, 16 Jul 2024 07:35:29 +0000</pubDate><guid>https://foojayio.github.io/website/today/new-video-series-javafx-in-action-part-1/</guid><description>&lt;p&gt;JavaFX is a powerful user interface framework, often overlooked in the world of desktop applications development. With this new series of video interviews, I want to take you behind-the-scenes of some applications built using JavaFX.&lt;/p&gt;
&lt;p&gt;JavaFX combines the best features of a modern user interface toolkit with the unparalleled strength of the Java platform. This approach enables you to perform heavy &amp;ldquo;background tasks&amp;rdquo;, like processing large amounts of data, while still providing a responsive user interface.&lt;/p&gt;</description></item><item><title>Example Java Application with Embedded Jetty and a htmx Website</title><link>https://foojayio.github.io/website/today/example-java-application-with-embedded-jetty-and-a-htmx-website/</link><pubDate>Fri, 21 Jun 2024 08:59:42 +0000</pubDate><guid>https://foojayio.github.io/website/today/example-java-application-with-embedded-jetty-and-a-htmx-website/</guid><description>&lt;p&gt;&lt;strong&gt;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.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I found it pretty hard to understand how to configure the embedded &lt;strong&gt;Jetty&lt;/strong&gt; webserver, but as always with Java libraries, it&amp;rsquo;s pretty easy once you understand how to do it 😉 I decided to share my example, so you don&amp;rsquo;t need to go through the same search if you want to use the same approach&amp;hellip;&lt;/p&gt;</description></item><item><title>Cloud Cost Optimization Is Hard, Java Can Help</title><link>https://foojayio.github.io/website/today/cloud-cost-optimization-is-hard-java-can-help/</link><pubDate>Wed, 21 Feb 2024 12:07:37 +0000</pubDate><guid>https://foojayio.github.io/website/today/cloud-cost-optimization-is-hard-java-can-help/</guid><description>&lt;p&gt;In my recent conversation with William Fellows, Research Director at S&amp;amp;P Global Market Research, we &lt;a href="https://www.youtube.com/watch?v=nAP3bYxdsZw&amp;amp;t=1s" target="_blank" rel="noopener noreferrer"&gt;discussed ways to reduce cloud waste&lt;/a&gt;
 specifically for Java workloads. After all, cloud cost optimization is hard.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/nAP3bYxdsZw?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;A large delta is growing between budgeted and actual spending. Top areas for spending are cloud integration and modernization services, security and compliance monitoring, and application modernization &amp;ndash; specifically applications written in Java.&lt;/p&gt;</description></item><item><title>Flexible Jakarta EE Apps With Apache CouchDB NoSQL Database</title><link>https://foojayio.github.io/website/today/build-flexible-jakarta-ee-applications-with-apache-couchdb-nosql-database/</link><pubDate>Mon, 19 Feb 2024 07:33:38 +0000</pubDate><guid>https://foojayio.github.io/website/today/build-flexible-jakarta-ee-applications-with-apache-couchdb-nosql-database/</guid><description>&lt;p&gt;&lt;strong&gt;Are you a Jakarta EE developer interested in leveraging the power of NoSQL databases for your applications?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This webinar - &lt;a href="https://youtu.be/PVp40gXJ954?feature=shared" target="_blank" rel="noopener noreferrer"&gt;watch the recording here&lt;/a&gt;
 - is designed specifically to introduce you to the world of NoSQL through CouchDB, a high-performance, scalable database ideal for cloud-native applications.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/PVp40gXJ954?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;h2 id="h2-0-what-is-couchdb"&gt;What is CouchDB?&lt;/h2&gt;
&lt;p&gt;CouchDB is a NoSQL database used in distributed and cloud environments. It uses a schema-free JSON document format, which allows for more flexible and efficient data models.&lt;/p&gt;</description></item><item><title>Video: Spring Boot Testcontainers Support for Local Development</title><link>https://foojayio.github.io/website/today/video-spring-boot-testcontainers-support-for-local-development/</link><pubDate>Fri, 16 Feb 2024 09:07:33 +0000</pubDate><guid>https://foojayio.github.io/website/today/video-spring-boot-testcontainers-support-for-local-development/</guid><description>&lt;p&gt;Spring Boot has supported TestsContainers for running services during tests for quite a while.&lt;/p&gt;
&lt;p&gt;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.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/GoBm7BoufIM?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;</description></item><item><title>DTrace Revisited: Advanced Debugging Techniques</title><link>https://foojayio.github.io/website/today/dtrace-revisited-advanced-debugging-techniques/</link><pubDate>Tue, 13 Feb 2024 07:46:04 +0000</pubDate><guid>https://foojayio.github.io/website/today/dtrace-revisited-advanced-debugging-techniques/</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="#dtrace-overview"&gt;DTrace Overview&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#understanding-dtraces-capabilities"&gt;Understanding DTrace&amp;rsquo;s Capabilities&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#system-monitoring-and-analysis"&gt;System Monitoring and Analysis&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#process-and-performance-analysis"&gt;Process and Performance Analysis&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#customizability-and-flexibility"&gt;Customizability and Flexibility&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#real-world-applications"&gt;Real-World Applications&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#performance-and-compatibility-of-dtrace"&gt;Performance and Compatibility of DTrace&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#cross-platform-compatibility"&gt;&lt;strong&gt;Cross-Platform Compatibility&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#compatibility-challenges-on-macos"&gt;&lt;strong&gt;Compatibility Challenges on MacOS&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#customizability-and-flexibility-of-dtrace"&gt;Customizability and Flexibility of DTrace&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#adaptability-to-various-scenarios"&gt;&lt;strong&gt;Adaptability to Various Scenarios&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#examples-of-customizable-probes"&gt;&lt;strong&gt;Examples of Customizable Probes&lt;/strong&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#real-world-applications-of-dtrace"&gt;Real-World Applications of DTrace&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="#final-words"&gt;Final Words&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When we think of debugging, we think of breakpoints in IDEs, stepping over, inspecting variables, etc.&lt;/p&gt;
&lt;p&gt;However, there are instances where stepping outside the conventional confines of an IDE becomes essential to track and resolve complex issues. This is where tools like DTrace come into play, offering a more nuanced and powerful approach to debugging than traditional methods.&lt;/p&gt;</description></item><item><title>Video: Spring Boot Docker Compose Support</title><link>https://foojayio.github.io/website/today/video-spring-boot-docker-compose-support/</link><pubDate>Wed, 31 Jan 2024 07:50:17 +0000</pubDate><guid>https://foojayio.github.io/website/today/video-spring-boot-docker-compose-support/</guid><description>&lt;p&gt;In Spring Boot 3.1, Docker Compose support was added to simplify local development with external resources.&lt;/p&gt;
&lt;p&gt;In this video, I show you how this works and how to use it!&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/BQkvCxmaiqU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;br /&gt;</description></item><item><title>Video: Vaadin Drag &amp; Drop Support. It's so easy!</title><link>https://foojayio.github.io/website/today/video-vaadin-drag-drop-support-its-so-easy/</link><pubDate>Fri, 01 Dec 2023 13:24:06 +0000</pubDate><guid>https://foojayio.github.io/website/today/video-vaadin-drag-drop-support-its-so-easy/</guid><description>&lt;p&gt;In this video I show how simple it can be to add drag and drop to a Vaadin application! Drag and Drop can be helpful in many situations, but often it&amp;rsquo;s complicated to implement. That&amp;rsquo;s not the case with Vaadin. Vaadin makes it easy to have drag-and-drop support for all components.&lt;/p&gt;
&lt;p&gt;More information about drag and drop can be found in the &lt;a href="https://vaadin.com/docs/latest/create-ui/dnd" target="_blank" rel="noopener noreferrer"&gt;documentation&lt;/a&gt;
.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/WIyT9PqhbqA?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;</description></item><item><title>Video: "If I decide to stay with Oracle Java what issues will I face?"</title><link>https://foojayio.github.io/website/today/video-if-i-decide-to-stay-with-oracle-java-what-issues-will-i-face/</link><pubDate>Thu, 23 Nov 2023 09:12:35 +0000</pubDate><guid>https://foojayio.github.io/website/today/video-if-i-decide-to-stay-with-oracle-java-what-issues-will-i-face/</guid><description>&lt;p&gt;Simon Ritter and Gerrit Grunwald answer a question that they hear repeatedly: &lt;strong&gt;&amp;ldquo;If I decide to stay with Oracle Java (rather than migrate to an OpenJDK distribution) what issues will I face?&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/rGiIm2xdp7w?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;br /&gt;</description></item><item><title>Foojay Podcast #31: Report of Devoxx 23 in Belgium</title><link>https://foojayio.github.io/website/today/foojay-podcast-31/</link><pubDate>Mon, 16 Oct 2023 07:16:57 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-31/</guid><description>&lt;p&gt;The first week of October, the 20th edition of Devoxx took place in Antwerp, Belgium.&lt;/p&gt;
&lt;p&gt;Over 3000 Java developers, speakers, and enthusiasts gathered to share their knowledge and learn from each other.&lt;/p&gt;
&lt;p&gt;I got the opportunity to walk around with a microphone and talk to visitors and speakers.&lt;/p&gt;
&lt;p&gt;Not all of them, as there were just too many people and too many exciting sessions happening simultaneously.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/VJJmoiP7e-I?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;h2 id="h2-0-podcast-apps"&gt;Podcast Apps&lt;/h2&gt;
&lt;p&gt;You can listen and subscribe to the Foojay Podcast on:&lt;/p&gt;</description></item><item><title>Temperature, humidity, and pressure in BME280 Sensors with Java</title><link>https://foojayio.github.io/website/today/reading-the-temperature-humidity-and-pressure-from-a-bme280-sensor-with-java-pi4j-i2c-spi-and-jbang/</link><pubDate>Thu, 03 Aug 2023 07:16:36 +0000</pubDate><guid>https://foojayio.github.io/website/today/reading-the-temperature-humidity-and-pressure-from-a-bme280-sensor-with-java-pi4j-i2c-spi-and-jbang/</guid><description>&lt;p&gt;To make it as easy as possible to get started with Java on the Raspberry Pi to interact with electronic components, I started a &lt;a href="https://pi4j.com/examples/jbang/" target="_blank" rel="noopener noreferrer"&gt;new section on the Pi4J website with JBang examples&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In this tutorial, I want to show you how you can read the temperature, humidity, and pressure from a BME280 Sensor.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="h2-0-what-is-used"&gt;What Is Used?&lt;/h2&gt;
&lt;p&gt;As explained on the websites of each project:&lt;/p&gt;
&lt;h3 id="h3-1-pi4j"&gt;Pi4J&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;A friendly object-oriented I/O API and implementation libraries for Java Programmers to access the full I/O capabilities of the Raspberry Pi platform. This project abstracts the low-level native integration and interrupt monitoring to enable Java programmers to focus on implementing their application business logic.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>How to Share Your Work With a Video or Podcast</title><link>https://foojayio.github.io/website/today/how-to-share-your-work-with-a-video-or-podcast/</link><pubDate>Fri, 14 Jul 2023 09:22:11 +0000</pubDate><guid>https://foojayio.github.io/website/today/how-to-share-your-work-with-a-video-or-podcast/</guid><description>&lt;p&gt;Season 2 of the &lt;a href="https://foojayio.github.io/website/today/category/podcast/"&gt;Foojay Podcast&lt;/a&gt;
 has come to an end. Since September of &amp;lsquo;22, 22 episodes where published here on Foojay.&lt;/p&gt;
&lt;p&gt;In this article, we want to share some of the experiences of creating such podcasts, but also more generally, how you can share your work in a video with a small (or bigger) budget&amp;hellip;&lt;/p&gt;
&lt;h2 id="h2-0-audio"&gt;Audio&lt;/h2&gt;
&lt;p&gt;There is one fundamental rule for the audio: &amp;ldquo;Garbage in = Garbage out.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Yes, you can apply many filters and effects in a later phase, but you can&amp;rsquo;t make a bad recording sound good. &lt;strong&gt;You need a clear and good recording as a starting point&lt;/strong&gt;!&lt;/p&gt;</description></item><item><title>Enterprise Java Applications With Jakarta EE and Vaadin</title><link>https://foojayio.github.io/website/today/enterprise-java-application-development-with-jakarta-ee-and-vaadin/</link><pubDate>Wed, 12 Jul 2023 09:26:07 +0000</pubDate><guid>https://foojayio.github.io/website/today/enterprise-java-application-development-with-jakarta-ee-and-vaadin/</guid><description>&lt;p&gt;&lt;strong&gt;Watch this webinar recording to get an overview of the &lt;a href="https://vaadin.com/" target="_blank" rel="noopener noreferrer"&gt;Vaadin framework&lt;/a&gt;
 and learn how to use it to build modern web applications on the Jakarta EE Platform in pure Java, without any frontend framework.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Find out more about the core features of Jakarta EE, like its dependency injection (Jakarta CDI) and persistence (Jakarta Persistence) APIs. Additionally, you will learn how to use Vaadin and Jakarta EE to build responsive web applications that can run on different devices and browsers.&lt;/p&gt;</description></item><item><title>Operator Overloading in Java</title><link>https://foojayio.github.io/website/today/operator-overloading-in-java/</link><pubDate>Sat, 10 Jun 2023 12:19:26 +0000</pubDate><guid>https://foojayio.github.io/website/today/operator-overloading-in-java/</guid><description>&lt;p&gt;In this article, we&amp;rsquo;ll delve into the fascinating world of operator overloading in Java.&lt;/p&gt;
&lt;p&gt;Although Java doesn&amp;rsquo;t natively support operator overloading, we&amp;rsquo;ll discover how Manifold can extend Java with that functionality.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ll explore its benefits, limitations, and use cases, particularly in scientific and mathematical code.&lt;/p&gt;
&lt;p&gt;We will also explore three powerful features provided by Manifold that enhance the default Java type safety while enabling impressive programming techniques.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ll discuss unit expressions, type-safe reflection coding, and fixing methods like equals during compilation.&lt;/p&gt;</description></item><item><title>Logging Best Practices Revisited</title><link>https://foojayio.github.io/website/today/logging-best-practices-revisited/</link><pubDate>Mon, 15 May 2023 13:07:59 +0000</pubDate><guid>https://foojayio.github.io/website/today/logging-best-practices-revisited/</guid><description>&lt;p&gt;As I write this my interview on &lt;a href="https://www.youtube.com/@devcentral" target="_blank" rel="noopener noreferrer"&gt;DevCentral&lt;/a&gt;
 &lt;a href="https://www.linkedin.com/events/7062528143797952513/comments/" target="_blank" rel="noopener noreferrer"&gt;hasn&amp;rsquo;t started yet&lt;/a&gt;
 so if you subscribe to my blog or &lt;a href="https://www.youtube.com/@debugagent" target="_blank" rel="noopener noreferrer"&gt;follow&lt;/a&gt;
 &lt;a href="https://twitter.com/debugagent" target="_blank" rel="noopener noreferrer"&gt;me&lt;/a&gt;
 &lt;a href="https://www.linkedin.com/in/shai-almog-81a42/" target="_blank" rel="noopener noreferrer"&gt;on&lt;/a&gt;
 &lt;a href="https://mastodon.social/@debugagent" target="_blank" rel="noopener noreferrer"&gt;socials&lt;/a&gt;
 you might be able to catch it live. If not the recording should appear right here:&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/CFL--dAX3FQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;Either way, this isn&amp;rsquo;t the first time I wrote about or talked about logging and the common pitfalls we see when logging in production or debugging. I covered this extensively in &lt;a href="https://talktotheduck.dev/logging-best-practices-mdc-ingestion-and-scale" target="_blank" rel="noopener noreferrer"&gt;the old blog&lt;/a&gt;
. I also &lt;a href="https://www.youtube.com/watch?v=53qCLRFcBSs" target="_blank" rel="noopener noreferrer"&gt;did a video&lt;/a&gt;
 covering these ideas. But my ideas somewhat evolved around some of the concepts I discussed.&lt;/p&gt;</description></item><item><title>Java Security: Log4J, the SecurityManager, and Funding</title><link>https://foojayio.github.io/website/today/java-security-log4j-the-securitymanager-and-funding/</link><pubDate>Fri, 24 Mar 2023 09:28:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/java-security-log4j-the-securitymanager-and-funding/</guid><description>&lt;p&gt;A demonstration of log4j exploits, which defenses people tried, and which worked.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ll cover how groups responded effectively to patch to see what was common.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ll also look at open source funding models, subscriptions, and bug bounty programs to see why it&amp;rsquo;s sometimes hard to donate.&lt;/p&gt;
&lt;p&gt;This talk uses actual exploit code that takes over systems through their log messages to open calculators.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/0mi9mTMd_5I?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;</description></item><item><title>Debugging Streams and Collections</title><link>https://foojayio.github.io/website/today/debugging-streams-and-collections/</link><pubDate>Fri, 13 Jan 2023 14:59:59 +0000</pubDate><guid>https://foojayio.github.io/website/today/debugging-streams-and-collections/</guid><description>&lt;p&gt;I will run a book giveaway promotion on the &lt;a href="https://coderanch.com/wiki/660305/Book-Promotions-Schedule" target="_blank" rel="noopener noreferrer"&gt;Code Ranch on January 17th&lt;/a&gt;
. Be sure to be there and let your friends know. It would be great to answer your questions about debugging. I&amp;rsquo;m very excited by this and by the feedback I&amp;rsquo;m getting for &lt;a href="https://course.debugagent.com/" target="_blank" rel="noopener noreferrer"&gt;the course&lt;/a&gt;
 and new videos.&lt;/p&gt;
&lt;p&gt;I also launched a &lt;a href="https://www.youtube.com/playlist?list=PL8GhfcywW9YMucwRw2IbpeCp1FBMEgsmk" target="_blank" rel="noopener noreferrer"&gt;free new Java course for complete beginners&lt;/a&gt;
. No prior knowledge needed. This is probably not the audience for this course. But if you know someone that might be interested I&amp;rsquo;ll appreciate a share. I hope people find it useful and learn a bit about Java. I&amp;rsquo;m working on a cadence of one video per week in this beginner course.&lt;/p&gt;</description></item><item><title>Debugging Program Control Flow</title><link>https://foojayio.github.io/website/today/debugging-program-control-flow/</link><pubDate>Fri, 23 Dec 2022 07:36:35 +0000</pubDate><guid>https://foojayio.github.io/website/today/debugging-program-control-flow/</guid><description>&lt;p&gt;As of now I published the first three videos of &lt;a href="https://course.debugagent.com" target="_blank" rel="noopener noreferrer"&gt;the course&lt;/a&gt;
 and will publish the fourth tomorrow. I plan to publish two videos per week on YouTube to maximize the impact but here I&amp;rsquo;ll only blog one lesson per week to avoid oversaturation. I shot about four hours of video content and still haven&amp;rsquo;t finished the 2nd module out of eight. This course will be very detailed and intensive.&lt;/p&gt;</description></item><item><title>Debug Like a Senior Developer</title><link>https://foojayio.github.io/website/today/debug-like-a-senior-developer/</link><pubDate>Fri, 16 Dec 2022 06:34:02 +0000</pubDate><guid>https://foojayio.github.io/website/today/debug-like-a-senior-developer/</guid><description>&lt;p&gt;My book on debugging is &lt;a href="https://www.amazon.com/dp/1484290410/" target="_blank" rel="noopener noreferrer"&gt;already on preorder&lt;/a&gt;
 and I&amp;rsquo;m super thrilled to announce I&amp;rsquo;m doing a full online course to go along with it.&lt;/p&gt;
&lt;p&gt;The course website isn&amp;rsquo;t ready yet but I already have the full outline and a lot of recorded material. I will try to drop videos at a rate of two per week in the next few months until the full course will be online.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s shaping up to be a very detailed course. I recorded the first module and half of the second module and I&amp;rsquo;m already close to 3 hours of dense recorded material!&lt;/p&gt;</description></item><item><title>Visualizing Brain Computer Interface Data using JavaFX</title><link>https://foojayio.github.io/website/today/visualizing-brain-computer-interface-data-using-javafx/</link><pubDate>Fri, 09 Dec 2022 09:42:20 +0000</pubDate><guid>https://foojayio.github.io/website/today/visualizing-brain-computer-interface-data-using-javafx/</guid><description>&lt;p&gt;Recently &lt;a href="https://twitter.com/SeanMiPhillips" target="_blank" rel="noopener noreferrer"&gt;&lt;strong&gt;Sean Phillips&lt;/strong&gt;&lt;/a&gt;
 shared some fascinating screenshots on Twitter and videos on YouTube of &lt;strong&gt;Trinity&lt;/strong&gt;, a JavaFX application he is working on.&lt;/p&gt;
&lt;p&gt;He is a software engineer at the &lt;strong&gt;Johns Hopkins University Applied Physics Laboratory&lt;/strong&gt; (&lt;a href="https://www.jhuapl.edu/" target="_blank" rel="noopener noreferrer"&gt;JHUAPL&lt;/a&gt;
), specializing in data visualization for multiple projects. JHUAPL works on various projects, ranging from medical work, building drones, cyber defense, and brain-computer interfaces to cislunar defense systems.&lt;/p&gt;
&lt;p&gt;The project that caught my eye is a visual exploration tool to test and evaluate machine learning decision-making and decoding systems.&lt;/p&gt;</description></item><item><title>What is An Application Server? In 3 Minutes!</title><link>https://foojayio.github.io/website/today/what-is-an-application-server-in-3-minutes/</link><pubDate>Thu, 01 Dec 2022 17:01:44 +0000</pubDate><guid>https://foojayio.github.io/website/today/what-is-an-application-server-in-3-minutes/</guid><description>&lt;p&gt;Low on time and want to know what an &amp;lsquo;application server&amp;rsquo; really is?&lt;/p&gt;
&lt;p&gt;Here we offer our explanation. This video covers the difference between application servers and web servers, what an application server can do to make your life as a developer easier, and more, all in less time than your average pop song!&lt;/p&gt;
&lt;p&gt;This is a high-level view that might be helpful to pass on to managers and procurement teams who aren&amp;rsquo;t sure what an application server is.&lt;/p&gt;</description></item><item><title>Java Profiling Overview</title><link>https://foojayio.github.io/website/today/java-profiling-overview/</link><pubDate>Mon, 14 Nov 2022 09:14:25 +0000</pubDate><guid>https://foojayio.github.io/website/today/java-profiling-overview/</guid><description>&lt;p&gt;When I ask Java developers whether they do profile, the answer is usually &amp;ldquo;no&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;The few that profiled before usually used VisualVM as a student and maybe JProfiler or YourKit years ago at work.&lt;/p&gt;
&lt;p&gt;One of the reasons for this is a lack of available information and thus knowledge for everyday Java developers.&lt;/p&gt;
&lt;p&gt;This is a pity as profiling should be a part of the tool belt for every experienced developer (not just for Java). The problem is that most of the open-source profilers are targeted to the OpenJDK developers (or their colleagues), even if they won&amp;rsquo;t admit it. This can be seen in the lack of entry-level material on this topic and even the little that is out there is distributed across multiple conference websites, blogs, YouTube channels, and Twitter accounts.&lt;/p&gt;</description></item><item><title>Can Java/Jakarta EE do Microservices?</title><link>https://foojayio.github.io/website/today/can-java-jakarta-ee-do-microservices/</link><pubDate>Thu, 01 Sep 2022 12:43:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/can-java-jakarta-ee-do-microservices/</guid><description>&lt;p&gt;In this myth-busting webinar, Steve Millidge (founder of &lt;a href="https://www.payara.fish/dismiss-the-myths/" target="_blank" rel="noopener noreferrer"&gt;Payara&lt;/a&gt;
), demonstrates that Java/Jakarta EE can do microservices.&lt;/p&gt;
&lt;p&gt;In this video, Steve explains:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What are microservices?&lt;/li&gt;
&lt;li&gt;How JAX-RS API makes it easy to develop applications that use the REST architecture&lt;/li&gt;
&lt;li&gt;Deployment models for microservices&lt;/li&gt;
&lt;li&gt;How to use MicroProfile with &lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;12 factor apps with Jakarta EE&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;ve been hearing that Java/Jakarta EE is only for monolithic architecture, watch this video to see why that&amp;rsquo;s not true and how you can continue using your existing development skills to modernize your application development with microservices.&lt;/p&gt;</description></item><item><title>Deserialization exploits in Java: why should I Care?</title><link>https://foojayio.github.io/website/today/deserialization-exploits-in-java-why-should-i-care/</link><pubDate>Thu, 14 Jul 2022 07:39:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/deserialization-exploits-in-java-why-should-i-care/</guid><description>&lt;p&gt;&lt;strong&gt;Hackers refer to deserialization in Java as &amp;ldquo;the gift that keeps on giving&amp;rdquo;. But what is actually the problem? In most cases, it is not even your own code that creates this security vulnerability. This problem is also not restricted to Java&amp;rsquo;s custom serialization framework. When deserializing JSON, XML, or YAML, similar issues can occur as well.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I recently gave a talk about this during &lt;a href="https://www.devoxx.co.uk/" target="_blank" rel="noopener noreferrer"&gt;Devoxx UK&lt;/a&gt;
, the largest and most prestigious Java community conference in the United Kingdom. In this talk, I explain how deserialization vulnerabilities work natively in Java and how attack chains are created. This was loosely based on my blog post: &lt;a href="https://snyk.io/blog/serialization-and-deserialization-in-java/" target="_blank" rel="noopener noreferrer"&gt;&amp;ldquo;Serialization and deserialization in Java: explaining the Java deserialize vulnerability&amp;rdquo;&lt;/a&gt;
.&lt;/p&gt;</description></item><item><title>Quick Fire Java: Java After Log4j</title><link>https://foojayio.github.io/website/today/quick-fire-java-java-after-log4j/</link><pubDate>Thu, 31 Mar 2022 08:23:36 +0000</pubDate><guid>https://foojayio.github.io/website/today/quick-fire-java-java-after-log4j/</guid><description>&lt;p&gt;In this episode of the Quick Fire Java video series, Rudy De Busscher and Priya Khaira-Hanks discuss Log4j, security processes and prioritization, and how Payara dealt with the vulnerability.&lt;/p&gt;
&lt;p&gt;All in a concise 10-minute video!&lt;/p&gt;
&lt;p&gt;The &lt;a href="https://logging.apache.org/log4j/2.x/" target="_blank" rel="noopener noreferrer"&gt;Log4j&lt;/a&gt;
 vulnerability, &lt;a href="https://en.wikipedia.org/wiki/Log4Shell" target="_blank" rel="noopener noreferrer"&gt;Log4Shell&lt;/a&gt;
, was disclosed in early December 2021 and the repercussions have been far-reaching.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://twitter.com/rdebusscher" target="_blank" rel="noopener noreferrer"&gt;Rudy&lt;/a&gt;
 explains more about what this actually means and about the wider implications of the incident. He also responds to &lt;a href="https://www.breachquest.com/" target="_blank" rel="noopener noreferrer"&gt;BreachQuest&amp;rsquo;s&lt;/a&gt;
&lt;a href="https://twitter.com/MalwareJake" target="_blank" rel="noopener noreferrer"&gt;Jake Williams&lt;/a&gt;
 for &lt;a href="https://threatpost.com/" target="_blank" rel="noopener noreferrer"&gt;Threatpost&lt;/a&gt;
, who claimed &amp;ldquo;being exploited through an internet-facing system running vulnerable log4j at this point is a leadership failure, not a technical one.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Security Warning: Your Java Attack Surface Just Got Bigger</title><link>https://foojayio.github.io/website/today/security-warning-your-java-attack-surface-just-got-bigger/</link><pubDate>Thu, 17 Mar 2022 16:35:38 +0000</pubDate><guid>https://foojayio.github.io/website/today/security-warning-your-java-attack-surface-just-got-bigger/</guid><description>&lt;p&gt;Building cloud-native Java applications is undoubtedly awesome.&lt;/p&gt;
&lt;p&gt;However, it comes with undeniable new risks. Next to your own code, you are relying on so many other things.&lt;/p&gt;
&lt;p&gt;Blindly depending on open-source libraries and Docker images can form a massive risk for your application. The wrong package can introduce severe vulnerabilities into your application, exposing your application and your user&amp;rsquo;s data.&lt;/p&gt;
&lt;p&gt;In the talk below we&amp;rsquo;ll show common threats, vulnerabilities, and misconfiguration including the recently disclosed issues in Log4j. Most importantly, you&amp;rsquo;ll learn how to protect your application with actionable remediation and best practices.&lt;/p&gt;</description></item><item><title>Video: SDKMAN Explained</title><link>https://foojayio.github.io/website/today/video-sdkman-explained/</link><pubDate>Fri, 04 Feb 2022 08:30:04 +0000</pubDate><guid>https://foojayio.github.io/website/today/video-sdkman-explained/</guid><description>&lt;p&gt;One of the highlights of the &lt;a href="https://archive.fosdem.org/2021/schedule/track/friends_of_openjdk/" target="_blank" rel="noopener noreferrer"&gt;Friends of OpenJDK room at FOSDEM 2021&lt;/a&gt;
 was Marco Vermeulen, the creator of SDKMAN, talking about SDKMAN.&lt;/p&gt;
&lt;p&gt;Check it out here, in the Foojay YouTube channel:&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/cvdXCs7mbHY?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; More content from the &lt;a href="https://www.youtube.com/playlist?list=PL9sWkBuMiXne6b9ju2djnadlH0-XXQMw6" target="_blank" rel="noopener noreferrer"&gt;Foojay room at FOSDEM 2021 is here&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;Even more, including cool techy prizes, in this year&amp;rsquo;s edition of the event, &lt;a href="https://foojayio.github.io/website/today/friends-of-openjdk-at-fosdem-2022/"&gt;as described here&lt;/a&gt;
.&lt;/p&gt;</description></item><item><title>Hype-Driven Development: Don't Be a Victim!</title><link>https://foojayio.github.io/website/today/hype-driven-development-dont-be-a-victim/</link><pubDate>Wed, 12 Jan 2022 09:38:51 +0000</pubDate><guid>https://foojayio.github.io/website/today/hype-driven-development-dont-be-a-victim/</guid><description>&lt;p&gt;Don&amp;rsquo;t be a victim of development trends that are &amp;ldquo;hot&amp;rdquo; right now, but might not actually be best for your specific business!&lt;/p&gt;
&lt;p&gt;In this video, Rudy De Busscher warns against software investments based on &amp;ldquo;buzz&amp;rdquo; around a trend or product, rather than whether it actually works for your use case. He discusses what technologies, commonly used with Java and Jakarta EE, can often be a case of hype over helpfulness.&lt;/p&gt;</description></item><item><title>7 Reasons to Switch to OpenJDK 17 as a Jakarta EE Developer</title><link>https://foojayio.github.io/website/today/7-reasons-to-switch-to-openjdk-17-as-a-jakarta-ee-developer/</link><pubDate>Mon, 15 Nov 2021 08:19:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/7-reasons-to-switch-to-openjdk-17-as-a-jakarta-ee-developer/</guid><description>&lt;p&gt;&lt;a href="https://openjdk.java.net/projects/jdk/17/" target="_blank" rel="noopener noreferrer"&gt;JDK 17,&lt;/a&gt;
 the next Long-Term Release of &lt;a href="https://www.oracle.com/java/technologies/downloads/" target="_blank" rel="noopener noreferrer"&gt;Java SE&lt;/a&gt;
, launched in September.&lt;/p&gt;
&lt;p&gt;You may have seen many of the great blogs, articles, and videos about what this means for Java developers. For just a few places to start, we like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the &lt;a href="https://www.jetbrains.com/" target="_blank" rel="noopener noreferrer"&gt;JetBrains&lt;/a&gt;
 team&amp;rsquo;s &lt;a href="https://www.youtube.com/watch?v=4VPqwWuFPD4&amp;amp;ab_channel=IntelliJIDEAbyJetBrains" target="_blank" rel="noopener noreferrer"&gt;discussion on migrating to JDK 17&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://todd.ginsberg.com/" target="_blank" rel="noopener noreferrer"&gt;Todd Ginsberg&lt;/a&gt;
 on &lt;a href="https://todd.ginsberg.com/post/java-17/ten-things-i-love/?utm_content=183298400&amp;amp;utm_medium=social&amp;amp;utm_source=twitter&amp;amp;hss_channel=tw-2599580401" target="_blank" rel="noopener noreferrer"&gt;his ten favourite features&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mydeveloperplanet.com/about/" target="_blank" rel="noopener noreferrer"&gt;Gunter Rotsaert&lt;/a&gt;
 mapping out the &lt;a href="https://dzone.com/articles/whats-new-between-java-11-and-java-17?edition=697399&amp;amp;utm_content=182786191&amp;amp;utm_medium=social&amp;amp;utm_source=twitter&amp;amp;hss_channel=tw-2599580401" target="_blank" rel="noopener noreferrer"&gt;differences between Java 11 and Java 17.&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But what does the new release mean for &lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
 developers specifically?&lt;/p&gt;</description></item><item><title>Discussion: The State of Java 2021</title><link>https://foojayio.github.io/website/today/discussion-state-of-java-2021/</link><pubDate>Mon, 25 Oct 2021 14:05:56 +0000</pubDate><guid>https://foojayio.github.io/website/today/discussion-state-of-java-2021/</guid><description>&lt;p&gt;There is a lot going in the Java world lately. A lot of this is already captured is the &lt;a href="https://snyk.io/jvm-ecosystem-report-2021/" target="_blank" rel="noopener noreferrer"&gt;Snyk JVM Ecosystem Report 2021&lt;/a&gt;
 based on a joint survey by &lt;a href="http://azul.com" target="_blank" rel="noopener noreferrer"&gt;Azul&lt;/a&gt;
 and &lt;a href="http://snyk.io" target="_blank" rel="noopener noreferrer"&gt;Snyk&lt;/a&gt;
. In addition, Java 17 &amp;mdash; the new LTS version &amp;mdash; was released in September and Oracle uncovered their plans to shorten the LTS release cycle to every 2 years.&lt;/p&gt;
&lt;p&gt;In a recent livestream, I had a discussion with some great folks in the Java world about the highlights of the Snyk Java Ecosystem report and the current developments in the Java world.&lt;/p&gt;</description></item><item><title>Do Java/Jakarta EE Standards Matter?</title><link>https://foojayio.github.io/website/today/do-java-jakarta-ee-standards-matter/</link><pubDate>Thu, 02 Sep 2021 14:43:05 +0000</pubDate><guid>https://foojayio.github.io/website/today/do-java-jakarta-ee-standards-matter/</guid><description>&lt;p&gt;In this myth-busting webinar, Steve Millidge, founder of &lt;a href="https://www.payara.fish/dismiss-the-myths/" target="_blank" rel="noopener noreferrer"&gt;Payara&lt;/a&gt;
, will show you why standards like Java EE (i.e., now &lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
) are beneficial.&lt;/p&gt;
&lt;p&gt;In this webinar, learn the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How standards help with vendor neutrality and why that is important&lt;/li&gt;
&lt;li&gt;How standards help drive competition (and why that&amp;rsquo;s good for you)&lt;/li&gt;
&lt;li&gt;How standards help you develop future proof applications&lt;/li&gt;
&lt;li&gt;How a working group offers the opportunity to shape the future of the industry&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;ve been thinking standards like Jakarta EE don&amp;rsquo;t matter, this video will show you how having standards gives you the opportunity to develop future proof applications, among other benefits.&lt;/p&gt;</description></item><item><title>SolarWinds Hack: What Does This Mean For Us?</title><link>https://foojayio.github.io/website/today/solarwinds-hack-and-the-executive-order-of-cybersecurity-what-does-this-mean-for-us/</link><pubDate>Thu, 19 Aug 2021 08:19:56 +0000</pubDate><guid>https://foojayio.github.io/website/today/solarwinds-hack-and-the-executive-order-of-cybersecurity-what-does-this-mean-for-us/</guid><description>&lt;p&gt;In the past two years, we have had to learn a lot about cybersecurity. New attack vectors are becoming more and more sophisticated and are directed more and more against the value chain in general.&lt;/p&gt;
&lt;p&gt;But what does that mean for us? What can be done about it, and what reactions have the state already taken?&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start with the story that got all of this rolling and made sure that the general attention was drawn to the vulnerabilities of the available IT infrastructure.&lt;/p&gt;</description></item><item><title>Is Java/Jakarta EE Cloud-Native?</title><link>https://foojayio.github.io/website/today/is-java-jakarta-ee-cloud-native/</link><pubDate>Wed, 18 Aug 2021 09:14:45 +0000</pubDate><guid>https://foojayio.github.io/website/today/is-java-jakarta-ee-cloud-native/</guid><description>&lt;p&gt;In this myth-busting webinar, Steve Millidge (founder of &lt;a href="https://www.payara.fish/" target="_blank" rel="noopener noreferrer"&gt;Payara&lt;/a&gt;
), shows you that Java/Jakarta EE &lt;strong&gt;IS&lt;/strong&gt; Cloud-native and can handle microservices and containers in the Cloud.&lt;/p&gt;
&lt;p&gt;In this webinar, learn:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What is Cloud-Native?&lt;/li&gt;
&lt;li&gt;How &lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
 (Java EE) applications run securely in the Cloud&lt;/li&gt;
&lt;li&gt;Why you should build applications, not runtimes&lt;/li&gt;
&lt;li&gt;How to keep your runtime easily up-to-date&lt;/li&gt;
&lt;li&gt;Learn about an upcoming project,&lt;strong&gt;&lt;a href="https://www.payara.fish/products/payara-cloud/" target="_blank" rel="noopener noreferrer"&gt;Payara Cloud&lt;/a&gt;
&lt;/strong&gt;, that separates the deployment from the runtime to make running Jakarta EE applications on the cloud even easier&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;ve been hearing that Java/Jakarta EE is not Cloud-native or it&amp;rsquo;s difficult to get your Java/Jakarta EE applications running in the Cloud, watch this webinar to see why that&amp;rsquo;s not true and how you can continue using your existing Java/Jakarta EE development skills to modernize your application development!&lt;/p&gt;</description></item><item><title>Are Java/Jakarta EE Application Servers Heavy?</title><link>https://foojayio.github.io/website/today/are-java-jakarta-ee-application-servers-heavy/</link><pubDate>Thu, 12 Aug 2021 07:10:29 +0000</pubDate><guid>https://foojayio.github.io/website/today/are-java-jakarta-ee-application-servers-heavy/</guid><description>&lt;p&gt;In this myth-busting webinar, Steve Millidge (founder of &lt;a href="https://www.payara.fish/" target="_blank" rel="noopener noreferrer"&gt;Payara&lt;/a&gt;
), demonstrates that Java/Jakarta EE application servers are not resource-heavy or slow.&lt;/p&gt;
&lt;p&gt;Watch live demonstrations of application servers that show it&amp;rsquo;s possible to have a small footprint and low resource usage in&lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
 runtimes.&lt;/p&gt;
&lt;p&gt;In this webinar:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;See a new Jakarta EE (Java EE) runtime that allows for single jar deployment&lt;/li&gt;
&lt;li&gt;Watch a demo of a small start up/small footprint Jakarta EE runtime&lt;/li&gt;
&lt;li&gt;See a Jakarta EE application server that is not fat or heavy with high resource usage&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;ve been hearing that Java EE application servers are all resource hogs and slow to start up &amp;ndash; watch this webinar to see why that&amp;rsquo;s not true and how you can continue using your existing Java EE development skills to modernize your application development!&lt;/p&gt;</description></item><item><title>Is Java/Jakarta EE Outdated &amp; Dead?</title><link>https://foojayio.github.io/website/today/is-java-ee-outdated-dead/</link><pubDate>Wed, 28 Jul 2021 08:08:50 +0000</pubDate><guid>https://foojayio.github.io/website/today/is-java-ee-outdated-dead/</guid><description>&lt;p&gt;Java was created in 1995 and, despite being over 25 years old, is still one of the most popular and widely used programming languages in the world.&lt;/p&gt;
&lt;p&gt;Due to its longevity &amp;ndash; many myths around Java EE (now &lt;a href="https://jakarta.ee/" target="_blank" rel="noopener noreferrer"&gt;Jakarta EE&lt;/a&gt;
) have circulated.&lt;/p&gt;
&lt;p&gt;In the &lt;a href="https://www.payara.fish/dismiss-the-myths/" target="_blank" rel="noopener noreferrer"&gt;&amp;ldquo;Dismiss the Myths&amp;rdquo; webinar series&lt;/a&gt;
, Steve Millidge, founder of Payara, discusses these common myths and shows you the programming language is still relevant, keeps up with the changes in the IT world, and that there is a future in Jakarta EE.&lt;/p&gt;</description></item><item><title>CVSS 101: First Steps with Common Vulnerability Scoring System</title><link>https://foojayio.github.io/website/today/cvss-101-first-steps-with-common-vulnerability-scoring-system/</link><pubDate>Wed, 14 Jul 2021 06:56:13 +0000</pubDate><guid>https://foojayio.github.io/website/today/cvss-101-first-steps-with-common-vulnerability-scoring-system/</guid><description>&lt;p&gt;What is the &lt;a href="https://www.first.org/cvss/v3.0/specification-document" target="_blank" rel="noopener noreferrer"&gt;Common Vulnerability Scoring System&lt;/a&gt;
 (CVSS), who is behind it, what are we doing with it, and what does a CVSS Value mean for you?&lt;/p&gt;
&lt;p&gt;On Foojay, you can apply the insights below to understand the &lt;a href="https://foojayio.github.io/website/java-15/?quarter=102020&amp;amp;tab=cve&amp;amp;version=15.0.1"&gt;Security/CVE Views in the OpenJDK Update &amp;amp; Release Details pages&lt;/a&gt;
, such as the one shown here:
&lt;a href="https://foojayio.github.io/website/java-15/?quarter=102020&amp;amp;tab=cve&amp;amp;version=15.0.1"&gt;&lt;img src="https://foojayio.github.io/website/today/cvss-101-first-steps-with-common-vulnerability-scoring-system/image-3-1024x481.png" alt="" loading="lazy"&gt;
&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;I will explain how a CVSS Score is calculated, what the different elements of it mean, and what are the differences between the different CVSS versions.&lt;/p&gt;</description></item><item><title>SKP's Core Java/Java EE Roots : Gang of Four Design Patterns - Part 01</title><link>https://foojayio.github.io/website/today/gang-of-four-design-patterns-using-core-java-part-01/</link><pubDate>Wed, 28 Apr 2021 13:43:33 +0000</pubDate><guid>https://foojayio.github.io/website/today/gang-of-four-design-patterns-using-core-java-part-01/</guid><description>&lt;p&gt;&lt;strong&gt;[About SKP&amp;rsquo;s Core Java/Java EE Roots]&lt;/strong&gt;&lt;br&gt;
Series of Articles on Rooted Concepts in Core Java and J2EE. They Revolve Around Memory Architecture, Connection &amp;amp; Memory Leaks, Core Java Syntax &amp;amp; Semantics, Java Object Layout/Anatomy, Multi-Threading, Asynchronous Task Execution, Design Patterns, Java Agents, Class Loading, API Design, OOPs &amp;amp; SOLID.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;To understand the philosophical and historical perspective on the Gang of Four&amp;rsquo;s design patterns, I made a short, 10-minute video. (This was also my PluralSight Author Audition). Please take time to view the [Introduction to Gang of Four Design Patterns] Video.&lt;/p&gt;</description></item><item><title>How to Create a REST API with Jakarta EE 9</title><link>https://foojayio.github.io/website/today/getting-started-with-jakarta-ee-9-how-to-create-a-rest-api-with-jakarta-ee-9/</link><pubDate>Mon, 26 Apr 2021 07:18:39 +0000</pubDate><guid>https://foojayio.github.io/website/today/getting-started-with-jakarta-ee-9-how-to-create-a-rest-api-with-jakarta-ee-9/</guid><description>&lt;p&gt;In this second article of the &amp;ldquo;&lt;a href="https://foojayio.github.io/website/today/getting-started-with-jakarta-ee-9-hello-world/"&gt;Getting Started with Jakarta EE 9&lt;/a&gt;
&amp;rdquo; series, we show you some basic scenarios using the REST specification. Although most people are using the term REST or RESTful API just to indicate they do data transfer over HTTP, and ignore the &amp;ldquo;Hypermedia as the engine of application State (HATEOS)&amp;rdquo; part of REST. The technology is used a lot lately to connect the front-end with the back-end.&lt;/p&gt;</description></item><item><title>Delegation vs. Inheritance in Graphical User Interfaces</title><link>https://foojayio.github.io/website/today/delegation-vs-inheritance-in-graphical-user-interfaces/</link><pubDate>Wed, 24 Feb 2021 16:07:53 +0000</pubDate><guid>https://foojayio.github.io/website/today/delegation-vs-inheritance-in-graphical-user-interfaces/</guid><description>&lt;p&gt;In this article, we will look at the difference between inheritance and delegation concepts.&lt;/p&gt;
&lt;p&gt;Or, to put it in another way, why I prefer delegation and why I want to emphasize this rarely-used feature in Java.&lt;/p&gt;
&lt;h3 id="h3-0-the-challenge"&gt;The Challenge&lt;/h3&gt;
&lt;p&gt;The challenge we face today is quite common in the field of graphic user interfaces like desktop- or web-apps: Java is widely used as the development language for both worlds and it does not matter if we are in the classic fields of Swing or JavaFX or in the field of web frameworks like Vaadin. Explicitly, I&amp;rsquo;ve opted for a pseudo-class model in core Java, as I&amp;rsquo;d like to look at the design patterns here without any technical details.&lt;/p&gt;</description></item><item><title>Introduction to MicroProfile OpenTracing with Jaeger</title><link>https://foojayio.github.io/website/today/microprofile-opentracing-with-jaeger/</link><pubDate>Thu, 18 Feb 2021 09:41:19 +0000</pubDate><guid>https://foojayio.github.io/website/today/microprofile-opentracing-with-jaeger/</guid><description>&lt;p&gt;In this short video, Rudy de Busscher demonstrates how to use MicroProfile OpenTracing with Jaeger in combination with Payara Micro.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/eclipse/microprofile-opentracing" target="_blank" rel="noopener noreferrer"&gt;The MicroProfile OpenTracing&lt;/a&gt;
 specification defines behaviours and an API for accessing an OpenTracing compliant Tracer object within your JAX-RS application. The behaviours specify how incoming and outgoing requests will have OpenTracing Spans automatically created. The API defines how to explicitly disable or enable tracing for given endpoints.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.jaegertracing.io/" target="_blank" rel="noopener noreferrer"&gt;Jaeger&lt;/a&gt;
, inspired by Dapper and OpenZipkin, is a distributed tracing system released as open source by Uber Technologies. It is used for monitoring and troubleshooting microservices-based distributed systems, including:&lt;/p&gt;</description></item><item><title>How to Create a Kubernetes Operator in Java</title><link>https://foojayio.github.io/website/today/creating-a-kubernetes-operator-in-java/</link><pubDate>Wed, 27 Jan 2021 08:46:27 +0000</pubDate><guid>https://foojayio.github.io/website/today/creating-a-kubernetes-operator-in-java/</guid><description>&lt;p&gt;Kubernetes is much more than a runtime platform for Docker containers.&lt;/p&gt;
&lt;p&gt;Through its API, you can not only create custom clients, but you can also extend Kubernetes. Those custom Controllers are called Operators and work with application-specific custom resource definitions. You can not only write those Kubernetes operators in Go, but you can do this also in Java.&lt;/p&gt;
&lt;p&gt;In this talk, delivered by Payara&amp;rsquo;s&lt;a href="https://twitter.com/rdebusscher" target="_blank" rel="noopener noreferrer"&gt;Rudy De Busscher&lt;/a&gt;
 at &lt;a href="https://jcon.one/en/" target="_blank" rel="noopener noreferrer"&gt;JCON 2020&lt;/a&gt;
, you will be guided through setting up your environment to your first explorations of the Kubernetes API within a plain Java program.&lt;/p&gt;</description></item><item><title>Hacking Java XML Input via External Entity Injection</title><link>https://foojayio.github.io/website/today/hacking-java-xml-input-via-external-entity-injection/</link><pubDate>Thu, 14 Jan 2021 08:37:10 +0000</pubDate><guid>https://foojayio.github.io/website/today/hacking-java-xml-input-via-external-entity-injection/</guid><description>&lt;p&gt;Java natively supplies many different options to parse XML. However, all available parsers in Java have XML eXternal Entity (XXE) enabled by default. This makes Java XML libraries particularly vulnerable to XXE injection.&lt;/p&gt;
&lt;p&gt;We already briefly went into XXE injection problem in an earlier &lt;a href="https://foojayio.github.io/website/today/how-to-configure-your-java-xml-parsers-to-prevent-xxe-attacks/"&gt;blog post&lt;/a&gt;
on foojay.io. However, let&amp;rsquo;s go a little deeper. In the video below, I explain and demonstrate how an XXE injection attack works by extracting system data that should not be exposed. I also show you how you can solve this in your Java code in multiple ways.&lt;/p&gt;</description></item><item><title>Minimizing Security Risks in Application Development</title><link>https://foojayio.github.io/website/today/minimizing-security-risks-in-java-application-development/</link><pubDate>Tue, 08 Dec 2020 11:02:28 +0000</pubDate><guid>https://foojayio.github.io/website/today/minimizing-security-risks-in-java-application-development/</guid><description>&lt;p&gt;United by their passion for open source, Payara and IBM recently teamed up for a panel discussion on security in Java application development.&lt;/p&gt;
&lt;p&gt;Security is something that is considered extremely important, however, it is not always something that is a priority for many development teams. The main question is&amp;mdash;how to minimize security risks while developing Java applications.&lt;/p&gt;
&lt;p&gt;In this panel discussion, our experts addressed a variety of topics related to secure application development. Most of the topics were introduced by questions from the audience.&lt;/p&gt;</description></item><item><title>MicroProfile Metrics with Prometheus and Grafana</title><link>https://foojayio.github.io/website/today/microprofile-metrics-with-prometheus-and-grafana/</link><pubDate>Wed, 02 Dec 2020 09:11:30 +0000</pubDate><guid>https://foojayio.github.io/website/today/microprofile-metrics-with-prometheus-and-grafana/</guid><description>&lt;p&gt;In a distributed microservices architecture, it is important to have an overview of your systems in terms of CPU, memory management and other important metrics.&lt;/p&gt;
&lt;p&gt;This is called &lt;em&gt;Observability&lt;/em&gt;, measuring the internal state of a system, in this case, the micro-services instances.&lt;/p&gt;
&lt;p&gt;These metrics are gathered centrally, so that you can instantly have an overview of all the values and it allows the determination (mostly automated based on some rules) of the health of the instances.&lt;/p&gt;</description></item><item><title>Getting Started Quickly and Easily with Payara Server</title><link>https://foojayio.github.io/website/today/getting-started-with-payara-server/</link><pubDate>Tue, 10 Nov 2020 09:39:02 +0000</pubDate><guid>https://foojayio.github.io/website/today/getting-started-with-payara-server/</guid><description>&lt;p&gt;The following four short videos will take you step-by-step through installing, writing, and deploying an application to &lt;a href="https://www.payara.fish/" title="Payara Server" target="_blank" rel="noopener noreferrer"&gt;Payara Server&lt;/a&gt;
, even if you&amp;rsquo;ve never used the application server before:&lt;/p&gt;
&lt;p&gt;{#more-36262}&lt;/p&gt;
&lt;h2 id="h2-0-introduction-to-payara-server"&gt;Introduction to Payara Server&lt;/h2&gt;
&lt;p&gt;Learn how to write a simple Hello World application and deploy it to Payara Server.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
			&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/KEsus1Ihjs4?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
		&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;&lt;strong&gt;Install Software&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Securing Microservices with Auth0 and MicroProfile in Kubernetes</title><link>https://foojayio.github.io/website/today/securing-microservices-with-auth0-and-microprofile-in-kubernetes/</link><pubDate>Tue, 03 Nov 2020 15:38:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/securing-microservices-with-auth0-and-microprofile-in-kubernetes/</guid><description>&lt;p&gt;In this day and age, securing enterprise platforms is a challenge that developers and consultants tackle in an uninformed manner, producing subpar solutions in most cases.&lt;/p&gt;
&lt;p&gt;To combat this pattern, third-party security services such as Auth0 have been devised to externalize the security of services, and they focus on stable implementations of common enterprise use cases (identity management, OAuth compatibility, and so on), and platforms such as &lt;a href="https://microprofile.io/" title="Eclipse MicroProfile" target="_blank" rel="noopener noreferrer"&gt;Eclipse MicroProfile&lt;/a&gt;
 allow for their easy integration with enterprise Java microservices.&lt;/p&gt;</description></item></channel></rss>