Foojay.io, the Friends Of OpenJDK! - S04 / E66

Let's Talk About Java Code! Diving into Foojay blog posts... (#66)

In this Foojay podcast, we dive into a few articles that were published recently and focus on code. Igor Kulakov of JetBrains gives us his insights into the tool he created to find duplicate content in documentation. Rijo Sam explains how you can generate real random values and how he created a train departure display. Maxillian Arruda explains in a very detailed post the different ways to construct a complex Java object. And we start with Wim De Troye about the code changes he had to do in a project that got upgraded from Spring Boot 2 to 3.

Guests
   Wim De Troyer
      https://www.linkedin.com/in/wim-de-troyer-40647b130/  
   Maximillian Arruda
      https://www.linkedin.com/in/maxarruda/  
   Rijo Sam
      https://www.linkedin.com/in/rijosam19/  
   Igor Kulakov
      https://www.linkedin.com/in/inspector-patronum/ 
      https://x.com/flounder4130  

Links

   https://foojay.io/today/the-proper-way-to-define-configuration-properties-in-spring/  
   https://foojay.io/today/make-the-life-of-your-developer-clients-easier-with-smart-builders/ 
   https://foojay.io/today/pseudorandom-number-generator/  
   https://foojay.io/today/crafting-your-own-railway-display-with-java/  
   https://foojay.io/today/duplicate-finder-for-text-requirements/ 

Content

00:00 Introduction of the topics and guests

00:55 Wim De Troyer
03:27 Pro or contra Lombok?
06:09 BeanValidation as part of the solution
07:40 Generating a config JSON file

08:50 Maxillian Arruda
09:19 What is a complex object?
12:09 Using records to simplify object creation
14:48 Telescoping constructors
16:08 Static factory method
19:09 Builder pattern
21:00 The risks of rewriting a project
23:00 Thread safety in object creation

27:53 Rijo Sam
29:07 java.util.Random is not fully random...
30:20 About SecureRandom, seeds, and blocking algorithms
34:16 Vaadin railway display
37:43 Getting railway data from an open API
38:44 It's a PET project together with Rijo's partner Ancy
40:22 Runs on a Raspberry Pi
41:18 The next project...

41:34 Igor Kulakov
43:02 DRY principle in documentation
43:37 How the tool works an integration in JetBrains products
44:54 Test-first approach in the project  
47:10 Not using AI (yet) to avoid extra cost, local systems could be integrated
48:22 Input data the tool can handle
49:14 Highlights of the blog (and following) post(s)

54:35 Outro

About Foojay.io, the Friends Of OpenJDK!

The podcast of foojay.io, a central resource for the Java community’s daily ​information needs, a place for friends of OpenJDK, ​and a community platform for the Java ecosystem​ — bringing together and helping Java professionals everywhere.

Listen at ...

Follow us ...