64 avsnitt • Längd: 50 min • Månadsvis
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.
The podcast Foojay.io, the Friends Of OpenJDK! is created by Foojay.io. The podcast and the artwork on this page are embedded on this page using the public podcast feed (RSS).
With the first Foojay podcast of 2025, we want to help you to boost your career! By now, you've likely had your year-end performance review with your manager and set some goals to advance in the coming year. Are you ready to take your career growth into your own hands? I've invited three fantastic guests who are eager to share their experiences and help you elevate your professional journey.
Guests
Rafael Del Nero
https://www.linkedin.com/in/rafadelnero/
https://www.youtube.com/c/javachallengers
https://javachallengers.com
Bruno Souza
https://www.linkedin.com/in/brjavaman/
https://java.mn
Career project/blog: https://code4.life/blog
Book: https://careermasterplan.dev
Join the newsletter, with daily career tips: https://code4.life
Elder Moraes
https://www.linkedin.com/in/eldermoraes/
https://www.youtube.com/ElderMoraes
https://instagram.com/eldermoraes
SouJava (JUG Brazil)
https://www.meetup.com/SouJava/
http://soujava.org.br/
Content
00:00 Introduction of topic and guests
01:44 Why are the guests mentors for others?
06:25 There are many important skills you need to develop
07:38 How are they handling the mentoring process?
15:58 A mentor needs a mentor himself
16:43 Different growing paths, technical versus managing
21:59 How participating in JUGs can evolve your career
30:50 The impact of being a Java Champion
33:33 What is the value of mentoring?
41:18 How to get a salary increase?
50:18 Just ask for any change you want!
59:44 Book Bruno
01:01:16 Outro
Let's wrap up this year with more interviews from the JFall conference. In this episode you'll learn more about Foojay, JVM internals and writing your own programming language, Project Loom and structured concurrency, learning at conferences, code reviews, creating desktop applications with Java, infrastructure as code, JUG Noord, and much more!
Guests
Geertjan Wielenga
https://www.linkedin.com/in/geertjanwielenga/
Nataliia Dziubenko
https://www.linkedin.com/in/nataliia-dziubenko-341919b8/
Hanno Embregts
https://www.linkedin.com/in/hannotify/
Hinse ter Schuur
https://www.linkedin.com/in/hinseterschuur/
Anthony Goubard
https://www.linkedin.com/in/anthonygoubard/
Steffan Norberhuis
https://www.linkedin.com/in/steffannorberhuis/
Paulien van Alst
https://www.linkedin.com/in/paulienvanalst/
Lutske de Leeuw
https://www.linkedin.com/in/lutske/
Johan Hutting
Content
00:00 Introduction of topics and guests
01:09 Geertjan Wielenga: OpenJDK evolutions
01:47 The goal of Foojay, the website for the Friends Of OpenJDK
https://foojay.io/
03:49 Nataliia Dziubenko: What you can learn at conferences
04:48 Writing your own programming language on top of JVM
07:30 What it learned her about the Java compiler
08:38 How it influenced her career as a Java developer
11:20 Hanno Embregts: Project Loom, structured concurrency and scoped values
14:04 Playing music during conference talks
15:09 Important OpenJDK evolutions
17:07 Hinse ter Schuur: Learning at conferences
17:58 Best practices for code reviews
20:03 Anthony Goubard: Creating desktop apps with Java
https://www.japplis.com
22:45 Steffan Norberhuis: Infrastructure code for AWS
https://www.rocketleap.dev/
23:50 Java as a Cloud language
24:54 How developers look at infrastructure
26:03 Is getting locked into a single cloud vendor a risk?
28:03 Paulien van Alst, Lutske de Leeuw en Johan Hutting: Introducing JUG Noord
https://www.meetup.com/jug-noord
29:20 Introducing VoxxedDays Amsterdam
https://amsterdam.voxxeddays.com/
29:40 NLJUG versus local JUGs
30:06 Starting as a new speaker at JUGs
30:24 How to contribute to opensource
31:24 How to speak at JUG Noord
31:53 Learned at JFall
32:38 Outro
Last month, I published a Foojay blog post about the risks in systems that are stuck on old or outdated Java versions and got a lot of feedback from developers. Most of them want to move on but get stuck on management decisions, outdated production environments, or one of the many other reasons that keep systems stuck on old Java versions and dependencies...
Do you want to bring your system from Java 8 to 23? Did you know that Java 17 already got 13 security releases? And that you can use tools like OpenRewrite to help you update your code?
Related Foojay articles
Why Java 8 is a Ticking Time Bomb Hiding Within Your Organization
https://foojay.io/today/why-java-8-is-a-ticking-time-bomb-hiding-within-your-organization/
How Organizations Became Stuck on Outdated Java Versions
https://foojay.io/today/how-organizations-became-stuck-on-outdated-java-versions/
Guests
Gerrit Grunwald
https://www.linkedin.com/in/gerritgrunwald/
Jonathan Schneider
https://www.linkedin.com/in/jonkschneider/
Martijn Dashorst
https://www.linkedin.com/in/dashorst/
Carl Wanting
https://www.linkedin.com/in/carl-wanting-638943/
Charl Fasching
https://www.linkedin.com/in/charl-fasching-77843288/
Johan Janssen
https://www.linkedin.com/in/johanjanssen2001/
Content
00:00 Introduction of the topic and guests
01:35 Gerrit Grunwald about CVE fixes in Java updates
04:58 LTS (Long Term Support) versus STS (Short Term Support)
9:45 Jonathan Schneider about the goal of OpenRewrite
12:15 Upgrade all at once, or step by step?
14:03 Who creates the recipes?
15:08 What Moderne is offering on top of OpenRewrite
17:29 How to use OpenRewrite in your IDE
18:32 Companies maintaining recipies for their products
20:05 Jonathan's view on the importance of upgrades
26:56 Other use cases for OpenRewrite
29:03 Martijn Dashorst: Updating legacy projects
33:12 Carl Wanting and Charl Fasching: Migrating projects
39:43 Johan Janssen: Java evolutions and upgrading
42:51 Outro
AI, LLMs, ChatGPT—these are just a few of the buzzwords of the massive revolution unfolding right now. These tools are reshaping how we work, but they come with a catch: while they help us work faster and smarter, we need to be careful about placing too much trust in them.
I’ve spoken with several guests at the JFall conference in the Netherlands actively working with these tools to learn more about them. And I had a chat with Grace Jansen about a recent Foojay blog post
Guests
Grace Jansen
https://www.linkedin.com/in/grace-jansen/
Sean Li
https://www.linkedin.com/in/sean-li-568a8414/
John Sterken
https://www.linkedin.com/in/jsterken/
David Vlijmincx
https://www.linkedin.com/in/david-vlijmincx/
Urs Peter
https://www.linkedin.com/in/urs-peter-70a2882/
Joost Kaan
https://www.linkedin.com/in/joost-kaan/
Links
https://foojay.io/today/run-ai-enabled-jakarta-ee-and-microprofile-applications-with-langchain4j-and-open-liberty/
https://marketplace.visualstudio.com/items?itemName=IBM.wca-eja
https://docs.langchain4j.dev/integrations/language-models/
https://foojay.io/today/building-project-panamas-jextract-tool-by-yourself/
https://foojay.io/today/project-panama-for-newbies-part-1/
https://foojay.io/today/writing-c-code-in-java/
Content
00:00 Introduction of topics and guests
01:07 Introduction of Grace and the Foojay blog post
02:31 What is Langchain4J?
03:23 What is JakartaEE?
04:25 What is MicroProfile?
06:33 Compare these tools with Spring
08:30 About the demo application of the blog post
11:32 What is an LLM, and what can it do?
13:41 Short-term evolutions in AI
16:49 Long-term predictions...
18:36 IBM Watson code assistant for VSC
19:45 Sean Li: Java at Microsoft
21:56 AI products provided by Microsoft
25:09 Code upgrades with a VSC extension
26:44 John Sterken: AI as a coding assistant
30:50 David Vlijmincx: Project Panama in relation to AI
34:53 Urs Peter: Generative AI, LLMs, and LangChain4J
40:20 Joost Kaan: Organizing an AI conference
Foojay Podcast published in November 2024
All info, show notes, and links: https://foojay.io/today/category/podcast/
At Devoxx and JFall, we talked with Georgios Diamantopoulos, Lutske de Leeuw, Tom Cools, Jessica Siewert, and Rijo Sam about staying physically and mentally healthy as software developers. There are many topics to handle, like the impact of AI on how valuable we feel, how COVID-19 impacted careers, how we work in and with remote teams, how to get to know new colleagues and much more. Yes, there is even a sidestep where we compared the Java and .NET communities.
Guests
Georgios Diamantopoulos
https://www.linkedin.com/in/georgiosd/
https://x.com/georgiosd
Tom Cools
https://www.linkedin.com/in/tom-cools-17547548/
https://bsky.app/profile/tcoolsit.bsky.social
Lutske de Leeuw
https://www.linkedin.com/in/lutske/
Jessica Siewert
https://www.linkedin.com/in/jesiewert/
Rijo Sam
https://www.linkedin.com/in/rijosam19/
https://github.com/Rijosam
Content
00:00 Introduction of topic and guests
00:48 Georgios Diamantopoulos about the impact of your work on your body
05:22 Comparing Java to .NET community
06:54 Lutske de Leeuw about the impact of AI on our job
09:13 Impact of Covid and working from home
10:48 Talk with your colleagues about mental issues
12:06 Tom Cools about switching jobs
13:00 About the danger of a burnout, dealing with stress, and trying too much at the same time
17:08 How to deal with Impostor Syndrom
20:31 Jessica Siewert about dealing with conflicts within a team
22:50 How to get in contact with new people
24:58 Rijo Sam about working in and with remote teams
26:34 Schedule "coffee moments"!
30:54 Impact of time zone differences
33:02 Misunderstanding each other because of cultural differences
34:44 The danger of text chat versus having a voice chat
37:04 Avoid team burnout!
37:43 Conclusion
Belgium might be tiny, but we have a strong Java Community! As I was doing interviews at Devoxx in October, I met several of these people, and we talked about their projects, how you can get involved in OpenJDK, and maybe even start a company out of it. This podcast will teach you more about Devoxx, VoxxedDays, Devoxx4Kids, JobRunr, Timefold, OpenJDK Mobile, OpenJFX, Thymelead, htmx, and more!
Guests
Stephan Janssen
https://www.linkedin.com/in/stephanjanssen/
https://x.com/Stephan007
https://www.devoxx.com
https://events.voxxeddays.com
https://www.devoxx4kids.org/
Ronald Dehuysser
https://www.linkedin.com/in/ronalddehuysser/
https://x.com/rdehuyss
https://www.jobrunr.io/en/
Geoffrey De Smet
https://www.linkedin.com/in/ge0ffrey/
https://x.com/GeoffreyDeSmet
https://timefold.ai/
Johan Vos
https://www.linkedin.com/in/johanvos/
https://mastodon.social/@johanvos
https://x.com/johanvos
https://gluonhq.com/
https://github.com/openjdk/mobile
https://github.com/openjdk/jfx/
Wim Deblauwe
https://www.linkedin.com/in/wimdeblauwe/
https://x.com/wimdeblauwe
https://www.wimdeblauwe.com/books/modern-frontends-with-htmx/
https://www.wimdeblauwe.com/books/taming-thymeleaf/
https://www.wimdeblauwe.com/projects/
Content
00:00 Introduction
00:47 Stephan Janssen about how Devoxx started
02:22 Difference between Devoxx and VoxxedDays
03:47 About Devoxx4Kids
04:22 Sponsors are needed to keep the entrance fee low
06:26 About the speakers and CFPs
07:11 Important Belgian Java people and tools
09:08 Ronald Dehuysser about JobRunr
10:00 How to turn an open-source project into a company
11:09 Reviewing and validating the evolutions in Java
12:35 Importance of conferences
13:23 How government support can help a startup
14:02 Challenge of starting a company...
14:40 Geoffrey De Smet about Timefold and the challenges in scheduling
16:47 How AI helps to find the best schedule
18:34 How it started as an open-source project (Optoplanner)
19:06 The challenges of growing Timefold as a company
21:26 Visiting conferences as a "yearly training"
22:36 Johan Vos about OpenJFX and how he got involved
24:49 Everyone can contribute to OpenJDK and OpenJFX
25:50 The goal of the OpenJDK Mobile project
29:33 About the Belgian Java community
30:29 Wim Deblauwe about Spring libraries and books
30:50 About Wim's Thymeleaf and htmx books
32:08 How to get involved in the Java community
33:06 Goal of writing a book
33:40 Wim's involvement in the community
35:08 Outro
What do people who have Developer Relations as their job description do? And how do you become a conference speaker? You'll learn in this Foojay podcast!
At Devoxx in Belgium, I got to talk to Josh Long, Baruch, Pratik Patel, and Roni Dover, who are on the stage because it's part of their job. They share many tips about being a DevRel and the plenty tasks involved in such a job. I also talked with Clo Willaerts who was my inspiration many years ago to become a speaker myself, when I saw her presentation at a marketing conference.
Clo Willaerts
00:57 Clo about the difference between marketing and technical conferences
02:49 Impact of ecological cost on our work
04:56 Fast changes in trending topics
07:33 How to get paid as a (keynote) speaker
12:53 Josh about being Developer Relation
14:53 How to reach the energy level of Josh
15:42 Do you have to be an expert about a topic to talk about it?
18:34 How to create a story for a new talk
19:02 Only use slides when really needed
22:29 How hard is live coding?
23:48 Baruch about the DevRel role
24:52 How to move from Dev to DevRel
25:44 The focus of Baruch
27:57 Pratik about the role of a dev team at a conference
29:50 How DevRel influences product development in their company
31:36 How Pratik became a DevRel
32:40 Good and bad of being a DevRel
34:38 Roni about the role of a DevRel
35:54 Importance of using your product (coding) as a DevRel
37:35 Back side of the job
38:43 Tip 1: Ask to be a speaker
39:31 Tip 2: Stand out!
41:01 Tip 3: The show must go on!
42:31 More tips...
48:08 One final tip from Josh
48:16 Outro
Book by Geertjan Wielenga: "Developer, Advocate!"
Three years after Log4Shell caused a significant security issue, we still struggle with insecure dependencies and injection problems. In this podcast, we'll discuss how developers can secure their code. I talked with three authors who posted a security and code quality post on Foojay.io.
Guests
Jonathan Vila
https://www.linkedin.com/in/jonathanvila/
https://about.me/jonathan.vila
https://twitter.com/jonathan_vila
Brian Vermeer
https://www.linkedin.com/in/brianvermeer/
https://brianvermeer.nl/
https://twitter.com/BrianVerm
Erik Costlow
https://www.linkedin.com/in/costlow/
https://twitter.com/costlow
Content
00:00 Introduction of topic and guests
01:35 Brian: Why is Log4Shell still around?
https://foojay.io/today/the-persistent-threat-why-major-vulnerabilities-like-log4shell-and-spring4shell-remain-significant/
03:24 Outdated dependencies are still used a lot
04:31 Who is responsible for dependency updates?
07:55 Snyk tools to help discover issues
10:15 Comparing to Dependabot
11:21 How to keep dependencies up-to-date
14:32 Responsibility to use dependencies with care
17:17 Looking forward to the JFall conference
18:48 About Foojay
19:49 Jonathan: Is SQL injection still a problem?
https://foojay.io/today/top-security-flaws-hiding-in-your-code-right-now-and-how-to-fix-them/
24:50 Deserialization injection
27:30 Logging injection
31:22 Even experienced developers make mistakes
33:17 About Sonar tools
35:53 Other articles by Jonathan
https://foojay.io/today/author/jonathan-vila/
https://foojay.io/today/ensuring-the-right-usage-of-java-21-new-features/
38:20 Other security tools
https://www.youtube.com/watch?v=-wVCYj8oQUY
39:47 Erik: Trash Pandas are attracted by unused code
https://foojay.io/today/trash-pandas-love-enterprise-java-garbage-code/
43:01 How bad are insecure but unused libraries?
45:16 Problem of code only used by unit tests
47:15 Testing in different layers (develop, test, production)
49:31 How much code is not used in production?
50:31 How code becomes unused
https://foojay.io/today/foojay-podcast-57/
54:29 Conclusions
OpenJDK (Java) 23 is here! This version introduces three new features to the language and runtime, many bug fixes, small improvements, and a longer list of preview features. What are the most important facts about this release? Let's find out...
https://webtechie.be/tags/jfx-in-action/
1:06:18 Conclusions
In this Foojay podcast, we enter the world of mathematics by discussing Vectors and how they are crucial for AI and machine learning. As ChatGPT explains: "A Vector is a mathematical structure that holds numerical values. Vectors are fundamental to the field of Artificial Intelligence, as they allow mathematical operations to be performed efficiently and form the basis of many machine learning algorithms." OK, but how are these vectors crucial for the whole Artificial Intelligence evolution?
This is the last podcast of season 3, we're taking a summer break and will be back in September with the release of Java 23 and much more OpenJDK-related topics!
00:00 Introduction of the topic and guests
01:57 What is a Vector?
https://github.com/openai/tiktoken
https://arxiv.org/abs/1301.3781
https://towardsdatascience.com/word2vec-research-paper-explained-205cb7eecc30
https://github.com/jbellis/jvector
07:14 Vectors explained as a game
A fun and absurd introduction to Vector Databases: https://www.youtube.com/watch?v=mQGf9hWTqSw
09:44 Understanding tokenizers
10:40 Do we need dedicated Vector databases?
13:39 Vectors, LLMs and hallucinations
Crafting your own RAG system: Leveraging 30+ LLMs for enhanced performance by Stephan Janssen: https://www.youtube.com/watch?v=9PX5l4ETn0g
20:40 How LLM and chat interfaces are used in companies
https://www.bbc.com/travel/article/20240222-air-canada-chatbot-misinformation-what-travellers-should-know
23:45 Indexing all of Wikipedia
https://foojay.io/today/indexing-all-of-wikipedia-on-a-laptop/
Demo application: https://jvectordemo.com:8443/
https://openjdk.org/projects/panama/
27:23 Evolutions in Java for vectors, LLMs, and AI
Vector API (Eighth Incubator): https://openjdk.org/jeps/469
Foreign Function & Memory API: https://openjdk.org/jeps/454
32:44 Is the GPU needed for vector use cases?
35:04 Can we already use the incubator Vector API in production?
38:27 Some predictions...
Colbert project: https://github.com/stanford-futuredata/ColBERT
https://thenewstack.io/overcoming-the-limits-of-rag-with-colbert/
44:19 Make your vectors smaller to make them more efficient and less expensive
https://www.sciencedirect.com/topics/engineering/vector-quantization
https://huggingface.co/blog/embedding-quantization
https://foojay.io/today/visualizing-brain-computer-interface-data-using-javafx/
Asteroids 3D in JavaFX made from AI Deep Fake Audio data: https://www.youtube.com/watch?v=vFThM9BoTLg
49:19 Outro
As a backend developer, you may not realize that Java was initially born on embedded devices like set-top boxes and gateways. We discussed this topic for the first time almost three years ago in Foojay Podcast #2 with James Gosling, Johan Vos, Erik Costlow, and Frank Delporte (https://foojay.io/today/foojay-podcast-2/).
In this episode #55, we look into the history of the Java Micro Edition and how things evolved. Nowadays, with processors becoming increasingly powerful, we can run the exact same Java runtime on any Linux system, from the biggest cloud servers to the smallest Raspberry Pi Zero. Let's find out what can be done with Java in the embedded world.
Robert von Burg
DaShaun Carter
Pavel Petroshenko
00:00 Introduction of the topic and guests
04:53 Java is running on more devices than we can imagine
06:18 History of Java ME
https://www.oracle.com/java/technologies/javameoverview.html
https://en.wikipedia.org/wiki/SavaJe
Jasper S20: https://vimeo.com/198239375
Jasper S20: https://www.phonescoop.com/articles/article.php?a=77&p=1498
15:55 Java on modern embedded devices
22:25 Are modern embedded devices still "embedded"?
25:24 Current modern Java is perfect for embedded uses
https://www.pi4j.com
30:10 How Java moved to ARM on Mac and cloud
34:48 Green Computing = Reducing costs
Presentation by Miro Wengner: https://www.youtube.com/watch?v=zP4xeeY3HIA
https://thenewstack.io/which-programming-languages-use-the-least-electricity/
37:47 Recent Java evolutions impacting embedded use
41:51 Is there a need for real-time Java?
LED strips with Java: https://www.pi4j.com/examples/jbang/pixelblaze_output_expander/
49:44 Spring IO presentation by DaShaun
https://2024.springio.net/sessions/spring-boot-on-the-edge
51:38 Java on RISC-V
https://riscv.org/blog/2024/04/java-21-and-22-now-available-on-risc-v-a-collaboration-between-rise-and-eclipse-adoptium
53:27 More details about the product Robert develops with Java
https://www.pi4j.com/featured-projects/soft-real-time-plc-written-in-strolch/
https://strolch.li/
59:09 Network alternatives on embedded (e.g. LoRa)
1:03:42 What will the future bring to embedded Java?
Pi4J Spring Boot: https://www.youtube.com/watch?v=I62IviQLNts
https://openjdk.org/projects/leyden/
https://openjdk.org/projects/crac/
1:09:07 Conclusion
MIDI is a universal standard for communicating between musical instruments and computers. Within OpenJDK, there is a whole Java package dedicated to MIDI communication and data handling. Is it up to date? Are there better approaches now? And what can we do with music, Java, and Kotlin? Let's find out...
00:00 Introduction of the topic and guests
04:27 What is MIDI?
Learn more about MIDI and the javax.sound implementation in OpenJDK:
https://docs.oracle.com/javase/tutorial/sound/overview-MIDI.html
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/sound/midi/package-summary.html
https://github.com/openjdk/jdk/tree/master/src/java.desktop/share/classes/javax/sound/midi
https://www.baeldung.com/java-packages-vs-javax
09:53 MIDI Polyphonic Expression (MPE)
https://roli.com/mpe
https://midi.org/midi-polyphonic-expression-mpe-specification-adopted
https://midi.org/insights
11:23 Instruments require real-time systems
15:18 Why Atsushi used Kotlin for ktmidi
https://github.com/atsushieno/ktmidi
https://github.com/jazz-soft/JZZ
https://github.com/thestk/rtmidi
Applications created with ktmidi: https://github.com/atsushieno/ktmidi/discussions/14
https://play.google.com/store/apps/details?id=org.androidaudioplugin.resident_midi_keyboard&pli=1
23:31 Using ktmidi with JavaFX and the benefits of Kotlin
https://melodymatrix.rocks
25:00 Geert sticks to Java and loves the 6-month releases
27:24 Apps created by Geert for various Apple devices
https://uwyn.com/midiwrist-unleashed
31:11 Atsushi uses MIDI to develop audio plugins
32:34 About Geert found back his love for Java and created Rife2 and BLD
https://rife2.com
https://rife2.com/bld
https://software.moogmusic.com/store
Erik Thauvin https://www.linkedin.com/in/ethauvin/
43:13 How things just happen and finding a good open-source approach
https://codewithrockstar.com
https://webtechie.be/post/2024-06-18-jfxinaction-christopher-schnick
https://www.jdeploy.com
50:46 Conclusions
This is the final part of the JCON interviews. Did I save the best for last? It's up to you to decide. In this episode, you'll hear Simon Martinelli, Nicolas Fränkel, Marcus Hellberg, Rick Ossendrijver, and Abdel Sghiouar. We talked about a bunch of topics, like evolving your APIs, GraphQL, Java versus Kotlin versus Rust, Vaadin, AI and ChatGPT, OpenRewrite, ErrorProne, Infrastructure, and a lot more.
00:45 Simon Martinelli – Talks about CQRS, REST, APIs, JOOQ, Vaadin
https://www.linkedin.com/in/simonmartinelli
09:08 Nicolas Fränkel - Talks about evolving your APIs, versioning an API, GraphQL, CQRS, REST, ProtoBuffers, Java versus Kotlin versus Rust versus …
https://www.linkedin.com/in/nicolasfrankel
19:11 Marcus Hellberg – Talks about Vaadin, Web development with 100% Java, AI and ChatGPT
https://www.linkedin.com/in/marcushellberg
31:27 Rick Ossendrijver – Workshop and Talk about OpenRewrite and ErrorProne, Code analysis
https://www.linkedin.com/in/rick-ossendrijver
35:48 Abdel Sghiouar – Talks about Infrastructure, Gateways, and Proxies, Java Community in Morocco, Devoxx Morocco
42:15 Conclusion
This is part 4 of the JCON interviews. In this episode, we have 5 new guests for you. We start with garbage collectors and Intelligence Cloud, a tool created by Azul to find out which of your code is actually used in production and which dependencies are known to have vulnerabilities. My colleague Gerrit Grunwald was at JCON to give a talk about these subjects. With Balkrishna Rawool we dove into Virtual Threads, a very interesting topic as concurrency and threads can be challenging... Piotr Przybyl came to JCON to give a talk about Test Containers and how to test your application in an environment that is similar to your production environment. Another important topic related to testing is Flaky Tests. How do you handle tests that only fail from time to time and make your whole test report unreliable? François Martin had a talk about this subject, and he came to the conference together with Annelore Egger, who was one of the many volunteers.
00:37 Gerrit Grunwald: Talks about Garbage collectors, What is Intelligence Cloud and how can you find out which of your code is actually used in production and which dependencies are known to have vulnerabilities
https://www.linkedin.com/in/gerritgrunwald
09:55 Balkrishna Rawool: Talks about structured concurrency, virtual threads, what will come in the next Java releases
https://www.linkedin.com/in/balkrishnarawool
18:00 Piotr Przybyl: Talks about Test Containers, ToxiProxy, how to test your applications in an environment that is similar to your production environment.
https://www.linkedin.com/in/piotrprzybyl
29:23 François Martin: Volunteer JCON + Talks about Flaky Tests, how to handle waits in unit tests, how to do user interface tests, how to reproduce flaky tests.
https://www.linkedin.com/in/fran%C3%A7oismartin
26. Annelore Egger: Volunteer JCON + Visitor + the Java comm
https://www.linkedin.com/in/annelore-egger-244879188
This is part 3 of the JCON interviews. In this episode, Frank meets Otavio Santana, who recently wrote the book "Mastering the Java Virtual Machine." At JCON, he talked about the persistence layer and how you can evolve your career. You'll also learn more about Jakarta EE, GlassFish, and a PET project with messaging via Telegram.
00:42 Otavio Santana: Book Author, Talks about the persistence layer and evolving your career thanks to open-source.
https://www.linkedin.com/in/otaviojava
08:44 Arjan Tijms: Jakarta EE, Eclipse Foundation, Which version of Java to use
https://www.linkedin.com/in/arjan-tijms-1214aa1b1
17:08 Ondro Mihalyi – Jakarta EE, Eclipse GlassFish, Creating small Java applications, Edge devices
https://www.linkedin.com/in/mihalyiondrej
24:09 Buhake Sindi – Talks about Jakarta EE in the cloud, Comparing Jakarta EE to other frameworks, Java community in South Africa
https://www.linkedin.com/in/buhake-sindi
31:50 Patrick Baumgartner – Swiss community, Talks about a PET project with messaging via Telegram
https://www.linkedin.com/in/patbaumgartner
This is part 2 of the interviews we recorded at the JCON conference earlier this month in Germany. In this episode you get two main topics: Maven and Code Quality. In the first part, you'll hear Karl Heinz Marbaise and Steve Pool about the Maven project, the repository, Sonaytype and the security impact of dependencies. But next to security, we as developers are also responsible for the creation of readable and maintainable code. Miro Wengner, Marit van Dijk, and Hinse ter Schuur dive into this topic.
00:28 Karl Heinz Marbaise: Apache Maven version 4, Sonatype, Maven Repository
https://www.linkedin.com/in/khmarbaise/
09:59 Steve Poole: Sonatype, The many languages running on the JVM, The possible impact on a company of getting hacked, Talks about software supply chain security, Maven, SBOMs,…
https://www.linkedin.com/in/noregressions/
27:44 Miro Wegner: Talks about Disciplined Engineering
https://www.linkedin.com/in/mwengner/
34:52 Marit van Dijk: Talks about IntelliJIDEA, reading code, and AI Assistant
https://www.linkedin.com/in/maritvandijk/
43:50 Hinse ter Schuur: Being a sustainable developer, Talks about code reviews, merge requests, and branching
https://www.linkedin.com/in/hinseterschuur/
On Tuesday, May 14th, the Foojay Podcast went live at the JCON conference in Cologne, Germany, to talk with speakers and visitors about all things Java. We had so many amazing talks that we will combine them into several podcast episodes in the next weeks. This is part 1!
00:26 Geertjan Wielenga: Founding father of Foojay.io
https://www.linkedin.com/in/geertjanwielenga/
01:18 Markus Kett: Organizer JCON and JUG Oberpfalz
https://www.linkedin.com/in/markuskett/
04:47 Richard Fichtner: Organizer JCON and JUG Oberpfalz
https://www.linkedin.com/in/richardfichtner/
07:04 Jonathan Vila: Organizing Communities, JUGs, and events + Sonar, how can tools be both available for free and still make a profit as a company
https://www.linkedin.com/in/jonathanvila/
14:55 Soham Dasgupta: Community spirit, Talks about Generative AI
https://www.linkedin.com/in/dasguptasoham/
21:29 Mary Grygleski: Volunteer at JCON, Organizing Chicago JUG, Talks about Generative AI
https://www.linkedin.com/in/mary-grygleski/
30:16 Mohammed Aboullaite: Java and Machine Learning and training models
https://www.linkedin.com/in/aboullaite/
37:16 Simon de Groot and Richelle Bussenius: Organizing NLJUG, conferences, communities, and Masters Of Java
https://www.linkedin.com/in/simon-de-groot-ab832a169
https://www.linkedin.com/in/richellebussenius
Once a month, in the Foojay Podcast, we discuss the history of a Java User Group and the people behind it. In this episode, we are in Oberpfalz, Germany, for a particular reason. The organizers of the local JUG are the same people responsible for the JCON conference in Cologne in a few weeks. Let's learn more about the Java community in Germany.
00:00 Introduction of the topic and guests
02:09 What should we know about Oberpfalz
02:52 Java history of the guests
05:31 About the start of JUG Oberpfalz in a cafe in Silicon Valley
https://www.businessinsider.com/inside-the-silicon-valley-cafe-where-paypal-tesla-and-netscape-did-deals-2012-2
06:49 About the JCON conference
07:25 How many JUGs in Germany?
07:57 Event schedule of JUG Oberbpfalz
09:17 Why JCON in Cologne?
12:54 Free tickets for JCON for JUG members
https://foojay.io/today/foojay-podcast-19/ : How Working For Free For Fun Brought Me Fame and Fortune – Or At Least Some Of Each – In The End
19:05 About the JAVAPRO magazine
21:49 About the content of JCON conference
25:04 Most remarkable sessions of JUG Oberpfalz
27:24 About the evolutions in Java
https://foojay.io/today/foojay-podcast-47/ : Artificial Intelligence and Machine Learning with Java
https://foojay.io/today/foojay-podcast-29/ : How will AI and ML Influence the Role of Developers?
31:47 AI talks on JCON conference
32:44 1ON1 at JCON conference
38:03 Conclusion
About one and a half years ago, ChatGPT was launched. The way we search for information and develop software has changed a lot since then as the use of Artificial Intelligence suddenly became a lot easier. What can we expect in the near future, and how can we program AI ourselves with Java? Let's find out...
In this podcast, once a month, we discuss the history of a Java User Group and the people behind it. In this episode, I'm leaving the European Union and stepping over the border of Switzerland, the country where the Red Cross was started, and many international institutions have their headquarters. Let's find out if there is also a big Java community...
Last September, we got Java 21, a Long Term Support (LTS) version with eight new big features and seven incubator or preview features. Does Java 22 also bring that much innovation, or is it just a bug-fix release? And what needs to be done to get such a release published on time? Let's find out...
Once a month in this podcast, we talk about the history of a Java User Group and the people behind it. We have a special group in this episode as we visit the virtual Quarkus Club. This initiative started less than a year ago and is already one of the biggest groups in the world dedicated to Quarkus.
As a developer we all want to write bug free and high quality code. Writing tests is a crucial part to achieve this. Let’s explore the art of ensuring robust and bug-free code in the Java ecosystem. Whether you're a seasoned developer or just starting out, there’s a lot you can learn from the experts in this podcast about testing methodologies, tools, and best practices, empowering you to write reliable Java applications.
00:00 Introduction of the topic and guests
02:38 Is the testing pyramid still valid?
https://jonasg.io/posts/relevance-of-the-classical-testing-pyramid/
04:51 Introducing the Testing Honeycomb
05:50 Changes in the architecture of application and testing frameworks
06:52 What is the border between unit, system, and integration test?
16:17 Unit tests as behavior tests
21:11 Defining a testing strategy and the cost of change
26:45 Your tests also need architecting
31:18 How Testcontainers can simplify mocking and tests as a developer productivity tool
40:20 The cost of flaky tests
41:24 What type of feedback can we get from tests?
49:24 Digma plugin for IntelliJIDEA
49:49 Testing with AI
59:47 Should developers love writing tests?
01:18:40 Conclusion
Once a month in this podcast, we talk about the history of a Java User Group and the people behind it. Today, we are traveling to Cape Town and Johannesburg to learn more about its Java communities.
00:00 Introduction of the guests
04:14 What should we know about South Africa?
09:42 An anecdote about living and working in Cape Town
12:29 Stevens history in Java
16:18 How Steven got involved in the JUG
19:14 History of JoziJUG
21:52 Virtual JUGs during Covid
24:02 Restart after Covid with in-person events
27:02 Next events at the JoziJUG
31:45 Interaction between speakers and attendees
33:24 Starting as a speaker at a JUG
37:00 Future events at Cape Town Java Community
38:38 Most remarkable sessions of the past
47:01 Conclusions
https://foojay.io/today/join-slack-com-t-foojay-signup/
When starting to build a new website, you are facing a major challenge. Which framework should you use? Angular, React, Vue, Svelte? They are all based on JavaScript and can be the right choice depending on your needs. But do you really need one of these frameworks? Why would you not just stick to Java and use one of the many great libraries that are available for it?
Host: Frank Delporte
00:00 Introduction of the topic and guests
01:37 About Apache Wicket
03:26 About Vaadin
06:37 How these frameworks exchange data between server and client
09:38 Comparing to Thymeleaf
11:16 About htmx
https://foojay.io/today/book-review-modern-frontends-with-htmx/
14:42 How the Apache Foundation works
https://apache.org/
19:20 License model of Vaadin
21:26 Wicket and Vaadin "in the wild"
https://vaadin.com/blog/liukuri-uses-vaadin-flow-to-help-finnish-households-navigate-the-energy-crisis
https://liukuri.fi/
https://api.pi4j.com/
https://4drums.media/
26:03 Java developers can build full web applications with only Java without being full-stack
27:47 Could JavaFX become a web-development framework?
29:35 About WebComponents
32:14 How the company Vaadin is making money from opensource
34:31 The future of Wicket, htmx, Vaadin,…
39:55 Which kind of project to build with Wicket or Vaadin
46:18 Links
48:54 Searching Vaadin docs with AI
https://marcushellberg.dev/how-to-build-a-custom-chatgpt-assistant-for-your-documentation
51:21 Conclusions
“Public static void main string array” are the first words everyone sees when they start their first Java Hello World experiments. Some teachers explain them, while others say you will understand each word later.
Is this a problem to attract more Java developers? And how can we make the Java language more attractive for newbies? Let’s ask some experts…
Elvira van der Ven
Matt Raible
Frank Delporte
Deepu K Sasidharan
00:00 Introduction of the topic, guests, and host
02:40 Is Java a good language for beginners?
07:38 What other languages should be taught?
12:10 First languages learned by the guests
14:51 Does Java have a boilerplate issue?
24:01 Which Java version to learn for teaching?
26:41 How to make Java more attractive to beginners
35:54 Python versus Java
43:34 Tips for starters
49:23 What language gives the best job opportunities
56:55 Outro
Barbershop John
Hermine Deurloo
Synapse by Shane Ivers - https://www.silvermansound.com
Once a month in this podcast, we talk about the history of a Java User Group and the people behind it. Today, we are traveling to the Dominican Republic to learn more about the country and its Java community.
Brayan Muñoz Vargas
Eudris Cabrera Rodriguez
Host: Frank Delporte
00:00 Introduction
01:10 About the Dominican Republic
02:02 About JavaDominica
04:43 Cooperation with other Caribbean and Latin-American JUGs
06:16 Spanish as the main language
07:13 Gender mix of the community
08:05 Java education in Dominican Republic
11:16 About JConf Domonica
15:40 Java in Education Community Award
20:11 Best and worst JUG session
22:26 Personal motivation to be part of the organisation
25:06 Java career opportunities
27:47 Plans for the future
30:13 How to get in contact
32:33 Invitation to publish on Foojay
33:12 Outro
Barbershop John
Hermine Deurloo
Synapse by Shane Ivers - https://www.silvermansound.com
Java was born in 1995, when the internet as we know it today, didn’t exist yet. Cloud servers, Docker, Kubernetes, distributed systems, scaling up and down,… These things are now part of our daily job, but Java wasn’t originally designed for it. In this episode, we want to learn if the recent evolutions in OpenJDK, and ongoing related projects, will make Java a full Cloud member.
Guests
Grace Jansen
Mark Heckler
Guillaume Laforge
Podcast Host: Frank Delporte
Content
00:00 Introduction of the topic and guests
04:10 How much Java is running in the cloud?
08:04 How Java is growing as a cloud programming language
10:30 Java is secure thanks to the updates every 3 months
12:02 Features in new versions towards the cloud
13:01 Finding the right cloud cost balance
18:38 Measuring energy usage to know your ecological impact
23:27 Developers also need to monitor the cloud cost
25:14 We all make mistakes and have unused cloud services
27:44 Project duration on-premise versus cloud
30:48 Evolutions in Java towards the cloud
32:40 Project CRaC and InstantOn
34:36 How the community pushes Java forward
37:24 Frameworks supporting cloud improvements
40:44 New and shiny is not always the best
44:35 How to fix problems in a cloud environment
51:15 Microservices versus Monolith
55:40 Some final thoughts about AI
58:26 Outro
Related Foojay Posts
Music
Check the previous Foojay Podcasts for the first three parts of our J-Fall report. That one-day conference in the Netherlands in November was packed with amazing sessions. In this episode, you’ll get the remaining interviews we made that day. And as they say, last but not least, again, we have some fascinating insights for you into Java and its evolutions.
00:00 Introduction
00:38 Maurice Naftalin: Collections, Java history
06:27 Ron Veen and David Vlijmincx: Virtual Threads, Jakarta EE
12:37 Ivar Grimstad: Jakarta EE
17:20 Johannes Bechberger: Profiling
21:46 Mohammed Aboullaite: Continuous Profiling
26:17 Hilbrand Bouwkamp: Profiling, Development practices, Pi4J
30:48 Paco van Beckhoven: Mutation Testing, Code Quality, Evolutions
33:34 Willem van de Griendt: Organizing JUGs
Host: Frank Delporte
Music
In Episodes 33 and 34 of the Foojay Podcast, you got the first two parts of our JFall Report. But on that single-day conference, we had many more interesting interviews, so this is part 3! Later, we will talk about JOOQ, Desktop Applications, and Security. But first… Maven. It’s one of the most used tools in Java development, and we can learn a lot from different experts who joined me for an interview. Let’s start with Ixchel, who gave both a workshop and a talk.
00:00 Introduction
00:42 Ixchel Ruiz: Dev Tools, Maven en Gradle, GitHub Actions
04:40 Maarten Mulders: Maven, Open Source Projects
11:25 Jamie Coleman: Sonatype, Maven repository
19:35 Gerrit Grunwald: Java and Security, JavaFX
22:36 Anthony Goubard: Swing, Desktop apps
26:54 Gijs Leussink: HTMX, Thymeleaf, Micronaut
30:31 Simon Martinelli: JOOQ, Hibernate, Vaadin, How to become a JUG speaker
Once a month in this podcast, we talk about the history of a Java User Group and the people behind it. Today, we are traveling to Dublin to learn more about its Java community.
Links
Guest: Barry Alistair
Podcast Host: Frank Delporte
Content
00:00 Introduction
00:47 History of the Dublin JUG
04:42 Motivation to organise the JUG
07:31 Playing trumpet as a side effect…
- Hornplayer: Maarten Mulders: https://ti.to/dublin-java-user-group/feb-2023-java-champion-maarten-mulders
08:40 Only one bad memory (and it’s not Gerrit)
- Dr. Evil: https://jamesbond.fandom.com/wiki/Parodies_%26_Imitations?file=Dr._Evil_%28Austin_Powers%29.png
11:41 Reason to invite conference speakers
14:29 Attracting new speakers, the goal for 2024
16:06 Impact of Covid on the Dublin Java community
23:01 Getting back to normal gradually…
24:39 Plans for 2024
26:33 “Don’t speak to the people you already know”
29:43 Call out to people who want to start a JUG
30:35 Cooperation with other Irish JUGs
31:50 Conclusions
On November 9th, we had several interviews with the speakers and guests at the J-Fall conference in the Netherlands. Last week, in episode 33 of the Foojay Podcast, you could hear discussions about the evolution of Java towards the cloud and sustainability. In this part, we will touch on various topics related to the developers' lives.
00:00 Introduction
00:45 Elien Callens and Tom Cools: Leaving a Legacy
Host
Frank Delporte
A few months ago, we asked the J-Fall organization team if a Foojay Broadcast Room would be a good idea. And they said yes, so suddenly we found ourselves in the middle of the entrance of the Pathé cinema in Ede in the Netherlands, with a camera and microphones. During the day, we had a lot of exciting talks. There are way too many to fit in one podcast, so in the following weeks, you will get different episodes handling a lot of topics. This is part 1, and we talk about J-Fall of course. But also about the evolutions in Java and how it’s becoming the best cloud environment while keeping systems sustainable, and reducing the ecological, financial, and security impact of applications.
00:00 Introduction
00:59 Brian Vermeer: About J-Fall
03:50 Pratik Patel: Evolutions of Java
13:33 Grace Jansen: Cloud Java
20:22 Mark van der Walle: FinOps, EcoOps
35:28 Deepu Sasidharan: Passkeys and Security
42:18 Outro
Host
Frank Delporte
Music
Once a month we talk about the history of a JUG and the people behind it. Today we travel to the Philippines. A new generation of developers has taken over the organization of the JUG. And in addition, they are also involved in the organization of the Softcon conference. Let's talk about the history and future of the Java community in the Philippines.
Guests
Tristan Mahinay
Calen Legaspi
Jansen Marson Ang
Kerby Martino
Podcast
Host: Frank Delporte
Links
Content
00:00 Intro and introduction of the guests
03:40 How big is the Philippines Java community
05:07 History of Java in the Philippines
06:18 Topics presented at the JUG
07:05 Impact of Covid
07:43 About the Softcon conference
10:20 Mixing online and offline
12:02 Most remarkable JUG sessions
13:05 Involving younger visitors and speakers
13:42 Java at Philippine Universities
16:21 Future plans for the JUG
16:59 About LangChain4J
https://www.youtube.com/watch?v=BD1MSLbs9KE (Lize Raes @ Devoxx)
18:59 AI topics on Softcon
19:33 Impact of AI on developer jobs
22:15 How can people join the JUG
24:27 Why being part of the JUG organization
27:38 About the age of different programming languages
30:37 The importance of the Philippines Java community
32:21 New upcoming website for the JUG
35:43 Outro
The first week of October, the 20th edition of Devoxx took place in Antwerp, Belgium. Over 3000 Java developers, speakers, and enthusiasts gathered to share their knowledge and learn from each other. I got the opportunity to walk around with a microphone and talk to visitors and speakers. Not all of them, as there were just too many people and too many exciting sessions happening simultaneously.
Also available with video on youtube.com/watch?v=VJJmoiP7e-I
Podcast
Host: Frank Delporte
Content
00:00 Introduction with the Father of Java
01:20 Stephan Janssen, founder of Devoxx
05:39 Celestino Bellone and Mike Seghers, members of the organization
06:12 What visitors want to learn and see
10:12 Why attending Devoxx
11:32 How is Java being used by the attendees
12:17 Anton Arhipov
13:19 Bruno Borges and Sean Phillips
18:10 Ivar Gramstad
20:51 Paul and Gail Anderson
23:16 Mario Fusco
24:39 Roni Dover
25:28 Nicolai Parlog
27:58 Renato Cavalcanti
29:17 Sami Ekblad
30:20 Mariama Diaby
30:58 AV room with Bart Vervaet
32:20 James Gosling
36:14 Outro
Music
On September 12th, I was invited to speak at the Utrecht JUG together with Hanno Embrechts. That was an ideal moment to grab my camera and microphones to interview the organisers and some of the guests. So this is a bit a special edition of the Foojay Podcast as it’s also available with video! An experiment that brought me great pleasure. I hope you like it too! So … let’s time travel and get back to Utrecht when I got the organizers before the camera just minutes before the first guests arrived…
Video is available here: https://www.youtube.com/watch?v=VzhDmWZilI4
00:00 Intro
00:45 Michel van Dongen about the history and organisation of UtrechtJUG
03:10 Impact of Covid and meeting in person
04:24 Motivation to organise a JUG
05:57 Relationship with NLJUG and other Dutch JUGs
07:18 Willem van de Griendt about his role in UtrechtJUG
08:23 Why Willem loves the Java community
09:40 What to learn from JUG events
10:56 Future plans for UtrechtJUG
12:05 Guests are arriving
12:18 Interview with guest, Elias Nogueira
13:27 Interview with guest, Gerard Meijwaard
14:40 Introduction of Hanno Embregts
16:01 About speaking at JUGs and conferences
16:47 Being editor of the NLJUG Java Magazine
18:11 Hanno on stage
18:30 Outro
Artificial Intelligence and ChatGPT are the talk of the town. Every conference has several talks about these technologies, and on Foojay, you can find multiple posts about it. In this podcast, we want to take a look at it from the Java point of view. How can we use AI in Java programs or our job as a developer?
https://www.linkedin.com/in/frankdgreco/
https://twitter.com/frankgreco
https://www.javasig.com/
https://www.linkedin.com/in/ronidover/
https://twitter.com/doppleware
https://foojay.social/@frankdelporte
https://twitter.com/FrankDelporte
00:00 Intro and introduction of the guests
02:31 Difference between AI, ML, DL, CV,…
06:30 How ChatGPT and LLMs works
07:50 AI with Java and DeepNetts
https://www.deepnetts.com/
10:42 NYJavaSIG and how AI and ML are influencing the content
13:06 LLM is pattern matching, not a search tool
13:41 Java developers want to develop this with Java
15:03 Foojay articles about Java, AI, and DeepNetts
https://foojay.io/today/getting-started-with-deep-learning-in-java-using-deep-netts/
https://foojay.io/today/visual-recognition-for-chess-with-deep-learning-in-java-on-android/
https://foojay.io/today/deep-learning-in-java-for-drug-discovery/
https://foojay.io/today/quick-start-with-machine-learning-in-java/
17:40 Java Specification Request 381: Visual Recognition Specification
https://jcp.org/en/jsr/detail?id=381
https://github.com/JavaVisRec/visrec-api/wiki/Getting-Started-Guide
21:51 How Digma is using is AI
https://digma.ai/
https://foojay.io/today/not-your-grandfathers-logs-a-java-librarys-new-approach-to-observability/
https://foojay.io/today/java-developer-vs-chatgpt-part-i-writing-a-spring-boot-microservice/
https://foojay.io/today/announcing-the-digma-beta-first-runtime-linter-for-java-code/
https://foojay.io/today/effective-coding-with-java-observability/
https://foojay.io/today/observing-java-applications-running-via-docker-compose-using-opentelemetry/
28:07 Will generated code be harder to debug?
https://foojay.io/today/java-developer-vs-chatgpt-part-i-writing-a-spring-boot-microservice/
32:29 Why companies don’t allow ChatGPT
34:53 Using these tools correctly (and locally?)
44:07 This is just the start of the evolution
48:05 What will AI bring to Java developers?
https://www.baeldung.com/java-project-panama
50:59 Involve other industries in the AI revolution
54:44 Machines don’t have emotions…
55:29 Conclusion
Since 2018, we get a new version of Java every 6 months. And version 21, released this month, will be a long-term support version that can be used for many years. It also brings a lot of new features and improvements in both the language and the runtime. Actually, there are so many that we’ll probably not get all of them discussed in this podcast! Let’s see what our experts find the most important facts we need to know about Java 21.
00:00 Intro and introduction of the guests
01:51 Excitement about the OpenJDK 21 release
04:18 What is Long Term Support?
https://twitter.com/nipafx/status/1676908785313492992
06:07 Every OpenJDK release is stable and production-ready
https://www.linkedin.com/posts/mohamedtaman_aws-activity-7101961717521264640-F8jh
11:44 Next LTS in two years
12:06 Should you wait a bit before using 21?
13:07 About JEPs, new versus incubator and preview
https://openjdk.org/projects/jdk/21/
17:13 JEP 444: Virtual Threads
https://softwaregarden.dev/en/posts/new-java/loom/dont-look-at-virtual-threads/
22:30 JEP 430: String Templates
https://blogs.oracle.com/javamagazine/post/java-21-sneak-peek
26:05 JEP 440: Record Patterns + JEP 441 Pattern Matching for switch
27:11 JEP 442: Foreign Function & Memory API (Third Preview)
29:05 Energy efficiency of Java
https://thenewstack.io/which-programming-languages-use-the-least-electricity/
30:55 How Java evolves by inspiration of other languages
33:56 Difference between OpenJDK projects and JEPs
35:06 JEP 445: Unnamed Classes and Instance Main Methods (Preview)
40:55 Dummies book “OpenJDK Migration”
https://foojay.io/today/book-announcement-openjdk-migration-guide-for-dummies/
42:28 What will Java 22 bring?
43:27 JEP 443: Unnamed Patterns and Variables (Preview)
45:18 JEP 439: Generational ZGC
https://foojay.io/today/what-should-i-know-about-garbage-collection-as-a-java-developer/
49:33 Performance improvements by using newer runtimes
51:23 JEP 451: Prepare to Disallow the Dynamic Loading of Agents
52:37 Looking back at the 6-month release cycle introduction
55:00 Outro
Since December last year, the Foojay podcast virtually visited a Java User Group monthly. This journey has already brought us to many places around the world. And this time, we are in Chicago to learn from the Java and Kotlin user groups.
DataStax Vector DB and Search (no credit card and $25 monthly complimentary usage for up to a year): https://bit.ly/3L1Dkgi
00:00 Intro and introduction of the guests
02:08 How Mary and John got into Java, Kotlin and user groups
06:55 History of the Chicago JUG
08:43 How Chicago switched from dotnet to Java in 2010’s
09:09 How Chicago JUG and KUG cooperate
13:04 Size of the communities
13:55 Impact of Covid and working-from-home
18:20 About streaming the event versus in-person
19:47 How to attract new visitors
23:00 Personal benefit of being part of a community
27:39 Speaking at conferences around the world
31:41 Most remarkable sessions
38:25 Outro
As developers, we like to automate the boring parts of our job. This automation includes the source control system, build pipelines, and code analysis tools. In recent decades, we have seen evolutions from CVS to Subversion to Git. Is this the endpoint? Did we find the holy grail in version control? Or what evolutions are waiting for us? Let’s find out together with these fantastic guests…
Guests
Trisha Gee (Gradle)
Ixchel Ruiz (JFrog)
Pierre-Étienne Meunier (Pijul)
Podcast
Host: Hanno Embregts
Production: Frank Delporte
Content
00:00 Intro and introduction of the guests and host
04:15 Should we automate as much as possible to be able to focus on developing
06:33 The human factor of developer productivity engineering (DPE)
10:23 PEs view on automation and how changes in law books follow the same approach as “code diffs”
17:02 How you can struggle with your version control system
26:33 How Pijul tries to solve these challenges
33:24 Patches versus branches versus trunk-based development and how to switch from branch-approach
44:09 What could be improved to version control systems
50:16 Why are still so many people using Git
1:02:02 Looking 10 years into the future
1:13:30 Outro
Java and JavaFX are probably not the first options you consider if you want to create a game application. But the FXGL library allows you to do precisely that: create games that run on all platforms with the same codebase as we are used to with Java. And even without an extra library, the JavaFX Components and Canvas provide many animation and gaming possibilities. Let's learn from experts why Java should be on your game-development-language-list!
Guests
Chengen Zhao
Almas Baim
Gerrit Grunwald
Host
Frank Delporte
Content
00:00 Intro and introduction of the guests
04:00 About FXGL
08:48 How Chengen used FXGL to improve his Xtrike game
10:15 Combining 2D and 3D
11:20 The fascination of Gerrit for retro games
13:36 JavaFX components versus Canvas
19:09 Creating games while waiting in airports…
22:19 Convert to mobile and Steam apps
23:22 Question of Chengen if FXGL can extend view components
24:58 How students are involved in the FXGL project
29:53 Why FXGL has a mix of Java and Kotlin
32:22 Building for mobile and the hassle with the app stores…
38:58 3D in JavaFX
44:14 Status of Swing
47:13 About the Java community in China
49:23 Could a drag-and-drop animation tool be created for FXGL?
51:13 Use JavaFX FXML markup files? And can SceneBuilder provide a code-only approach?
55:34 Conclusion
The Foojay Java User Group World Tour has already brought us to a lot of different countries all over the world. But for this episode, the host decided to stay at home. The Belgium JUG (BeJUG) started in 1997 and was the birthplace of Devoxx, Devoxx4Kids, and VoxxedDays. And in our capital Brussels, we can join Brussels JUG (BruJUG), since 2010.
So there’s a lot we can talk about to learn more about communities and conferences!
Guests
Olivier Hubaut, BruJUG
Stephan Janssen, founder BeJUG, Devoxx, Devoxx4Kids, Voxxed
Tom Cools, AntwerpJUG, BeJUG
Podcast host
Frank Delporte
Links
Content
00:00 Introduction of the topic and guests
02:19 History of BeJUG and the start of JavaPolis (Devoxx)
06:00 How BruJUG (Brussels) started and evolved
08:35 Tom as the winner of the bad timing award with AntwerpJUG
10:35 Impact of Covid on Devoxx and BruJUG
18:09 How BeJUG got restarted in 2022
27:05 How BruJUG attracted new speakers + tips for new speakers or new talks
31:32 How Devoxx4Kids grew to a worldwide event
36:03 The tools developed and used to manage Devoxx
41:13 About the name change from JavaPolis to Devoxx and the franchising
46:14 Future plans for Devoxx, BruJUG and BeJUG
51:14 CFP for Devoxx and how reviewers can find sessions for their JUG
54:16 Outro
How do you get the maximum performance out of your Java application? And how to use profiling to find the bottlenecks? Let's learn it in this podcast!
Java profiling is a crucial technique for measuring and improving the performance of applications. It helps identify bottlenecks, memory leaks, and other application performance issues. There are various challenges with using Java profiling, and the need for profiling depends on the complexity of the application and the performance requirements. Let us learn more about the challenges, different profiling approaches, and when to use Java profiling to reach the best performance with our Java code.
Guests
Chris Newland
Marcus Hirt
Heinz Kabutz
Podcast
Host: Marcus Lagergren
Production: Frank Delporte
Content
00:00 Introduction of the host and guests
10:42 History of Java and how performance was a challenge in the beginning
14:21 What is profiling? What should be profiled? What is good profiling?
28:44 What you should learn about profiling and performance
31:43 Impact of the different garbage collectors on performance
32:59 Performance and profile should focus on the right requirement for your system
34:39 Ergonomics in the JVM and tunes itself for the system it is running on
39:49 What are current important evolutions and upcoming coming or required changes in profiling?
43:19 Break-throughs in Stop-The-World approaches
46:43 Minimize the number of JVM flags you use
56:47 About Errors and Exceptions
58:30 The current runtimes and operating systems are very forgiving
1:04:26 Is profiling becoming less relevant?
1:10:20 Conclusion
Grab your Lego and robots, and let's talk about STEM, STEAM, and programming for fun!
As a developer, we all get frustrated occasionally when a bug messes up our schedule, and we have to dive deep into the code to find a solution. But still, many of us keep coding in our free time as we love to do it and want to create amazing stuff. In this episode of the Foojay Podcast, we talk to volunteers from different organizations where coding is used to inspire children to become engineers or at least learn to make good use of computers and the tools around them.
Guests
Podcast host
Content
Once a month, the Foojay Podcast virtually visits a JUG to talk with the people behind it. SouJava, the Brazil JUG, was founded in 1999, and according to Wikipedia, it’s recognized as the world’s largest Java User Group with 40,000 members! There’s a lot we can learn from the people who achieved this.
Guests
Podcast host
Links
Content
Functional programming, it seems you either love it or you hate it. But, like everything in software engineering, it is a trade-off. So for today, let's focus on the good, the bad, and the ugly parts of Functional programming.
Guests
Podcast
Links
Content
Many developers spend a lot of their time on side projects. It’s an opportunity to learn new techniques and get involved in communities. But sometimes, it can also lead to a new job. Or even starting a business based on such a project. Today we are talking to people who achieved such a transition and became famous and rich, or at least some of each…
Guests
Podcast host
Content
The Foojay Podcast Java User Group World Tour has already brought us to the UK, US, Dubai, and Japan. Today we travel back to the US to learn more about the Atlanta JUG, mainly because this week, they are organizing the DevNexus conference! Let’s learn about the challenges of organizing both a Java User Group and an entire conference…
Guests
Podcast host
Links
Content
TornadoVM is a programming and execution framework for offloading and running JVM applications on multi-core CPUs, GPUs, and FPGAs. With the same code, some of your existing program code can be executed hundreds of times faster!
Guests
Podcast
Content
Since 2018, we get a new version of Java every 6 months. 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. 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? Let's find out and learn more about the process of the OpenJDK evolution!
Guests
Podcast host
Content
Last month we were in the US, and this time we travel to the other side of the world as we spoke with the organizers of the Japan JUG!
Guests
Podcast host
Links
Content
Let's talk about debugging and observability. We work with debugging all the time, but how well do we know this common practice? Observability, monitoring, and debugging at scale for your production.
Guests
Host
Producer
Content
We started the Foojay Podcast JUG World Tour in Manchester last December. Last month we were in Dubai. And now we are on the other side of the world in the US to meet the people behind the Denver and Boulder JUG.
Guests
Podcast host
Links
Content
In this podcast, we are talking to some of the key people working on different IDEs, Integrated Development Environments. Those are applications that provide tools to computer programmers for software development. An IDE typically consists of at least a source code editor, build automation tools, and a debugger. Let's learn how these tools evolved, and the challenges they face to stay up-to-date with the many evolutions in Java and all other programming languages. And what we can still expect in the future!
Guests
Podcast host
Content
A few weeks ago, Ted Neward published a post in which he reviewed the predictions he made one year ago and added a long list of predictions for 2023. In this Foojay Podcast episode, we talk about these predictions, and we even found an analogy between what has happened at Twitter in the last months and the history of Java!
Guests
Podcast host
Content
Last month we introduced a new topic in this podcast when we visited the Manchester Java User group. That JUG already exists for nearly 10 years, so they had a lot of history to share. In this episode, we talk to the organizers of the Dubai JUG that started in May of 2022. Let’s learn what the challenges are for a new JUG, how the culture of Dubai and Hawai are alike, possible upcoming conferences, and much more
Guests
Podcast host
Content
JavaFX was introduced by Sun Microsystems in May 2007 and provides a platform for desktop, mobile, and embedded systems built on Java. Let's talk about the JavaFX framework itself, but also about the libraries and applications that are built with it.
Guests
Podcast host
Content
With this Foojay Podcast, we introduce a new topic: once per month, we will virtually travel to a Java User Group (JUG) to learn how they organize their events and learn from their experiences.
For this first Foojay JUG Podcast, we are flying to Manchester in the UK.
Guests
Podcast host
Content
For this Foojay Podcast, we invited security experts to dive into the fascinating world of secure coding and detecting vulnerabilities in your Java applications. How can you make and keep your systems safe? That's what we want to find out...
Guests
Podcast host
Content
In this episode, we want to give you a look behind the curtains of Foojay.io. The very first post on the website dates from April 25th in 2020, and it was by Geertjan Wielenga. Let's look back and what has happened on Foojay during the 2,5 years since that first post, and talk to some of the people behind the project.
Guests:
Podcast host:
0'00 Short intro and music
0'15 Introduction about Foojay.io
0'38 Introduction of the guests and host
1'35 What is Foojay all about?
3'00 About the Foojay content and contributors
5'40 About the Foojay Slack - https://foojay.io/today/join-slack-com-t-foojay-signup/
6'50 How to submit content to Foojay - https://foojay.io/today/how-to-submit-your-next-article-on-foojay-io/
10'40 How writing on Foojay could lead to a new job
13'25 Why OpenValue is contributing to Foojay
15'30 Foojay is a website controlled by the people who contribute to it
16'10 About the advisory board - https://foojay.io/board/
19'28 The role of the moderator
21'06 Foojay wants to be a network builder within the Java community
23'00 About the additional functionalities in the Foojay WordPress system
23'40 All the activities related to Foojay, e.g. JConf
24'40 Certification program, an upcoming feature in Foojay
32'25 Other plans for the near future: forum, improved calendar, event information,...
36'00 Going broader, everything related to OpenJVM
36'20 About the Java community
36'55 Foojay wants to keep things simple
38'08 Call to more companies to join the Advisory Board
38'30 Join Foojay to make new friends!
On September 20th, OpenJDK version 19 gets released. In this podcast, we are looking forward to the new features and changes this release brings.
Guests:
Podcast host:
0'00 Short intro and music
0'15 Introduction about the shift of Java releases to a 6-month release cycle and version 19
0'55 Introduction Speakers and Host
3'30 Review of articles published on Foojay regarding the new JDK 19 features
4'00 What is project Loom and virtual threads?
4'55 What can we expect in OpenJDK 19?
6'10 Project Amber, pattern matching, switch cases
7'10 Massive throughput with virtual threads
8'45 About preview and incubator features
12'50 Platform versus virtual threads
17'05 Java is becoming much stronger, reducing the need for extra frameworks
18'15 Java versus other languages
21'40 How trading companies can profit from virtual threads
22'50 Project Panama, shared memory use
28'05 About jextract
29'35 About Java versions, LTS, and how they are used
33'35 Record patterns
35'40 Maintainability and developer productivity
37'40 The importance of keeping up with other languages to keep Java "cool" for developers
43'30 About Java modules
45'45 Outro
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.
Quick summary—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.
Guests:
Foojay Articles:
Foojay community members discuss the modernization of Jakarta EE applications from the older Java EE form, including backwards-compatibility, as well as forwards-excitement about cool new developments like Microprofile.
Guests:
Foojay community members and beyond discuss embedded Java:
Topics:
En liten tjänst av I'm With Friends. Finns även på engelska.