Write apps with Azkarra

Azkarra Streams: Java microframework boosts Kafka Streams

A new lightweight Java framework for Kafka Streams has been announced by StreamThoughts. It aims to improve the Kafka Streams ecosystem and includes a web-based, interactive user interface that helps with administrative tasks and offers a simple DAG representation. Take your first steps with Azkarra Streams and its interactive queries and start writing your app.

Weighing development methods

Test-driven Java development vs. traditional testing: Comparative study

What are the pros and cons of traditional testing and test-driven development? While traditional testing requires a lot of time and money, using TDD results in faster and cleaner code. Although, TDD requires learning new developer skills. This article examines the two methods and how Java software developers should utilize them.

To generate code or not: That is the question.

In Focus: Code Generation

There are several occasions when you will need to generate code during development. Find out when to generate your own code, what code redundancy is, and when code generation can happen in different cases. In this article, you will also get an overview about Java::Geci, a library for generating Java code in the middle of the compilation, deployment, and execution life cycles.

Watch Alex Soto's JAX London session

Java Particle Acceleration using Quarkus

In this video, you will meet Quarkus, a Kubernetes native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards. Alex Soto, software engineer at Red Hat, is passionate about the Java world and will guide you through Java particle acceleration using Quarkus.

Supersonic subatomic Java, now final!

Java framework Quarkus 1.0.0.Final touches down

After two release candidates and 30 releases over 36 weeks – that’s one every nine days – the final version of Quarkus 1.0 is here. Don’t feel sad though, the pace won’t slow down and they’re already talking about their plans for Quarkus 1.1! Let’s take a closer look.

Analyzing memory wastage and duplicate strings

Memory wasted by Spring Boot PetClinic application

How much memory are you wasting with duplicate strings? In this article, Ram Lakshmanan goes through a Spring Boot PetClinic application and notes how much memory it wastes. If you can reduce the number of objects that are created to service new incoming requests, your response time will get a lot better.

It's all gone 19.3 – for the next year at least

GraalVM 19.3 brings support for JDK 11

The long-awaited major release, GraalVM 19.3, is finally here! It is the first long-term support release (LTS) and is much anticipated by the Java community, and for good reason – support for JDK 11. There are other improvements such as updated support for JavaScript, Python, Ruby, and LLVM. Let’s take a closer look.

Includes a preview of Kotlin 1.4 features

Kotlin 1.3.60 updates Java-to-Kotlin converter

Java and Kotlin go hand in hand, especially when it comes to Android development. Kotlin version 1.3.60 just released and it contains a number of new updates and a few enhancements, including tooling improvements for debugging and Gradle scripts, a new worksheet mode for IntelliJ IDEA, improved error messages, and a preview of some Kotlin 1.4 features.

Scaling the modern app world

Modernizing Java to keep pace in a cloud-native world

Java is no spring chicken and some are even referring to it as a “vintage language”. Despite its popularity, there are some complaints about it. In our new cloud-native world, why does Java need to evolve? In order to evolve to keep up with modern, cloud-native apps, Java needs to keep all of what makes it so dependable, while also being able to function in new app environments.

360-degree view of your problems

Overview of ycrash – finding the source of your problem

Take a tour of ycrash in this article by Ram Lakshmanan. ycrash helps capture critical artifacts, including garbage collection logs, thread dumps, core dumps, heap dumps, disk usage, and more when the problem happens. It applies machine learning algorithms and generates a report which gives you a complete view of the problem, down to the lines of code that caused it.