The Payara Monthly Catch for September 2020

Photo of Jadon Ortlepp by Jadon Ortlepp


The monthly catch came out slightly late this month, but it is chock a block full of content. With a slight emphasis on best practises, tips and plenty of video and podcast content!

In this blog you will find a curated list of some of the most interesting news, articles and videos from the last month. Can't wait until the end of the month? Visitour Twitter page where we post all these articles as we find them! 

Monthly Catch Social Media


How To Write Unmaintainable Code - This tongue in cheek article by Roedy Green, humorously explores how you can improve the maintainability of your code. Either that or he just wants to see the world burn.

Payara Enterprise offers production-oriented features and developer tools - including IDE extensions, build tool plugins, test containers and connectors. Learn more in this new blog from Gaurav Gupta.

Modern Best Practices for Testing in Java - This post by Philipp Hauer contains many best practices for writing unit tests and integration tests in Java. It involves modern technologies like JUnit5, AssertJ, Testcontainers, and Kotlin.

How to Tell Time in Java's Garbage Collection - Ana Marsh, an intern at Microsoft explored the impact that software and hardware clocks have on the readings of Garbage Collection events reported by both JFR and the GC logs.

Using WSL 2 to develop Java application on Windows - Saeed Zarinfam compares WSL 2 and Windows 10 performance when using Maven and Intellij Idea.

Learn How to Use MicroProfile APIs - You can access the free resources available on this page to learn how to make the most of the Eclipse MicroProfile API's.

7 JVM arguments of Highly Effective Applications - In this article, the author highlights and summarizes some of the most important JVM arguments and their positive impacts. 

EKS vs GKE vs AKS - Evaluating Kubernetes in the Cloud - Six years after the release of Kubernetes, Michael Foster provides an overview of managed Kubernetes offerings. 

A beginner's guide to CDC (Change Data Capture) - Vlad Mihalcea explains what CDC is, and why you should use it to extract database row-level changes. Using various methods for capturing events and propagating them to other data processing systems. 

Here are 10+ Java Logging Best Practices - Having visibility into your Java application is crucial for understanding how it works in the present, past and increasing your understanding of how it might work in the future. By Rafał Kuć.

Modern CloudNative Jakarta EE Frameworks: Tips, Challenges, and Trends.- This article by Otavio Santana discusses the history and challenges for new generations and the trends of the frameworks that, as Java developers, we will use in our day to day.

The JavaTrends Report for September 2020 - This report acknowledges growing momentum for Jakarta EE. InfoQ classed developers moving to the framework as 'innovators' in Q3 2019, but now places them part of the larger 'early adopters' group. 

Java annotated monthly by Trisha Gee -  Trisha’s September round-up includes Java 15 and Java 16 updates, alongside useful resources for Jakarta EE users. 

Implementing a Web Chat With AI in Java - This article by Alejandro Duarte  from Vaadin shows step by step how to implement a web chatbot using Java.

A Picture of Java in 2020 - The wonderful folks at JetBrains decided to do a deep dive across multiple sources to discover what the common state of Java is. Includes expert commentary from Trisha Gee. 

What Is Web Application Architecture? - This article is a good, brief introduction to web application architecture and other related knowledge, that someone new to this area might find useful.

About the tooling available to create native GraalVM images - In this very interesting article Michael Simons discusses SubstrateVM and explores the tooling available to create native GraalVM images and some of the pitfalls to be aware of.

Comic Of The Month


Videos & Podcasts

The videos from the recent virtual KubeCon & Cloud Native Con Europe 2020 are now available to watch for free on YouTube!

Design of the Java Virtual Machine Instruction Set - A very interesting video by Vivek Haldar on the design of the Java Virtual Machine Instruction Set / Java intermediate bytecode by James Gosling.

Jakarta EE + MicroProfile Archetype: Setup, Build, Deploy - Great video from Adam Bien demoing the new Maven archetype, setting up an application and deploying to Payara and OpenLiberty.

Interview with Adam Bien — The Effective Developer podcast - An interesting and fun interview between Sebastian Daschner and Adam Bien covering many aspects of productivity! From preferred hardware to personal work philosophies.

Lenny Primak, our Senior Test Engineer, on Adam Bien’s podcast - He discussed scalability, Payara and productivity with Java EE. 

20 Sorts, Visualized - Scatter Plot - A very trippy video showing the visualization of 20 Sorting Algorithms with Java.

The Inside Java Podcast - This new podcast presented by David Delabassee & Chad Arimura focuses on many aspects of the Java Platform from innovation projects like Loom & Valhalla, to security and performance, to language features & new Java releases.

Raspberry Pi4 Home Automation Server (incl. Docker, OpenHAB, HASSIO, NextCloud) - In this very cool video, Andreas Spiess shows how to set up your own Raspberry Pi Home Automation Server. Definitely a fun personal project to play with.

Jakarta EE - Present & Future - Reza Rahman’s talk overviews the Java EE journey to Jakarta EE; what this means, a brief tour of Jakarta EE 8, its current state and looking to what the future might bring including some key challenges.

Community News

Introducing Payara Cloud (Coming Soon) - Unlike building an application server deployment on a Cloud Infrastructure as a Service or on raw Kubernetes, Payara Cloud takes care of provisioning infrastructure, installation, configuration, deployment & scaling of a user ’s application.

The OpenJDK transition to Git, GitHub and Skara is now done! - The Git repositories are now open for contributions. Congratulations to all involved for this huge transition.

ANNOUNCING: Payara IntelliJ IDEA tools! - Payara IntelliJ Tools provide integration of Payara Platform into IntelliJ IDEA Ultimate. The Plugin allows configuring & using the Payara Platform, for deploying & managing applications from IntelliJ IDEA.

Oracle announces Java 15 -  Oracle JDK 15 will receive at least 2 quarterly updates, before being followed by Oracle JDK 16 in March 2021. Java 15 offers users 14 main enhancements/changes, including 1 incubator module, 3 preview features, 2 deprecated features, & 2 removals.

Jakarta Context and Dependency Injection 3.0 is out now - Jakarta Contexts Dependency Injection specifies a means for obtaining objects in such a way as to maximize reusability, testability and maintainability compared to traditional approaches such as constructors, factories, and service locators (e.g., JNDI).