
airhacks.fm podcast with adam bien
Java, Serverless, Clouds, Architecture and Web conversations with Adam Bien
Latest episodes

May 5, 2024 • 1h 18min
How Kotlin Happened
An airhacks.fm conversation with Anton Arhipov (@antonarhipov) about:
Anton appeared previously on "#273 The Long Road to Java and Kotlin", discussion about Anton Arhipov's artwork using circles and a compass, attending the JVM Language Summit in 2011 where Kotlin was introduced by JetBrains, initial skepticism about the need for a new JVM language, JSR-305 Annotations for Software Defect Detection by William Pugh, Kotlin's null safety features and interoperability with Java, Kotlin's growth and adoption by Android developers, Kotlin's multiplatform capabilities for targeting native, JavaScript, and WebAssembly, Kotlin's potential beyond Android development, Kotlin's core libraries for date/time, serialization, and coroutines, the Kotlin compiler being self-hosted and written in Kotlin, benefits of Kotlin Native for serverless and IoT compared to GraalVM, Kotlin Multiplatform support in the upcoming JetBrains Fleet IDE, designers using similar UI principles across IDEs and applications
Anton Arhipov on twitter: @antonarhipov

Apr 28, 2024 • 1h 27min
How Azul Happened
An airhacks.fm conversation with Gil Tene (@giltene) about:
starting with hacking adventure games on a VAX-11/780 as a teenager,
building computers and making money in high school,
providing access to Usenet,
early programming experiences with Pascal and C/C++,
moving to Silicon Valley in 1994 and witnessing the rise of Java,
working on fault-tolerant computer systems at Stratus Computer,
co-founding Azul Systems and developing the Vega appliances to virtualize Java applications,
the technical details of how Vega appliances worked by running JVMs on specialized hardware,
the evolution of Azul to focus on pure software solutions such as Zing and supporting openJDK,
Gil's continued involvement in coding and maintaining open-source libraries
Gil Tene on twitter: @giltene

Apr 20, 2024 • 51min
Pure Java AI
An airhacks.fm conversation with Dr. Zoran Sevarac (@zsevarac) about:
Zoran previously on airhacks.fm: "#169 Deep Learning with Modern Java Code",
discussion about the latest updates and features in DeepNetts,
a full-stack Java AI platform,
University of Minnesota's drug testing application using DeepNetts,
Jefferson Lab's particle research using DeepNetts Community Edition,
including GPU support for faster inference using jcuda,
TensorFlow compatibility, and simplified AI integration with JSR-381,
real-world applications of DeepNetts in drug testing and particle research,
challenges and considerations for using GPUs in serverless environments,
the potential of Apple's M-series chips for machine learning,
exploring Project Babylon and Code Reflection in Java,
using Panama and jextract for native library bindings,
the importance of having developer tools and an IDE for building AI models,
plans for integrating large language models into DeepNetts,
the advantages of a pure Java solution for AI in enterprise applications,
and the bright future of Java in the AI ecosystem,
Deep Nets 3.1.0 release with GPU support
Dr. Zoran Sevarac on twitter: @zsevarac

Apr 14, 2024 • 1h 2min
How OpenRewrite Happened
Jonathan Schneider, a Java refactoring entrepreneur with a background in self-taught C++ and a U.S. Army officer, discusses challenges in Java version migration and automated refactoring at Netflix. He shares insights on founding OpenRewrite and Moderne for enterprise refactoring, emphasizing the importance of maintaining code formatting and type attribution. The podcast also explores potential integrations with language models for code optimization.

Apr 7, 2024 • 1h 23min
Underscore, Pattern Matching, Java LTS And When Previews Are Stable
An airhacks.fm conversation with Nicolai Parlog (@nipafx) about:
Nicolai previously on "#206 Java 19: Millions of Threads in No Time",
discussion about the underscore feature in Java 22 and its importance in pattern matching,
using the underscore for unused lambda parameters and deconstruction of records,
avoiding default branches when switching over sealed types,
the deprecation and removal of underscore as a regular variable name,
the foresight of the Java community in making underscore unusable,
the simplicity of installing Java compared to other languages,
the need for a minimalistic Java build tool for better developer experience,
SdkMan,
the bld tool as an example of a pure Java build tool,
the process of contributing to OpenJDK and the importance of starting with a problem statement,
the distinction between Java specifications and implementations,
the concept of long-term support (LTS) in Java and its relation to vendors,
the importance of using the right terminology to avoid misunderstandings in the Java ecosystem
Nicolai Parlog on twitter: @nipafx

Mar 31, 2024 • 58min
Integrating AI with Java: Quarkus and Langchain4j
An airhacks.fm conversation with Dimitris Andreadis (@dandreadis) about:
Dimitris appeared previously on "#64 Quarkus 1.0 and SpringBoot",
discussion about integrating AI language models (LLMs) with Java applications using quarkus and langchain4j,
OpenShift AI,
the benefits of using Quarkus for AI integration,
Drools and ML,
the potential of using AI for rule engines and decision making,
the challenges of handling state and context with LLMs,
InfiniSpan and vector databases,
the role of vector stores and embeddings for semantic search,
the advantages of Java for enterprise applications and maintenance,
the potential of using AI models natively with GraalVM,
the importance of tools functionality for LLMs to call Java methods,
the excitement around AI in the Java community,
the future trajectory of tighter integration between Java and AI models,
the potential of using AI for code generation and intelligent developer tooling
Dimitris Andreadis on twitter: @dandreadis

Mar 23, 2024 • 1h 12min
How Linkblog Happened
An airhacks.fm conversation with Erik C. Thauvin (@ethauvin) about:
early computer experiences with Logo and Tandy Model 3,
writing horse race handicapping software as a kid,
working at Apple at 16 writing resource editor for Mac,
starting consulting firm and building custom software,
attending Sun Tech Days to learn about Palm Pilot and Java,
writing linkblog with Tomcat and JSP,
creating popular linkblog with 8 million monthly views,
converting projects to Rife and BLD frameworks,
motivations for writing software he needs,
Erik's blog: erik.thauvin.net
Erik C. Thauvin on twitter: @ethauvin

Mar 17, 2024 • 1h 6min
A Better JNI: Project Panama
An airhacks.fm conversation with Paul Sandoz (@paulsandoz) about:
Paul previously appeared on "#277 Project Babylon",
article about Automatic differentiation of Java code using code reflection,
using Project Babylon for automatic differentiation,
emulating C# LINQ in Java,
writing Triton programs in Java for GPU execution,
using Project Panama for native interoperability with C/C++ libraries,
JExtract tool for generating Java bindings from C headers,
memory management with Panama memory segments and arenas,
advantages of Panama over JNI,
integrating Java with ONNX models,
persistent memory and object storage
Paul Sandoz on twitter: @paulsandoz

Mar 12, 2024 • 1h 7min
How LangChain4j Happened
An airhacks.fm conversation with Dmytro Liubarskyi (@langchain4j) about:
continuous Windows 95 re-installation on Pentium 2 then Pentium 3,
early interest in J2ME development and websites,
transition to Java and enterprise software development,
motivation behind creating langchain4j,
integration with embedding models, vector databases, and ONNX Runtime,
langchain4j core abstracts: language models, chat memory, AI services, tools,
langchain4j,
onnx.ai,
Dynamic tools with GraalVM,
Enterprise use cases and integration with Java stacks,
OpenAI, Anthropic, Cohere, Hugging Face, Bedrock, Olama, Gemini
Dmytro Liubarskyi on twitter: @langchain4j

Mar 3, 2024 • 1h 9min
No Dependencies--Or How Rife 2 and Bld Happened
An airhacks.fm conversation with Geert Bevin (@gbevin) about:
Yamaha DX7 - Geerts first synthesizer,
Classic Minimoog analog synthesizer by Bob Moog,
First synthesizer was a Yamaha DX7 successor,
Early music production using Amiga computer and MIDI,
iOS and macOS development with focus on audio DSP and synthesis,
Returning to Java development after years away,
high productivity with Java,
New Java release cadence and experimental features,
Rife web framework and bidirectional template engine,
BLD build tool and philosophy,
Kotlin Multiplatform capabilities,
SwiftUI DX compared to Java and IntelliJ,
Moog Music website,
Jean Michel Jarre,
Geert personal website,
Rife 2 GitHub project,
Bld GitHub project
Geeert's website:
uwyn.com
Geert Bevin on twitter: @gbevin
Remember Everything You Learn from Podcasts
Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.