<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Opinion on foojay.io - Friends Of OpenJDK</title><link>https://foojay.io/today/category/opinion/</link><description>Recent content in Opinion on foojay.io - Friends Of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 30 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://foojay.io/today/category/opinion/index.xml" rel="self" type="application/rss+xml"/><item><title>Durable Execution Is a Property, Not a Product</title><link>https://foojay.io/today/durable-execution-is-a-property-not-a-product/</link><pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate><guid>https://foojay.io/today/durable-execution-is-a-property-not-a-product/</guid><description>&lt;p&gt;Three method calls. That is my entire workflow: charge a payment, reserve inventory, send a confirmation email.&lt;/p&gt;&#10;&lt;p&gt;Run those three calls on a dedicated workflow engine and here is what happens before your business logic is done: 23 history events are appended, 15 durable state transitions are committed to a database, and 15 gRPC round trips travel between your worker and the orchestration cluster.&lt;/p&gt;&#10;&lt;p&gt;That, in one paragraph, is why I want to talk about durable execution. Not because the engines are bad. They are impressive systems built by serious engineers. I want to talk about it because the Java community is being sold a property as if it were a product, and I think most of us already own the property.&lt;/p&gt;</description></item><item><title>My love-hate relationship with Java formatters</title><link>https://foojay.io/today/my-love-hate-relationship-with-java-formatters/</link><pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate><guid>https://foojay.io/today/my-love-hate-relationship-with-java-formatters/</guid><description>&lt;p&gt;Disclaimer: I don&amp;rsquo;t want to turn this into &amp;ldquo;Java formatters week&amp;rdquo;, but I started my own project a while ago, and I think it&amp;rsquo;s time for it to come out of stealth mode.&lt;/p&gt;&#10;&lt;p&gt;I&amp;rsquo;ve been writing Java for many, many years, and the Sun Code Conventions were my favorite bedside reading. I&amp;rsquo;ve seen plenty of variations over the years, and even after they became the Oracle Code Conventions, they were still the same few-page guide on how to write a hello-world app with the standard class library. For some reason I never took to the Google conventions: too C-flavored, with tiny indents, too few columns on the screen, and so on.&lt;/p&gt;</description></item><item><title>Quarkus Unpacked: Insights from the Foojay Podcast</title><link>https://foojay.io/today/quarkus-unpacked-insights-from-the-foojay-podcast/</link><pubDate>Tue, 23 Jun 2026 12:36:54 +0000</pubDate><guid>https://foojay.io/today/quarkus-unpacked-insights-from-the-foojay-podcast/</guid><description>&lt;figure class="alignleft is-resized"&gt;&#10; &lt;img src="https://foojay.io/today/quarkus-unpacked-insights-from-the-foojay-podcast/3-Quarkus-Unpacked-2-2.jpeg" alt="Quarkus: A Runtime and Framework for Cloud-Native Java" style="width:300px" loading="lazy" class="is-zoomable"&gt;&lt;/figure&gt;&#10;&#10;&lt;p&gt;I recently had the pleasure of joining the &lt;a href="https://www.youtube.com/watch?v=_nJCTTrnZkE" target="_blank" rel="noopener noreferrer"&gt;Foojay podcast&lt;/a&gt; to talk about Quarkus in depth. The conversation covered a lot of ground, from what makes Quarkus different to the practical trade-offs between JVM and native mode. This post captures the key questions and answers from that discussion, lightly edited for readability.&lt;/p&gt;&#10;&lt;p&gt;If you have been following this blog series, note that the third installment on building your own stack with Quarkus is coming next. Consider this a bonus entry that distills the podcast conversation into a format you can read, reference, and share.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #16</title><link>https://foojay.io/today/jc-ai-newsletter-16/</link><pubDate>Tue, 09 Jun 2026 18:28:33 +0000</pubDate><guid>https://foojay.io/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>JC-AI Newsletter #15</title><link>https://foojay.io/today/jc-ai-newsletter-15/</link><pubDate>Fri, 20 Mar 2026 07:56:01 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-15/</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 leaving. It is here to stay, and understanding its evolution is essential from many perspectives.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #14</title><link>https://foojay.io/today/jc-ai-newsletter-14/</link><pubDate>Tue, 03 Mar 2026 15:11:53 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-14/</guid><description>&lt;p&gt;&lt;strong&gt;Two&lt;/strong&gt; weeks have passed and a lot have been happening on the field of artificial-intelligence.&lt;/p&gt;&#10;&lt;p&gt;Two weeks have passed and a lot has been silently yet visibly happening in the field of artificial intelligence. This newsletter brings interesting developments, including Dario Amodei&amp;rsquo;s (Anthropic) view on the progress achieved in the LLM field and his response to the utilization of these models for specific kinds of military purposes, as well as OpenAI&amp;rsquo;s response to it. Aside from the fact that development may follow more sigmoids instead of exponential progress, it is important to have awareness of utilization across branches. Does prompting and clarifying the goal influence agent responses, and if so, how? How far are we from reliable robotics applications? How much bias is introduced when clinical data is being analyzed?&lt;/p&gt;</description></item><item><title>From “Crypto AI” to general AI: Do AI agents dream of electric langoustines?</title><link>https://foojay.io/today/from-crypto-ai-to-general-ai-do-ai-agents-dream-of-electric-langoustines/</link><pubDate>Mon, 23 Feb 2026 18:11:54 +0000</pubDate><guid>https://foojay.io/today/from-crypto-ai-to-general-ai-do-ai-agents-dream-of-electric-langoustines/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/from-crypto-ai-to-general-ai-do-ai-agents-dream-of-electric-langoustines/daydreams-2-scaled.jpg" alt="" width="1600" height="686" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;h2 id="x402-erc-8004-a2a-and-the-next-wave-of-ai-commerce-do-ai-agents-dream-of-electric-langoustines"&gt;&lt;strong&gt;x402, ERC-8004, A2A, and The Next Wave of AI Commerce: Do AI Agents Dream of Electric Langoustines?&lt;/strong&gt;&lt;/h2&gt;&#10;&lt;p&gt;&lt;em&gt;&lt;strong&gt;A Blade Runner riff for a world where the lobster ships paid endpoints while humans still argue about the roadmap.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#10;&lt;h2 id="the-shift-that-matters-for-agent-commerce---from-crypto-ai-to-general-ai"&gt;The shift that matters for agent commerce - From &amp;ldquo;Crypto AI&amp;rdquo; to general AI&lt;/h2&gt;&#10;&lt;p&gt;Today, you can search the web all day and never see an invoice.&lt;/p&gt;&#10;&lt;p&gt;That happens because you are not the paying client.&lt;/p&gt;</description></item><item><title>The Triforce That Slays Legacy Java Myths – Happy 40th Zelda!</title><link>https://foojay.io/today/the-triforce-that-slays-legacy-java-myths-happy-40th-zelda/</link><pubDate>Sat, 21 Feb 2026 18:13:03 +0000</pubDate><guid>https://foojay.io/today/the-triforce-that-slays-legacy-java-myths-happy-40th-zelda/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/the-triforce-that-slays-legacy-java-myths-happy-40th-zelda/zelda01-1024x683.png" alt="" width="1024" height="683" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;h4 id="happy-40th-anniversary-to-the-legend-of-zelda-"&gt;Happy 40th Anniversary to &lt;strong&gt;The Legend of Zelda&lt;/strong&gt;! 🎉🗡️&lt;/h4&gt;&#10;&lt;p&gt;Today, February 21, 2026, marks exactly 40 years since the original game launched in Japan on February 21, 1986. From the humble 8-bit NES adventure to the breathtaking open worlds of Breath of the Wild and Tears of the Kingdom, Zelda has constantly reinvented itself. Zelda evolved.&lt;/p&gt;&#10;&lt;p&gt;And that spirit perfectly mirrors what&amp;rsquo;s happening in the Java world right now. Java evolved.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #12</title><link>https://foojay.io/today/jc-ai-newsletter-12/</link><pubDate>Wed, 14 Jan 2026 07:15:44 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-12/</guid><description>&lt;p&gt;&lt;strong&gt;F&lt;/strong&gt; irst of all, &lt;strong&gt;Happy New Year 2026!&lt;/strong&gt; This year is designated in the Chinese Calendar as the Year of the Fire Horse (starting on February 17.). The year 2026 brings not only tremendous energy to AI development but also, in my humble opinion, many breakthroughs in the field.&lt;/p&gt;&#10;&lt;p&gt;Although there have been many small steps toward the field&amp;rsquo;s evolution, it often feels that development is stagnating, applying known or slightly tweaked strategies to non-deterministic problems while expecting deterministic results. This includes the often misleading benchmarking strategies (deterministic) performed on synthetic datasets.&lt;/p&gt;</description></item><item><title>Not a Lucid Web3 Dream Anymore: x402, ERC-8004, A2A, and The Next Wave of AI Commerce</title><link>https://foojay.io/today/not-a-lucid-web3-dream-anymore-x402-erc-8004-a2a-and-the-next-wave-of-ai-commerce/</link><pubDate>Fri, 09 Jan 2026 16:05:58 +0000</pubDate><guid>https://foojay.io/today/not-a-lucid-web3-dream-anymore-x402-erc-8004-a2a-and-the-next-wave-of-ai-commerce/</guid><description>&lt;p&gt;&lt;img src="https://foojay.io/today/not-a-lucid-web3-dream-anymore-x402-erc-8004-a2a-and-the-next-wave-of-ai-commerce/daydreams-scaled.jpg" alt="DayDreams" width="1600" height="686" loading="lazy" decoding="async"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;This article is for technically savvy readers, especially developers, protocol designers, and product teams working with AI agents, APIs, or crypto rails, who want a clear view of how these areas connect.&lt;/em&gt;&lt;br&gt;&#10;&lt;em&gt;It explains how x402, ERC-8004, and agent discovery layers turn APIs and agents into small usage-based businesses, and what that means for real systems over the next 1–3 years.&lt;/em&gt;&lt;/p&gt;&#10;&lt;blockquote&gt;&#10;&lt;h3 id="vocabulary-for-this-article"&gt;Vocabulary for this article&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;In this article, I use the term &lt;em&gt;micro business&lt;/em&gt; for a very small overall business, and &lt;em&gt;nano business&lt;/em&gt; for a single x402-priced endpoint or agent that earns on its own from per-call payments in stablecoins.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;AP2 (Agent Payment Protocol):&lt;/strong&gt; AP2 defines how agents pay each other. It standardizes how a service quotes a price, how payment is confirmed, and how both sides record what was bought, so payments fit directly into automated agent workflows. In practice, it is a protocol that lets one machine pay another machine for work, without a human in the loop.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;A2A (Agent-to-Agent communication):&lt;/strong&gt; A2A covers how agents talk, pass context, and coordinate work. It lets agents call each other, exchange structured messages, and chain tasks instead of acting as isolated scripts.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;x402:&lt;/strong&gt; x402 is an HTTP-based payment protocol for APIs. A server responds with status &lt;code&gt;402 Payment Required&lt;/code&gt;, the price, and a payment route, and the client pays by using stablecoins on-chain and then retries the request to get the result.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;ERC-8004 (8004):&lt;/strong&gt; ERC-8004 standard is an on-chain registry for agents. It gives each agent an identity and a place to store reputation data, so other agents and tools can decide whom to trust and which services to call.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="foreword"&gt;Foreword&lt;/h2&gt;&#10;&lt;p&gt;&lt;strong&gt;x402&lt;/strong&gt; and &lt;strong&gt;ERC-8004&lt;/strong&gt; .&lt;/p&gt;</description></item><item><title>2025 in retrospective</title><link>https://foojay.io/today/2025-in-retrospective/</link><pubDate>Mon, 05 Jan 2026 11:44:20 +0000</pubDate><guid>https://foojay.io/today/2025-in-retrospective/</guid><description>&lt;p&gt;From the beginning, the focus of this blog has been technical, very rarely organizational. I broke this unwritten rule &lt;a href="https://blog.frankel.ch/je-suis-charlie/" target="_blank" rel="noopener noreferrer"&gt;once&lt;/a&gt; in 2015. I began writing retrospectives in 2023 on the year that had passed. Let&amp;rsquo;s continue the tradition, but with a wider scope than before. The situation warrants it.&lt;/p&gt;&#10;&lt;h2 id="more-chaos"&gt;More chaos&lt;/h2&gt;&#10;&lt;p&gt;It&amp;rsquo;s a hard realization to admit, but the world is spiraling deeper and deeper into chaos. Russia&amp;rsquo;s invasion of Ukraine has now dragged into its third year, and still, neither the European Union nor NATO has mustered the resolve to intervene militarily. Every day brings fresh reports of Russian war crimes, met only with our silent complicity. The strongest response we seem capable of is to &amp;ldquo;strongly condemn.&amp;rdquo;&lt;/p&gt;</description></item><item><title>JC-AI Newsletter: Easy Access to Expanding Challenges</title><link>https://foojay.io/today/jc-ai-newsletter-easy-access-to-expanding-challenges/</link><pubDate>Tue, 04 Nov 2025 18:13:33 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-easy-access-to-expanding-challenges/</guid><description>&lt;p&gt;&lt;strong&gt;A&lt;/strong&gt; few months ago, I launched the &lt;a href="https://foojay.io/today/category/jc-ai-newsletter/"&gt;AI Newsletter&lt;/a&gt; to provide a minimally biased perspective on the growing challenges surrounding artificial intelligence.&lt;/p&gt;&#10;&lt;p&gt;My primary motivation was and remains to be serving the community not only by showing how to use and access specific services for utilizing Large Language Models, but also by support a deeper understanding of the broader artificial intelligence landscape.&lt;/p&gt;&#10;&lt;p&gt;Many of the core challenges that have emerged around LLMs have not been and still not properly addressed, often omitted due to their uncomfortable implications.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #7</title><link>https://foojay.io/today/jc-ai-newsletter-7/</link><pubDate>Tue, 14 Oct 2025 05:35:01 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-7/</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;&#10;&lt;p&gt;Beyond focused tutorials that can enhance your understanding of AI applications, this newsletter concentrates on Hallucination, Java Code Generation, Testing, Agentic System Architecture and LLM benchmarking methodologies designed to ensure models accuracy and competency in handling complex contextual information.&lt;/p&gt;&#10;&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 #5</title><link>https://foojay.io/today/jc-ai-newsletter-5/</link><pubDate>Thu, 18 Sep 2025 07:19:33 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-5/</guid><description>&lt;h3 id="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"&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;/h3&gt;&#10;&lt;p&gt;Beyond opinion pieces and Java focused tutorials that can enhance your understanding of AI applications, this newsletter concentrates on LLM benchmarking methodologies designed to ensure models accuracy and competency in handling complex contextual information.&lt;/p&gt;&#10;&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>Stochastic AI Agility: Breaking Cycles of Debt</title><link>https://foojay.io/today/stochastic-ai-agility-breaking-cycles-of-debt/</link><pubDate>Wed, 10 Sep 2025 11:27:16 +0000</pubDate><guid>https://foojay.io/today/stochastic-ai-agility-breaking-cycles-of-debt/</guid><description>&lt;p&gt;&lt;strong&gt;The launch of ChatGPT in November 2022 has significantly influenced and potentially transformed industry standards across multiple sectors. While my primary focus remains on the information technology sector, observations indicate that its impact extends across all industries and affects the daily lives of consumers and professionals alike.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;This article examines the observed changes in project management practices. These observations are govern by Role 17: Stochastic AI Agility. Over past two decades, the industry has actively pursued the implementation of agile methodologies to enable iterative product delivery.&lt;/p&gt;</description></item><item><title>Spec-Driven Development with AI: A New Approach and a Journey into the Past</title><link>https://foojay.io/today/spec-driven-development-with-ai-a-new-approach-and-a-journey-into-the-past/</link><pubDate>Mon, 08 Sep 2025 07:35:46 +0000</pubDate><guid>https://foojay.io/today/spec-driven-development-with-ai-a-new-approach-and-a-journey-into-the-past/</guid><description>&lt;p&gt;The software development world is buzzing about AI-assisted coding. Tools like Claude Code, Windsurf, and JetBrains Junie promise to make us more productive. But most approaches focus on generating code faster – they&amp;rsquo;re still &lt;strong&gt;code-centric&lt;/strong&gt;.&lt;/p&gt;&#10;&lt;p&gt;What if we took a different approach? What if we made &lt;strong&gt;requirements&lt;/strong&gt; the source of truth and let AI handle everything downstream?&lt;/p&gt;&#10;&lt;p&gt;After years of building business applications, I began developing a methodology that combines ideas from the &lt;a href="https://en.wikipedia.org/wiki/Rational_unified_process" target="_blank" rel="noopener noreferrer"&gt;Rational Unified Process&lt;/a&gt; (RUP) with modern AI tooling: The &lt;a href="https://aiup.dev" target="_blank" rel="noopener noreferrer"&gt;AI Unified Process&lt;/a&gt;. The results are remarkable: better business alignment, maintainable code, and complete traceability from business needs to implementation.&lt;/p&gt;</description></item><item><title>JC-AI Newsletter #3</title><link>https://foojay.io/today/jc-ai-newsletter-3/</link><pubDate>Tue, 19 Aug 2025 08:06:34 +0000</pubDate><guid>https://foojay.io/today/jc-ai-newsletter-3/</guid><description>&lt;p&gt;&lt;strong&gt;The &lt;a href="https://foojay.io/today/ai-newsletter-1/" title="first"&gt;first&lt;/a&gt; and &lt;a href="https://foojay.io/today/jc-ai-newsletter-2/" title="second"&gt;second&lt;/a&gt; newsletters introduced a 14-day cadence, and even though it is the holiday season for many of us, we are sticking to the promised period.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;The current newsletter vol.3, brings a collection of valuable articles focusing on challenges that are commonly reported through reported breakthroughs in the field of artificial intelligence. Although some articles may remain open or contain suggestions for future research due to the intensive development and utilization efforts of agentic AI systems, these articles can be considered valuable to the community, increasing awareness and understanding of ongoing challenges.&lt;/p&gt;</description></item><item><title>Kotlin adoption inside ING, five years later</title><link>https://foojay.io/today/ing-kotlin-adoption-five-years/</link><pubDate>Wed, 02 Jul 2025 06:21:47 +0000</pubDate><guid>https://foojay.io/today/ing-kotlin-adoption-five-years/</guid><description>&lt;p&gt;&lt;em&gt;TL;DR: Five years after its introduction Kotlin adoption inside ING keeps growing year after year, with a current adoption rate of just over 11%. We were also featured as one of the user stories for the KotlinConf 2025 Keynote.&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Five years ago, &lt;a href="https://medium.com/@Frevib" target="_blank" rel="noopener noreferrer"&gt;Hielke&lt;/a&gt; and I wrote one of the first blogs of this account about being &lt;a href="https://medium.com/ing-blog/introducing-kotlin-at-ing-a-long-but-rewarding-story-1bfcd3dc8da0" target="_blank" rel="noopener noreferrer"&gt;the first team to put Kotlin on production at ING&lt;/a&gt;. The article generated some interest and to this day it is still present as one of the &lt;a href="https://kotlinlang.org/lp/server-side/case-studies/" target="_blank" rel="noopener noreferrer"&gt;Kotlin website case studies&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>On inheritance and subtyping</title><link>https://foojay.io/today/on-inheritance-and-subtyping/</link><pubDate>Sun, 26 Jan 2025 12:45:07 +0000</pubDate><guid>https://foojay.io/today/on-inheritance-and-subtyping/</guid><description>&lt;p&gt;Java is the first language I learned in my career. Its structure is foundational in my early years of understanding programming concepts. After going through several other languages with very different approaches, I&amp;rsquo;ve widened my point of view. Today, I want to reflect on the idea of &lt;em&gt;inheritance&lt;/em&gt;.&lt;/p&gt;&#10;&lt;h2 id="inheritance-in-java"&gt;Inheritance in Java&lt;/h2&gt;&#10;&lt;p&gt;In Java, the idea of &lt;em&gt;inheritance&lt;/em&gt; is tightly coupled with the concept of &lt;em&gt;subtyping&lt;/em&gt; . Subtyping is the implementation of a &lt;em&gt;IS A&lt;/em&gt; relationship. For example, the &lt;code&gt;Rabbit&lt;/code&gt; class is a subtype of the &lt;code&gt;Mammal&lt;/code&gt; class. Henceforth, a &lt;code&gt;Rabbit&lt;/code&gt; instance has all the &lt;em&gt;behaviour&lt;/em&gt; of a &lt;code&gt;Mammal&lt;/code&gt;: it inherits the behaviour.&lt;/p&gt;</description></item><item><title>Reflections on 2024: OmniFish, GlassFish, Piranha, Jakarta EE</title><link>https://foojay.io/today/reflections-on-2024-a-remarkable-year-for-omnifish-glassfish-piranha-and-jakarta-ee/</link><pubDate>Thu, 16 Jan 2025 08:43:09 +0000</pubDate><guid>https://foojay.io/today/reflections-on-2024-a-remarkable-year-for-omnifish-glassfish-piranha-and-jakarta-ee/</guid><description>&lt;p&gt;&lt;strong&gt;As 2025 slowly gets started, it&amp;rsquo;s a perfect moment to reflect on what we at &lt;a href="https://omnifish.ee/" target="_blank" rel="noopener noreferrer"&gt;OmniFish&lt;/a&gt; have achieved this year. It has been a year of growth, innovation, and dedication to the open-source community and the products we&amp;rsquo;re deeply passionate about.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;From expanding our team to pushing the boundaries of what GlassFish and Piranha can do, this year has been nothing short of transformative. Let&amp;rsquo;s take a look back at some of the highlights and share our hopes for an even brighter future.&lt;/p&gt;</description></item><item><title>2024 in Retrospective: Nicolas Frankel</title><link>https://foojay.io/today/2024-in-retrospective-nicolas-frankel/</link><pubDate>Mon, 06 Jan 2025 08:59:26 +0000</pubDate><guid>https://foojay.io/today/2024-in-retrospective-nicolas-frankel/</guid><description>&lt;p&gt;For the first article of 2025, I&amp;rsquo;m continuing my retrospective series!&lt;/p&gt;&#10;&lt;p&gt;As last year, before diving in into the report proper, I&amp;rsquo;d like to remind you that Ukraine is still fighting for its survival after nearly 3 years and countless Russian war crimes. The civilized world can&amp;rsquo;t allow rewarding the invasion of a sovereign country, lest we see more invasions. Remember that in 1938, in Munich, European &amp;ldquo;leaders&amp;rdquo; acknowledged Hitler&amp;rsquo;s annexation of Czechoslovakia&amp;rsquo;s Sudetenland. It didn&amp;rsquo;t prevent Nazi Germany to invade the rest of Europe a year later; worse, it emboldened it!&lt;/p&gt;</description></item><item><title>How Organizations Became Stuck on Outdated Java Versions</title><link>https://foojay.io/today/how-organizations-became-stuck-on-outdated-java-versions/</link><pubDate>Wed, 27 Nov 2024 15:46:16 +0000</pubDate><guid>https://foojay.io/today/how-organizations-became-stuck-on-outdated-java-versions/</guid><description>&lt;p&gt;My recent article &lt;a href="https://foojay.io/today/why-java-8-is-a-ticking-time-bomb-hiding-within-your-organization/"&gt;&amp;ldquo;Why Java 8 is a Ticking Time Bomb Hiding Within Your Organization&amp;rdquo;&lt;/a&gt; triggered quit some reactions&amp;hellip; and so I went a step further and asked on social media: &amp;ldquo;&lt;em&gt;Why is your company still on Java 8 (or older)? And why did you never move to 9, 10,&amp;hellip; and got stuck on this outdated version?&lt;/em&gt;&amp;rdquo;&lt;/p&gt;&#10;&lt;p&gt;Here is a summary of what I learned from the reactions!&lt;/p&gt;&#10;&lt;h2 id="reasons-to-stick-to-8"&gt;Reasons to Stick to 8&lt;/h2&gt;&#10;&lt;p&gt;Of course, there are many reasons why some projects deliberately are kept on Java 8 or don&amp;rsquo;t succeed on moving to a newer version.&lt;/p&gt;</description></item><item><title>Why Java 8 is a Ticking Time Bomb Hiding Within Your Organization</title><link>https://foojay.io/today/why-java-8-is-a-ticking-time-bomb-hiding-within-your-organization/</link><pubDate>Fri, 15 Nov 2024 11:16:00 +0000</pubDate><guid>https://foojay.io/today/why-java-8-is-a-ticking-time-bomb-hiding-within-your-organization/</guid><description>&lt;p&gt;When I spoke to developers at Devoxx in Belgium in October, I was surprised to learn how many of them are maintaining systems that are still running on Java 8 (released in 2014). One of them even still has a Java 5 application in production, with a runtime of 20 years old!&lt;/p&gt;&#10;&lt;p&gt;I know I&amp;rsquo;m biased, as I experiment extensively with the latest Java versions to learn what improvements they bring. But it hurts my heart to think of all those developers maintaining old systems, missing out on all the coding and performance improvements that newer versions offer. In this post, I want to highlight some of the many reasons why staying on Java 8 is a ticking time bomb&amp;hellip;&lt;/p&gt;</description></item><item><title>My opinion on the Tauri framework</title><link>https://foojay.io/today/my-opinion-on-the-tauri-framework/</link><pubDate>Thu, 30 May 2024 16:05:06 +0000</pubDate><guid>https://foojay.io/today/my-opinion-on-the-tauri-framework/</guid><description>&lt;p&gt;&lt;strong&gt;I&amp;rsquo;ve always liked , both desktop-based and browser-based before you needed five years of training on the latter. That&amp;rsquo;s the reason I loved, and still love &lt;a href="https://vaadin.com/" target="_blank" rel="noopener noreferrer"&gt;Vaadin&lt;/a&gt;: you can develop web UIs without writing a single line of HTML, JavaScript, and CSS. I&amp;rsquo;m still interested in the subject; a couple of years ago, I analyzed the &lt;a href="https://blog.frankel.ch/focus/state-jvm-desktop-frameworks/" target="_blank" rel="noopener noreferrer"&gt;state of JVM desktop frameworks&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;I also like the Rust programming language a lot.&lt;/p&gt;</description></item><item><title>Five Java Developer Must-Haves For Ultra-Fast Startup Solutions</title><link>https://foojay.io/today/five-java-developer-must-haves/</link><pubDate>Wed, 29 May 2024 20:15:45 +0000</pubDate><guid>https://foojay.io/today/five-java-developer-must-haves/</guid><description>&lt;p&gt;&lt;strong&gt;Faster Java startup must not compromise developer experience, throughput performance, or security. We discuss how we achieved this with Liberty InstantOn.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;By Vijay Sundaresan, Thomas Watson, Laura Cowen&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;Many solutions that promise ultra-fast startup times for serverless Java apps force you to compromise on developer experience, throughput performance, or security. We&amp;rsquo;ll show you how to get ultra-fast startup of your Java apps without these compromises.&lt;/p&gt;&#10;&lt;p&gt;Say, for example, you&amp;rsquo;re writing a Java web service that provides a catalog of items that your business sells. At quiet times, your application needs to stop all unneeded instances of the catalog service so that your business is not paying unnecessary cloud bills; at busy times, your application needs to rapidly spin up more instances so that your customers get instantaneous response times on your website. This is &amp;ldquo;scale-to-zero,&amp;rdquo; and your application needs to do it fast.&lt;/p&gt;</description></item><item><title>Why I moved my blog to RIFE2 after 23 years?</title><link>https://foojay.io/today/why-i-moved-my-blog-to-rife2-after-23-years/</link><pubDate>Tue, 05 Mar 2024 06:42:47 +0000</pubDate><guid>https://foojay.io/today/why-i-moved-my-blog-to-rife2-after-23-years/</guid><description>&lt;p&gt;In April 2023, I decided to move &lt;a href="https://erik.thauvin.net/blog/" title="my blog" target="_blank" rel="noopener noreferrer"&gt;my blog&lt;/a&gt; to &lt;a href="https://rife2.com/" target="_blank" rel="noopener noreferrer"&gt;RIFE2&lt;/a&gt;, a full-stack framework. It was previously built &lt;a href="https://erik.thauvin.net/blog/stories//15/behind-this-blog" target="_blank" rel="noopener noreferrer"&gt;using my own custom JSP tag library&lt;/a&gt;, which ran non-stop for 23 years. At one point in time, it was handling close to 5 connections per second, or around 12 million a month, on a single Apache/Tomcat instance.&lt;/p&gt;&#10;&lt;p&gt;Over the years, I tried many frameworks, and the features never made up for the bloat. I&amp;rsquo;ve also never been a big fan of the MVC approach, and I wanted it to be very lean. RIFE2 no-dependencies approach immediately appealed to me, but I wasn&amp;rsquo;t sure the features passed muster.&lt;/p&gt;</description></item><item><title>State of Open (Source?!) and Free AI</title><link>https://foojay.io/today/state-of-open-source-and-free-ai-a-fosdem-recap/</link><pubDate>Thu, 15 Feb 2024 13:04:44 +0000</pubDate><guid>https://foojay.io/today/state-of-open-source-and-free-ai-a-fosdem-recap/</guid><description>&lt;p&gt;&lt;em&gt;Disclaimer: This article is on the things I learned/observed spending the day in AI and Machine Learning Developer Room at FOSDEM 24. Opinions and statements are mine and have nothing to do with my employer. This article might raise more questions than answers, but in my opinion, we all need more awareness on this topic and get familiar with the (right) questions that are to be answered.&lt;/em&gt;&lt;/p&gt;&#10;&lt;h3 id="fosdem"&gt;FOSDEM&lt;/h3&gt;&#10;&lt;p&gt;&lt;a href="https://fosdem.org/2024/" title="FOSDEM" target="_blank" rel="noopener noreferrer"&gt;FOSDEM&lt;/a&gt; (Free Open-Source Developers&amp;rsquo;European Meeting) is a community-organised event that is free and non-commercial. The aim is to provide a venue for free and open-source software developers and communities to:&lt;/p&gt;</description></item><item><title>Where do you get your Java?</title><link>https://foojay.io/today/where-do-you-get-your-java/</link><pubDate>Tue, 16 Jan 2024 14:19:33 +0000</pubDate><guid>https://foojay.io/today/where-do-you-get-your-java/</guid><description>&lt;p&gt;Today&amp;rsquo;s Java is vastly different, although it is still true to its root principles of robustness, portability, and ease of programming. Your options for where to get your Java have similarly evolved.&lt;/p&gt;&#10;&lt;p&gt;If you download Java directly, you might think that you can only get an official version from Oracle. This is no longer the case. In fact, there are a number of vendors that now provide their own Java distributions that are 100% compatible with the official Java specification.&lt;/p&gt;</description></item><item><title>2023 in Retrospective</title><link>https://foojay.io/today/2023-in-retrospective/</link><pubDate>Tue, 16 Jan 2024 07:44:39 +0000</pubDate><guid>https://foojay.io/today/2023-in-retrospective/</guid><description>&lt;p&gt;&lt;strong&gt;Last year, I wrote my first &lt;a href="https://blog.frankel.ch/retrospective/" target="_blank" rel="noopener noreferrer"&gt;yearly retrospective&lt;/a&gt;. I liked the experience, so I&amp;rsquo;m trying one more time. Let the future decide if it will become a trend or not.&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;Before diving into our safe technological world, my thoughts go to Ukraine, to my friends who had to flee their own country, to other friends who fought on the front to defend it from an imperial power, and to all victims of an old kleptocrat who clings to power despite the cost to others. The free world needs to support Ukraine more. I hope 2024 will be the year of Ukrainian victory.&lt;/p&gt;</description></item><item><title>Unexpected Things That Make You a Senior Developer</title><link>https://foojay.io/today/unexpected-things-that-make-you-a-senior-developer/</link><pubDate>Fri, 17 Nov 2023 09:33:36 +0000</pubDate><guid>https://foojay.io/today/unexpected-things-that-make-you-a-senior-developer/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;It&amp;rsquo;s a Friday, late in the afternoon. To end your work week in a clean way, you decide to get rid of some test data and files from your PC. You hit the enter button to drop a table from your local test database. Within a split second, you realize your error. Your body turns hot and cold at the same time. You double-check, but you already know the truth. You were connected to the production database and just deleted the table with all the customers…&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;</description></item></channel></rss>