<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Simon Ritter on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/author/simonritter/</link><description>Articles written by Simon Ritter on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 16 Mar 2026 06:58:00 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/author/simonritter/index.xml" rel="self" type="application/rss+xml"/><item><title>Foojay Podcast #92: Java 26 Is Here: What's New, What's Gone, and Why It Matters in 2026</title><link>https://foojayio.github.io/website/today/foojay-podcast-92/</link><pubDate>Mon, 16 Mar 2026 06:58:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-92/</guid><description>&lt;p&gt;Welcome to another episode of the Foojay Podcast! In this episode, we&amp;rsquo;re talking about Java 26, released on March 17 in the year 26. Again, right on schedule with Java&amp;rsquo;s six-month release cadence.&lt;/p&gt;
&lt;p&gt;Now, Java 26 is not a Long Term Support (LTS) release; that was Java 25. But don&amp;rsquo;t let that fool you into thinking there&amp;rsquo;s nothing interesting here. This release brings ten JDK Enhancement Proposals (JEPs). They cover everything from performance improvements to long-overdue cleanups. Of those ten JEPS, five are new features, and we also get five preview/incubator features.&lt;/p&gt;</description></item><item><title>More Java From Azul!</title><link>https://foojayio.github.io/website/today/more-java-from-azul/</link><pubDate>Wed, 10 Dec 2025 17:14:23 +0000</pubDate><guid>https://foojayio.github.io/website/today/more-java-from-azul/</guid><description>&lt;p&gt;&lt;strong&gt;Azul is a company focused purely on Java through builds of OpenJDK, in the form of Platform Core, and our high-performance Java platform (including JVM), Platform Prime. We build on these with Intelligence Cloud to deliver precise information about security vulnerabilities in running code, unused code and an inventory of all JVMs in use.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When looking at expanding the company through acquisition, we obviously wanted to maintain that dedication to all things Java, so what better company than Payara?&lt;/p&gt;</description></item><item><title>What Happens When 10,000 JVMs Collaborate</title><link>https://foojayio.github.io/website/today/what-happens-when-10000-jvms-collaborate-in-one-production-environment/</link><pubDate>Mon, 13 Oct 2025 07:03:51 +0000</pubDate><guid>https://foojayio.github.io/website/today/what-happens-when-10000-jvms-collaborate-in-one-production-environment/</guid><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;A large global enterprise achieved a performance and efficiency milestone, running 10,000 Java Virtual Machines (JVMs) that collaborate and share optimizations with one another, using Azul Platform Prime&amp;rsquo;s Optimizer Hub. The enterprise improved application responsiveness and stability at scale while reducing infrastructure costs, which has resulted in better user experiences and greater business efficiency.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;In this post you will learn: how&lt;/em&gt;&amp;hellip;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;A global enterprise sustained rising cloud costs to support the company&amp;rsquo;s ongoing success&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Azul Platform Prime with Optimizer Hub is delivering cloud cost savings of more than 20%&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Optimizer Hub is improving cloud-centric Java application startup, warmup and runtime performance by offloading optimization tasks from JVMs to a centralized set of services&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Earlier this year, an &lt;a href="https://www.azul.com/products/prime/" target="_blank" rel="noopener noreferrer"&gt;Azul Platform Prime&lt;/a&gt;
 enterprise customer achieved something no other organization has ever accomplished: seamless collaboration between more than 10,000 JVMs across hundreds of applications using a single instance of Platform Prime&amp;rsquo;s Optimizer Hub. In case you&amp;rsquo;re wondering, here&amp;rsquo;s why that&amp;rsquo;s big news.&lt;/p&gt;</description></item><item><title>Foojay Podcast #78: Welcome to OpenJDK 25!</title><link>https://foojayio.github.io/website/today/foojay-podcast-78/</link><pubDate>Mon, 15 Sep 2025 10:22:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-78/</guid><description>&lt;p&gt;We&amp;rsquo;re excited to present the first episode of the Foojay Podcast&amp;rsquo;s fifth season, marking the release of OpenJDK 25!&lt;/p&gt;
&lt;p&gt;For the first time, an OpenJDK release is aligned with the year, and we can welcome release 25 in 2025. As usual in the release podcast, I have my regular guest, Simon Ritter. And in this episode, we are joined by Balkrishna Rawool to talk about all the new features in this new OpenJDK version.&lt;/p&gt;</description></item><item><title>Taking Java Arrays to Another Dimension</title><link>https://foojayio.github.io/website/today/taking-java-arrays-to-another-dimension/</link><pubDate>Fri, 29 Aug 2025 12:53:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/taking-java-arrays-to-another-dimension/</guid><description>&lt;p&gt;&lt;em&gt;Explore the intricacies of Java&amp;rsquo;s multidimensional arrays with this in-depth guide. Learn how to declare, initialize, and utilize arrays of Java arrays to manage complex data structures effectively. In this blog post, Azul Deputy CTO Simon Ritter explains how to leverage multidimensional arrays as a tool to do even more.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Java, along with many other programming languages, includes the concept of arrays. An array is an object that contains a number of variables. Since an array is itself an object, the variables in an array can also be arrays, which leads us to the idea of multidimensional arrays.&lt;/p&gt;</description></item><item><title>Six JDK 24 Features You Should Know About</title><link>https://foojayio.github.io/website/today/six-jdk-24-features-you-should-know-about/</link><pubDate>Thu, 03 Apr 2025 08:42:12 +0000</pubDate><guid>https://foojayio.github.io/website/today/six-jdk-24-features-you-should-know-about/</guid><description>&lt;p&gt;&lt;em&gt;Since 2018, we&amp;rsquo;ve had a new release of the Java platform every six months. With Swiss watch-like regularity, the latest version of Java is upon us. This time it&amp;rsquo;s JDK 24. In an almost poetic way, it contains 24 JDK Enhancement Proposals (JEPs).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;JDK 24, which was released on March 18, 2025, has 24 JDK Enhancement Proposals (JEPs), the largest number of new features since the introduction of the time-based release schedule. While 10 of them are preview features, incubator modules, or experimental, that still leaves 14 new features.&lt;/p&gt;</description></item><item><title>Foojay Podcast #68: Welcome to OpenJDK (Java) 24</title><link>https://foojayio.github.io/website/today/foojay-podcast-68/</link><pubDate>Mon, 17 Mar 2025 06:44:08 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-68/</guid><description>&lt;p&gt;We serve you a podcast about the new Java version every six months.&lt;/p&gt;
&lt;p&gt;Our regular guest, Simon Ritter, Deputy CTO of Azul, is known on social media as &amp;ldquo;speakjava.&amp;rdquo; He is part of the OpenJDK vulnerability group, JCP executive committee, and expert group for the Java SE specification request so that he can share a lot of inside information with us.&lt;/p&gt;
&lt;p&gt;In this episode, we are joined by Hanno Embregts, a Java Developer by day and musician by night. He publishes a post on Foojay with all the details of every new Java release and prepared a long description of all the new features included in Java 24.&lt;/p&gt;</description></item><item><title>Foojay Podcast #57: Welcome to OpenJDK 23</title><link>https://foojayio.github.io/website/today/foojay-podcast-57/</link><pubDate>Mon, 16 Sep 2024 11:34:40 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-57/</guid><description>&lt;p&gt;OpenJDK (Java) 23 is (almost) here!&lt;/p&gt;
&lt;p&gt;OpenJDK 23 introduces three new features to the language and runtime and many bug fixes, small improvements, and a longer list of preview features.&lt;/p&gt;
&lt;p&gt;What are the most important facts about this release? Let&amp;rsquo;s find out&amp;hellip;&lt;/p&gt;
&lt;h2 id="h2-0-video"&gt;Video&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/7PGOhbiPoRY?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-1-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>Connecting Resilience to Performance in Relation to OpenJDK</title><link>https://foojayio.github.io/website/today/connecting-resilience-to-performance-in-relation-to-openjdk/</link><pubDate>Thu, 22 Aug 2024 08:22:37 +0000</pubDate><guid>https://foojayio.github.io/website/today/connecting-resilience-to-performance-in-relation-to-openjdk/</guid><description>&lt;p&gt;&lt;strong&gt;When considering the connection between performance and resilience in Java, especially in the context of OpenJDK distributions, specific distributions&amp;mdash;like &lt;a href="https://www.azul.com/products/prime/" target="_blank" rel="noopener noreferrer"&gt;Azul Platform Prime&lt;/a&gt;
, which includes Azul Zing, an enhanced build of OpenJDK for superior performance, consistency, and efficiency&amp;mdash;offer unique features that can significantly influence how these two aspects are managed.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href="https://foojayio.github.io/website/today/the-impact-of-the-digital-operational-resilience-act-dora-on-java-investment-with-azul/"&gt;Digital Operational Resilience Act (DORA) by the European Union&lt;/a&gt;
 adds another layer of importance to these considerations, particularly for financial institutions operating within the EU, &lt;a href="https://foojayio.github.io/website/today/the-impact-of-the-eu-dora-act-on-non-eu-financial-organizations/"&gt;regardless of whether they are themselves EU-based institutions&lt;/a&gt;
.&lt;/p&gt;</description></item><item><title>The Impact of the EU DORA Act on Non-EU Financial Organizations</title><link>https://foojayio.github.io/website/today/the-impact-of-the-eu-dora-act-on-non-eu-financial-organizations/</link><pubDate>Wed, 14 Aug 2024 05:33:09 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-impact-of-the-eu-dora-act-on-non-eu-financial-organizations/</guid><description>&lt;p&gt;&lt;strong&gt;The &lt;a href="https://foojayio.github.io/website/today/the-impact-of-the-digital-operational-resilience-act-dora-on-java-investment-with-azul/"&gt;EU Digital Operational Resilience Act (DORA)&lt;/a&gt;
 is a significant regulatory framework designed to strengthen the digital resilience of financial institutions within the European Union.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;While the primary focus of DORA is on EU-based entities, its impact extends beyond the EU&amp;rsquo;s borders, particularly to financial organizations outside the EU that have business ties with the region.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how DORA impacts financial organizations outside the EU.&lt;/p&gt;
&lt;h3 id="h3-0-1-third-party-service-providers"&gt;1. &lt;strong&gt;Third-Party Service Providers&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Scope of Regulation&lt;/strong&gt;. DORA covers not just financial entities within the EU but also third-party service providers, including Cloud services, software providers, and IT services. If these providers serve EU financial institutions, they must comply with DORA&amp;rsquo;s requirements, even if they are based outside the EU.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Increased Compliance Costs&lt;/strong&gt;. Non-EU service providers might need to invest in compliance infrastructure to meet DORA standards, which include stringent cybersecurity measures, operational resilience requirements, and incident reporting protocols.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Operational Changes&lt;/strong&gt;. These providers may need to adapt their operations to comply with DORA&amp;rsquo;s requirements, potentially impacting service delivery, pricing, and contractual arrangements with their EU clients.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-1-2-cross-border-operations"&gt;2. &lt;strong&gt;Cross-Border Operations&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;EU Subsidiaries&lt;/strong&gt;. Non-EU financial organizations with subsidiaries or branches in the EU must ensure that these entities comply with DORA. This might require significant changes in internal processes, governance structures, and IT systems.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Data Protection and Transfer&lt;/strong&gt;. DORA&amp;rsquo;s focus on operational resilience and cybersecurity intersects with data protection regulations. Non-EU organizations must ensure that data transfers and processing are compliant with EU standards, which could involve changes in data management practices.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-2-3-competitive-pressure"&gt;3. &lt;strong&gt;Competitive Pressure&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Market Access&lt;/strong&gt;. To maintain or gain access to the EU market, non-EU financial organizations must align with DORA&amp;rsquo;s requirements. Failure to comply might restrict their ability to operate within the EU or provide services to EU-based clients.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reputation and Trust&lt;/strong&gt;. Organizations that proactively comply with DORA may gain a competitive edge by being seen as trustworthy and secure partners. Conversely, those that lag may face reputational risks, especially in a market increasingly focused on cybersecurity and operational resilience.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-3-4-indirect-impact-through-business-relationships"&gt;4. &lt;strong&gt;Indirect Impact Through Business Relationships&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Supply Chain Scrutiny&lt;/strong&gt;. DORA requires EU financial entities to ensure that their supply chain, including non-EU entities, adheres to operational resilience standards. Non-EU organizations in these supply chains may face increased scrutiny and pressure to comply with DORA, indirectly impacting their operations and costs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contractual Obligations&lt;/strong&gt;. Financial institutions in the EU may impose new contractual obligations on non-EU partners to ensure DORA compliance. This could lead to renegotiation of contracts and increased legal and operational overheads for non-EU entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-4-5-global-regulatory-influence"&gt;5. &lt;strong&gt;Global Regulatory Influence&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Precedent for Other Jurisdictions&lt;/strong&gt;. DORA could set a precedent, encouraging other jurisdictions to adopt similar regulatory frameworks. Non-EU financial organizations may find themselves needing to adapt to a broader wave of operational resilience regulations globally, beyond just the EU.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-5-6-impact-on-financial-services-market"&gt;6. &lt;strong&gt;Impact on Financial Services Market&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Barrier to Entry&lt;/strong&gt;. DORA&amp;rsquo;s stringent requirements might act as a barrier to entry for smaller or less-resourced non-EU financial firms seeking to enter the EU market, potentially limiting competition.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Innovation and Fintech&lt;/strong&gt;. While aiming to enhance security, DORA may also slow down innovation, as non-EU fintech firms might find the compliance burden heavy, possibly leading to a more cautious approach in launching new products or services in the EU.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="h3-6-summary"&gt;Summary&lt;/h3&gt;
&lt;p&gt;The EU DORA Act significantly impacts financial organizations outside the EU, especially those providing services to or operating within the EU.&lt;/p&gt;</description></item><item><title>Are Java Security Updates Important?</title><link>https://foojayio.github.io/website/today/are-java-security-updates-important/</link><pubDate>Sat, 03 Aug 2024 14:56:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/are-java-security-updates-important/</guid><description>&lt;p&gt;&lt;strong&gt;Recently, I was in discussion with a Java user at a bank about the possibilities of using &lt;a href="https://www.azul.com/products/core/" target="_blank" rel="noopener noreferrer"&gt;Azul Platform Core&lt;/a&gt;
 (formerly known as Zulu) to run a range of applications. One of the most significant advantages for mission-critical enterprise applications is knowing that you have access to the latest security patches and bug fixes. With Platform Core, these are provided within a defined SLA after the embargo for updates is lifted (this is essentially the point in time when Oracle releases the update to their JDK).&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Consequences of DORA on Java and OpenJDK with Azul</title><link>https://foojayio.github.io/website/today/consequences-of-dora-on-java-and-openjdk-with-azul/</link><pubDate>Fri, 02 Aug 2024 13:49:44 +0000</pubDate><guid>https://foojayio.github.io/website/today/consequences-of-dora-on-java-and-openjdk-with-azul/</guid><description>&lt;p&gt;&lt;strong&gt;The EU&amp;rsquo;s &lt;a href="https://foojayio.github.io/website/today/the-impact-of-the-digital-operational-resilience-act-dora-on-java-investment-with-azul/"&gt;Digital Operational Resilience Act (DORA)&lt;/a&gt;
 is a regulatory framework aimed at enhancing the digital operational resilience of financial institutions within the European Union.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Its primary goal is to ensure that financial entities can withstand, respond to, and recover from all types of ICT-related disruptions and threats, such as cyberattacks.&lt;/p&gt;
&lt;p&gt;DORA establishes a uniform set of requirements for managing ICT risks across the financial sector, promoting a harmonized approach to digital resilience.&lt;/p&gt;</description></item><item><title>The Impact of the Digital Operational Resilience Act (DORA) on Java Investment with Azul</title><link>https://foojayio.github.io/website/today/the-impact-of-the-digital-operational-resilience-act-dora-on-java-investment-with-azul/</link><pubDate>Sun, 14 Jul 2024 13:26:13 +0000</pubDate><guid>https://foojayio.github.io/website/today/the-impact-of-the-digital-operational-resilience-act-dora-on-java-investment-with-azul/</guid><description>&lt;p&gt;&lt;strong&gt;The &lt;a href="https://eur-lex.europa.eu/eli/reg/2022/2554/oj" target="_blank" rel="noopener noreferrer"&gt;Digital Operational Resilience Act (DORA)&lt;/a&gt;
, Regulation (EU) 2022/2554&lt;/strong&gt; ,&lt;strong&gt;is a key piece of European Union legislation focused on strengthening the resilience of the financial sector against digital operational risks, such as cyber attacks and other ICT-related disruptions.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;DORA is part of the broader &lt;a href="https://finance.ec.europa.eu/publications/digital-finance-package_en" target="_blank" rel="noopener noreferrer"&gt;Digital Finance Package&lt;/a&gt;
 introduced by the European Commission to enable innovation and competition in the financial sector while ensuring its security and resilience.&lt;/p&gt;
&lt;p&gt;It is focused on enhancing ICT risk management, strengthening cybersecurity, ensuring continuity and recovery, managing risks arising from dependencies on third-party ICT service providers, and incident reporting.&lt;/p&gt;</description></item><item><title>Master Your Journey in the School of OpenJDK Migration</title><link>https://foojayio.github.io/website/today/master-your-journey-in-the-school-of-openjdk-migration/</link><pubDate>Sun, 30 Jun 2024 09:46:03 +0000</pubDate><guid>https://foojayio.github.io/website/today/master-your-journey-in-the-school-of-openjdk-migration/</guid><description>&lt;p&gt;Azul has led so many OpenJDK migrations, we could write a book. Like, seriously, &lt;a href="https://www.azul.com/openjdk-migration-for-dummies/" target="_blank" rel="noopener noreferrer"&gt;we wrote the book&lt;/a&gt;
. If you prefer more a more visual, immersive experience, welcome to the School of OpenJDK Migration!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.azul.com/school-of-open-jdk-migration/" target="_blank" rel="noopener noreferrer"&gt;The School of OpenJDK Migration&lt;/a&gt;
 is your ultimate resource for mastering OpenJDK migration. Dive into our rich collection of webinars, where OpenJDK experts divulge their secrets, from foundational knowledge to advanced tactics, derived from industry knowledge and professional experience. You&amp;rsquo;ll leave the course with a blueprint to navigate the complexities of OpenJDK migration with confidence and ease.&lt;/p&gt;</description></item><item><title>Foojay Podcast #45: Welcome to Java 22</title><link>https://foojayio.github.io/website/today/foojay-podcast-45/</link><pubDate>Mon, 18 Mar 2024 10:31:53 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-45/</guid><description>&lt;p&gt;Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features.&lt;/p&gt;
&lt;p&gt;Does Java 22 also bring that much innovation, or is it just a bug-fix release?&lt;/p&gt;
&lt;p&gt;And what needs to be done to get such a release published on time? Let&amp;rsquo;s find out&amp;hellip;&lt;/p&gt;
&lt;h2 id="h2-0-video"&gt;Video&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/_NYuuoCQgO8?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-1-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>How Oracle Separates Java Pricing from Value</title><link>https://foojayio.github.io/website/today/how-oracle-separates-java-pricing-from-value/</link><pubDate>Fri, 15 Mar 2024 14:00:25 +0000</pubDate><guid>https://foojayio.github.io/website/today/how-oracle-separates-java-pricing-from-value/</guid><description>&lt;p&gt;&lt;strong&gt;On January 23, 2023, Oracle quietly replaced the online link to the Oracle Java SE Subscription Global Price List with a link to a new Oracle Java SE Universal Subscription Global Price List.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The old Oracle Java pricing was far from perfect. It was based on a processor-count metric for servers and a named-user-plus metric for desktops. With the processor-count metric, the license cost was determined by multiplying a processor&amp;rsquo;s total number of cores by a core processor licensing factor specified by Oracle. The named-user metric applied to all individuals &lt;em&gt;authorized&lt;/em&gt; to use a program regardless of whether they were &lt;em&gt;actively&lt;/em&gt; using it. These definitions left the door open for uncomfortable conversations with Oracle reps who were famous for setting up meetings &amp;ldquo;to talk about your Java usage.&amp;rdquo; Unpleasant in themselves, these meetings could lead to painful Java audits.&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>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>Visit Azul at Devoxx!</title><link>https://foojayio.github.io/website/today/visit-azul-at-devoxx/</link><pubDate>Tue, 26 Sep 2023 07:55:31 +0000</pubDate><guid>https://foojayio.github.io/website/today/visit-azul-at-devoxx/</guid><description>&lt;p&gt;&lt;strong&gt;&lt;a href="https://devoxx.be/?utm_medium=event&amp;amp;utm_campaign=20231003-SEV-Devoxx%20Belgium&amp;amp;utm_source=unbounce&amp;amp;utm_content&amp;amp;utm_term" target="_blank" rel="noopener noreferrer"&gt;Devoxx Belgium 2023&lt;/a&gt;
 is finally here! To mark the 20^th^ anniversary of the conference and the release of the new Azul book &lt;a href="https://www.azul.com/openjdk-migration-for-dummies/?utm_medium=event&amp;amp;utm_campaign=20231004-HEV-Dummies%20Launch%20Party%20at%20Devoxx%20BE&amp;amp;utm_source=unbounce&amp;amp;utm_content=&amp;amp;utm_term=" target="_blank" rel="noopener noreferrer"&gt;OpenJDK Migration for Dummies&lt;/a&gt;
, this post summarizes all the logistical details you need to know to get the most out of Azul at Devoxx!&lt;/strong&gt;
&lt;img src="https://foojayio.github.io/website/today/visit-azul-at-devoxx/2023-9-14b-devoxx-hero-1024x400.jpg" alt="" loading="lazy"&gt;
&lt;/p&gt;
&lt;p&gt;Devoxx Belgium will take place on 2 &amp;ndash; 6 October 2023 at &lt;a href="https://www.google.com/maps/dir/Kinepolis&amp;#43;Antwerpen,&amp;#43;Groenendaallaan&amp;#43;394,&amp;#43;2030&amp;#43;Antwerpen,&amp;#43;Belgium/Kinepolis,&amp;#43;Groenendaallaan&amp;#43;394,&amp;#43;2030&amp;#43;Antwerp/@51.2459867,4.3338087,12z/data=!4m13!4m12!1m5!1m1!1s0x47c3f63435c044a3:0xa9fd5c643a4787c5!2m2!1d4.4162091!2d51.2459082!1m5!1m1!1s0x47c3f63435c044a3:0xa9fd5c643a4787c5!2m2!1d4.4162091!2d51.2459082?entry=ttu" target="_blank" rel="noopener noreferrer"&gt;Kinepolis&lt;/a&gt;
 in Antwerp (Belgium). This edition is set to become the most visited of the series with over 3,200 attendees expected!&lt;/p&gt;</description></item><item><title>Foojay Podcast #28: Java 21 Has Arrived!</title><link>https://foojayio.github.io/website/today/foojay-podcast-28/</link><pubDate>Tue, 19 Sep 2023 05:27:07 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-28/</guid><description>&lt;p&gt;Since 2018, we get a new version of Java every 6 months.&lt;/p&gt;
&lt;p&gt;And &lt;a href="https://foojayio.github.io/website/today/java-21-is-available-today-and-its-quite-the-update/"&gt;version 21, released during today, is a long-term support version&lt;/a&gt;
 that can be used for many years.&lt;/p&gt;
&lt;p&gt;It also brings a lot of new features and improvements in both the language and the runtime.&lt;/p&gt;
&lt;p&gt;Actually, there are so many that we&amp;rsquo;ll probably not get all of them discussed in this podcast!&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see what our experts find the most important facts we need to know about Java 21.&lt;/p&gt;</description></item><item><title>Foojay Podcast #16: Welcome to Java 20!</title><link>https://foojayio.github.io/website/today/foojay-podcast-16/</link><pubDate>Mon, 20 Mar 2023 08:00:14 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-16/</guid><description>&lt;p&gt;Since 2018, we get a new version of Java every 6 months.&lt;/p&gt;
&lt;p&gt;Some are long-term supported versions that can be used for many years, while others are only maintained for a short time. Version 20 is such a short-term supported version.&lt;/p&gt;
&lt;p&gt;So, what new features does this version bring? And why should we use it? And what can we expect from the next version, 21, in September that will be a long-term supported version?&lt;/p&gt;</description></item><item><title>Use Pattern Matching to Simplify Java</title><link>https://foojayio.github.io/website/today/use-pattern-matching-to-simplify-java/</link><pubDate>Wed, 07 Sep 2022 10:55:58 +0000</pubDate><guid>https://foojayio.github.io/website/today/use-pattern-matching-to-simplify-java/</guid><description>&lt;p&gt;The concept of pattern matching has been around since the 1960s. It&amp;rsquo;s a well-known language technique used in many programming languages, from Haskell and AWK to Rust and Scala.{#h-the-concept-of-pattern-matching-has-been-around-since-the-1960s-it-s-a-well-known-language-technique-used-in-many-programming-languages-from-haskell-and-awk-to-rust-and-scala}&lt;/p&gt;
&lt;p&gt;Pattern matching is relatively new to Java. It was introduced in JDK 14 and has been progressing with new uses since then.&lt;/p&gt;
&lt;p&gt;This article explores how these new features can make your code more concise without losing readability.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re more of an interactive learner, watch my &lt;a href="https://www.azul.com/resources-hub/webinars-2/the-art-of-java-language-pattern-matching-on-demand-webinar" target="_blank" rel="noopener noreferrer"&gt;on-demand webinar on pattern matching in Java&lt;/a&gt;
 from June 2022. First, let&amp;rsquo;s back up and explain what pattern matching is.&lt;/p&gt;</description></item><item><title>JDK 7: An Extended Hello and Farewell</title><link>https://foojayio.github.io/website/today/jdk-7-an-extended-hello-and-farewell/</link><pubDate>Tue, 12 Jul 2022 11:03:39 +0000</pubDate><guid>https://foojayio.github.io/website/today/jdk-7-an-extended-hello-and-farewell/</guid><description>&lt;p&gt;On July 7^th^, 2011, eleven years ago, &lt;a href="https://openjdk.org/projects/jdk7/" target="_blank" rel="noopener noreferrer"&gt;JDK 7 was released&lt;/a&gt;
. In some ways, it was one of the more significant releases of Java. Indeed, there were some excellent technical features: &lt;a href="https://openjdk.org/projects/coin/" target="_blank" rel="noopener noreferrer"&gt;Project Coin&lt;/a&gt;
 gave us things like try-with-resources, strings in switch and multi-catch.&lt;/p&gt;
&lt;p&gt;However, it was two non-technical aspects of JDK 7 that made it important.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The first was that it was the first release since &lt;a href="https://www.oracle.com/corporate/pressrelease/oracle-buys-sun-042009.html" target="_blank" rel="noopener noreferrer"&gt;Oracle acquired Sun Microsystems&lt;/a&gt;
. The Java community had been unsure how Java would fare under Oracle, so this release showed a solid commitment to the platform (which has been maintained since then).&lt;/li&gt;
&lt;li&gt;The second was even more important: the fact that a &lt;a href="https://www.jcp.org/en/jsr/detail?id=336" target="_blank" rel="noopener noreferrer"&gt;Java SE specification&lt;/a&gt;
 was published through the &lt;a href="https://www.jcp.org/en/home/index" target="_blank" rel="noopener noreferrer"&gt;Java Community Process&lt;/a&gt;
. Due to &lt;a href="https://en.wikipedia.org/wiki/Apache_Harmony#Difficulties_to_obtain_a_TCK_license_from_Sun" target="_blank" rel="noopener noreferrer"&gt;issues around the availability of the TCK&lt;/a&gt;
 and the &lt;a href="https://harmony.apache.org/" target="_blank" rel="noopener noreferrer"&gt;Apache Harmony project&lt;/a&gt;
, new versions of OpenJDK had been stalled since December 2006. To put this into context, the time between JDK 6 and JDK 7 (one release) was one month longer at four years and seven months than between JDK 9 and JDK 18 (nine releases). Getting things moving again was vital to keeping Java relevant to developers as applications and architectures evolved.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Another significant date for JDK 7 is July 19^th^ this year. That is when the &lt;a href="https://www.oracle.com/java/technologies/java-se-support-roadmap.html" target="_blank" rel="noopener noreferrer"&gt;last update will be made available from Oracle&lt;/a&gt;
, even for commercially supported users. It is the end of what Oracle terms Extended Support.&lt;/p&gt;</description></item><item><title>Superfast Application Startup: Java on CRaC</title><link>https://foojayio.github.io/website/today/superfast-application-startup-java-on-crac/</link><pubDate>Mon, 30 May 2022 05:37:24 +0000</pubDate><guid>https://foojayio.github.io/website/today/superfast-application-startup-java-on-crac/</guid><description>&lt;p&gt;It&amp;rsquo;s now twenty-seven years since Java was first released, and it continues to be one of the most popular platforms for applications, especially on servers.&lt;/p&gt;
&lt;p&gt;One of the reasons for this is the &lt;a href="https://en.wikipedia.org/wiki/Java_virtual_machine" target="_blank" rel="noopener noreferrer"&gt;Java Virtual Machine (JVM)&lt;/a&gt;
. This provides a managed runtime environment that removes the need for developers to deal with things like memory management; the garbage collector takes care of this for you. Another significant advantage of the JVM is the use of bytecodes that can be converted to native instructions at runtime using a Just-In-Tim (JIT) compiler.&lt;/p&gt;</description></item><item><title>Foojay Podcast #4: Why Are There So Many JDKs?</title><link>https://foojayio.github.io/website/today/foojay-podcast-4/</link><pubDate>Tue, 19 Oct 2021 15:38:35 +0000</pubDate><guid>https://foojayio.github.io/website/today/foojay-podcast-4/</guid><description>&lt;p&gt;In this podcast, we explore the topic of why there are so many JDKs, how are they the same, and how they are different. We balance the Java perspective with a special guest from the Rust foundation to learn how a peer ecosystem works.&lt;/p&gt;
&lt;p&gt;Quick summary&amp;mdash;the role of Java as a central system runtime lead to multiple implementations and the companies that make different distributions offer support and sponsor different work. For example Azul and Microsoft worked on Apple M1, and Bellsoft and Microsoft worked on Alpine Musl. All JREs are compatible through the TCK and vendors work together on security patches for the entire ecosystem.&lt;/p&gt;</description></item><item><title>Much Ado About Nothing (Also Known As "Null") In Java</title><link>https://foojayio.github.io/website/today/much-ado-about-nothing-in-java/</link><pubDate>Tue, 23 Feb 2021 15:19:02 +0000</pubDate><guid>https://foojayio.github.io/website/today/much-ado-about-nothing-in-java/</guid><description>&lt;p&gt;Occasionally something in Java pops up that I thought I knew about, but it turns out I didn&amp;rsquo;t appreciate all the subtle details.&lt;/p&gt;
&lt;p&gt;This was recently the case for &lt;code&gt;null&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Before I started using Java, the main programming language I used was C. This was great for things like operating systems and device drivers because it uses &lt;em&gt;&lt;strong&gt;explicit&lt;/strong&gt;&lt;/em&gt; pointers. References to data are through a numerical address that can be manipulated if required. This was probably (for me at least) the hardest thing to master, especially when you try to figure out things like this:&lt;/p&gt;</description></item><item><title>JDK 15 Hidden Classes (JEP 371) for the JVM</title><link>https://foojayio.github.io/website/today/jdk-15-hidden-classes/</link><pubDate>Fri, 16 Oct 2020 14:03:40 +0000</pubDate><guid>https://foojayio.github.io/website/today/jdk-15-hidden-classes/</guid><description>&lt;p&gt;Unlike &lt;a href="https://foojayio.github.io/website/blog/jdk-15-sealed-classes/"&gt;sealed classes&lt;/a&gt;
, &lt;em&gt;hidden classes&lt;/em&gt; (&lt;a href="https://openjdk.java.net/jeps/371" target="_blank" rel="noopener noreferrer"&gt;JEP 371&lt;/a&gt;
) are a JVM rather than a language-level feature. One of the specific goals of this feature is not to make any changes to the Java language.&lt;/p&gt;
&lt;p&gt;Languages compiled into bytecodes, including Java, often use bytecodes that are generated at runtime, rather than fixing the implementation at compile time. An example of this is Lambda expressions, introduced in JDK 8. These represent the implementation of the single abstract method of a functional interface. Rather than restricting the compilation strategy to the simple use of an equivalent anonymous inner class, the compiler uses the invokedynamic bytecode, added to the JVM in JDK 7. At runtime, the JVM will generate a dynamic class that implements the functional interface and delivers the concrete implementation of the abstract method.&lt;/p&gt;</description></item><item><title>JDK 15 Sealed Classes: Fine-Grained Mechanism for Inheritance</title><link>https://foojayio.github.io/website/today/jdk-15-sealed-classes/</link><pubDate>Fri, 09 Oct 2020 10:43:54 +0000</pubDate><guid>https://foojayio.github.io/website/today/jdk-15-sealed-classes/</guid><description>&lt;p&gt;The most significant new preview feature in JDK 15 (with its second preview in JDK 16), and the only change to the language, is the introduction of sealed classes as a preview feature.&lt;/p&gt;
&lt;h4 id="preview-features"&gt;Preview Features&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://openjdk.java.net/jeps/12" target="_blank" rel="noopener noreferrer"&gt;Preview features&lt;/a&gt;
 first appeared in JDK 12 and allowed for new functionality to be included in the JDK without adding it to the Java SE specification (this applies to the Java language, Java Virtual Machine, and Java SE APIs).&lt;/p&gt;</description></item><item><title>Highlights of Changes to the Core Java Platform</title><link>https://foojayio.github.io/website/today/highlights-of-changes-to-the-core-java-platform/</link><pubDate>Thu, 02 Jul 2020 14:12:00 +0000</pubDate><guid>https://foojayio.github.io/website/today/highlights-of-changes-to-the-core-java-platform/</guid><description>&lt;p&gt;February 12th, 1996. This is a significant date for me personally since it was the day I started work at Sun Microsystems as a Solaris Systems Engineer. It was also two weeks and six days after the release of the Java Development Kit (JDK 1.0).&lt;/p&gt;
&lt;p&gt;Of course, the origins of Java go further back than this; James Gosling and others started work on a new programming language in 1991, and it was the May 23rd 1995 when Java was officially announced to the world.&lt;/p&gt;</description></item><item><title>JDK14 - New Features and Enhancements</title><link>https://foojayio.github.io/website/today/jdk14-new-features-and-enhancements/</link><pubDate>Tue, 19 May 2020 23:29:37 +0000</pubDate><guid>https://foojayio.github.io/website/today/jdk14-new-features-and-enhancements/</guid><description>&lt;p&gt;Well, another six months have passed, and we have another release of Java, this one pretty packed with exciting new features. It is, therefore, time for another blog post trying to list everything new in &lt;a href="https://openjdk.java.net/projects/jdk/14/" target="_blank" rel="noopener noreferrer"&gt;JDK 14&lt;/a&gt;
.&lt;/p&gt;
&lt;p&gt;In total, there are a very impressive 16 JDK Enhancement Proposals (JEPs) and 69 new API elements.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s start with the more significant items that introduce changes to the Java language syntax.&lt;/p&gt;
&lt;h2 id="h2-0-records"&gt;Records&lt;/h2&gt;
&lt;p&gt;Java is an object-oriented language; you create classes to hold data and use encapsulation to control how that data is accessed and modified. The use of objects makes manipulating complex data types simple and straightforward. It&amp;rsquo;s one of the reasons Java is so popular as a platform.&lt;/p&gt;</description></item></channel></rss>