Why I Prefer Trunk-Based Development

These days, distributed version control systems like Git have "won the war" of version control. One of the arguments I used to hear when DVCSs were gaining traction was around how easy it is to branch and merge with a VCS like Git. However, I'm a big fan of Trunk-Based Development (TBD), and I want to tell you why.

With trunk-based development, all developers work on a single branch (e.g., 'main'). You might have read or heard Martin Fowler or Dave Farley talking about it. It was when I was working with Dave (around about the time that Git was rapidly becoming the "go-to" version control system) that I really saw the benefits of trunk-based development for the team, particularly in an environment that was pioneering continuous delivery (Dave was writing the book with Jez Humble while I worked with him).

Upgrading a Maven, Spring Boot, and JavaFX Application

I've been migrating all my JavaFX applications to Java 15/JavaFX 15.0.1 to see if there are any pain points or gotchas to be aware of. I particularly wanted to understand how Maven and Gradle handle JavaFX, and how to successfully build and run the applications in IntelliJ IDEA.

In this blog post, I explore the steps taken to upgrade a Spring Boot/Maven/JavaFX application.

Reading Code Is a Skill

I'm inspired to write this post because Someone Is Wrong On The Internet. Of course a more accurate statement would be "I disagree with some aspects of what someone on the internet said, even though they have an entirely valid point of view". But that's less catchy.

I saw a Tweet I agreed vehemently with, so I retweeted it:

Java Annotated Monthly – September 2020

September’s here, and that means back to work, back to school. Or not. It feels like the world is applying a lot of wishful thinking and behaving as if everything is going back to normal. With so much uncertainty right now, it’s a tempting approach for sure.

Anyway this is supposed to be about Java. This month we have another huge edition for you, and it includes the inevitable look at Java 15, a bunch of news about Java 16, articles and videos on testing, Java / Jakarta EE, and Java libraries.

Java Annotated Monthly – March 2020

It’s only two weeks since the last Java Annotated Monthly and we have another huge issue! I’d like to say March’s edition is dedicated to International Women’s Day, and it can be if you like. To be honest, the inclusion of women contributors in this month’s newsletter is, in fact, nothing special or new. It’s the result of several years of hard work identifying new sources of videos and articles, intentionally expanding the people I follow on Twitter, and placing effort into amplifying voices that deserve to be heard. There is still plenty of room for improvement though so I will not relax and say “it’s OK, we’re diverse now”. Because we’re not.

Java News

Tutorial: Reactive Spring Boot, Part 7: Subscribing Multiple Consumers

Learn more about subscribing to multiple consumers in this seventh installment on building a Reactive Spring Boot application.

This is the seventh part of our tutorial showing how to build a Reactive application using Spring Boot, Kotlin, Java, and JavaFX. The original inspiration was a 70-minute live demo.

This tutorial is a series of steps during which we will build a full Spring Boot application featuring a Kotlin back-end, a Java client, and a JavaFX user interface.

Tutorial: Reactive Spring Boot, Part 4: A JavaFX Line Chart

Learn how to create a JavaFX application that shows a line chart.

This is the fourth part of our tutorial showing how to build a Reactive application using Spring Boot, Kotlin, Java, and JavaFX. The original inspiration was a 70-minute live demo. If you would like to see previous installments, please check out the Further Reading section below. 

In this step, we see how to create a JavaFX application that shows a line chart. This application uses Spring for important features like Inversion of Control

Tutorial: Reactive Spring Boot, Part 3: A JavaFX Spring Boot Application

Learn more about building reactive Spring Boot applications with JavaFX.

This is the third part of our tutorial showing how to build a Reactive application using Spring Boot, Kotlin, Java, and JavaFX. The original inspiration was a 70-minute live demo.

This third demonstration shows how to create a JavaFX application that is launched and managed via Spring Boot so that we can use Spring features like Inversion of Control in our JavaFX application.

Tutorial: Reactive Spring Boot Part 1, Building a Kotlin REST Service

Get some REST!

Last month, I presented a live demo at SpringOne Platform, showing how to build a Spring Boot application that displays real-time prices, using Spring (obviously), Kotlin, and JavaFX. The live demo was recorded and is available as a 70-minute video, but I thought it might be easier to digest as a series of shorter videos with an accompanying blog post, explaining each of the steps more slowly and in more detail.

This is the first step: creating a reactive Spring Boot service with Kotlin.

Java Annotated Monthly — October 2019

Wow, what a bumper month! Summer is well and truly over and we are Being Productive! This month's edition is absolutely huge and I didn't even do any particular research for the newsletter; there was just a lot of interesting stuff kicking around. Of course, we have Java 13, and I've added two new sections: career advice and testing. Not testing your career, although that would be really useful too. There are also a lot of Spring Boot tutorials because I've been leaning on Google a lot this month for my live coding demo for Spring One Platform in Austin next week. Set aside some serious time for this edition!

Java News

Java 13 came out in September. It’s another short-term release, but it does mean that if you were on Java 12 your JDK is no longer supported and you should upgrade to 13. If you’re on Java 11 or 8, watch my video (last link below) to understand some of the questions you should be asking in order to decide whether to upgrade,

Webinar Recording: What’s New in JDK 12

This week, we hosted a webinar covering the most important features for developers from Java 12. The recording is now available for those of you who missed it or want to go back over some of the details. In the following video, you’ll find a list of the resources (links) from the video, and answers to the most relevant questions.

Java Annotated Monthly — May 2019

This month, we have a guest section on security since there were so many relevant security articles. We have the results of two developer surveys and a huge culture and community section that explores some of the factors that might contribute to the results of those developer surveys. Of course, May’s Annotated Monthly also includes your regular fix of Java news, tutorials, and tips.

Java News

Big news, everyone! Java EE is dead. Again. What year is it? Why are the same headlines popping up, again and again, every year?