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

Aug 22, 2021 • 1h 15min
Java, Serverless, Google App Engine, gVisor, Kubernetes
An airhacks.fm conversation with Ludovic Champenois (@ludoch) about:
Amstrad CPC 64 with audio tape,
listen to bugs,
first project: a family tree in Basic,
8-bit music over gaming,
learning APL with Game of Life then fortran,
inventing the iPad with Apple II, Pascal and assembler,
working with computers on boats with Vax VMS and Fortran,
refactoring logistics software from VAX to Unix C++ and DEC Alphas,
starting at Sun Microsystems in 1996,
from Java 0.9 to 1.0,
Javasoft vs. Sun Tools,
TeamWare was like git but developed by Sun,
interviewing the CEO of NetBeans at Sun,
working on Netbeans Enterprise Edition,
xdoclet was forbidden by Sun Microsystems,
Javasoft was the church,
using Netbeans at Google,
improving application servers usability,
writing deployment descriptors by hand,
Java EE 5 was a revolution,
it was impossible to write an EJB 2 with vi,
starting to work on iPlanet Netscape and Sun Server,
Java EE Reference Implementation was the ancestor of Glassfish,
using Glassfish as Reference Implementation and commercial offering at the same time,
implementing HK2 - the dependency injection for Glassfish,
generating JAX-RS resources with asm,
starting at the Google AppEngine Team in 2011,
Google AppEngine (GAE) is one of the first Platform as a Service (PaaS) offerings,
serverless and elastic Google AppEngine,
GAE came with JPA-like persistence,
GAE ships with a single JAR which communicates to various Google services,
GAE supports Java 11,
GAE supports Servlets and jetty,
kubernetes was created at the GAE team,
GAE is a single application running on Google's infrastructure,
GAE was not able to secure Java 8 like it secured Java 6 and Java 7,
using gVisor as replacement for Java's security model,
gVisor is the basis of Cloud Run,
gVisor rewrites syscalls,
gVisor is the new implementation of the libc library,
gVisor is the matrix for JVM,
Ludovic's presentation about GAE: Evolution of a Platform as a Service from the inside
Ludovic Champenois on twitter: @ludoch

Aug 15, 2021 • 1h 21min
Code Smell, Chess, Java and Developer Relations
An airhacks.fm conversation with Oleg Selajev (@shelajev) about:
the 100 MHz Pentium 1,
the turbo button slow down,
WinRAR with floppy disks,
the technologies progresses but the fiddling remains the same,
playing chess with the grandfather,
the chess tournaments,
code smells and chess strategy,
starting with HTML and PHP,
starting programming with Java 5 with annotations and generics,
wisdom and smartness,
drawing a snowman with Java AWT,
full time job competes with opensource work,
early J2EE and XML deployment descriptors,
jrebel and ZeroturnAround,
using JMS at hospitals,
dealing with HL7,
starting at playtech to implement casino games in Java,
back to zeroturnaround,
liverebel, watchdog and monitoring,
monoliths are back,
everyone talks about microservices,
Stack Overflow Developer Survey 2021,
The State of Developer Ecosystem 2021 by Jetbrains,
Snyk JVM Ecosystem Report 2021,
Virtual JUG,
Rogue Wave Java Collection,
joining Oracle,
being DevRel at GraalVM team
Oleg Selajev on twitter: @shelajev, Oleg's youtube channel

Aug 8, 2021 • 54min
Modularization, Monoliths, Micro Services, Clouds, Functions and Kubernetes
An airhacks.fm conversation with Prof. dr. Matjaz Juric (@matjazbj) about:
the larger the system, the more important the modularization,
modularization and reuse,
modularization and business requirements,
cross-cutting logic is a solved problem,
a module is a Java package,
OSGi introduces additional complexity,
packaging vs modularity,
modularization and team work,
most of the patterns became a part of the platform,
isolation with deployment units,
a module is a Dockerfile,
internal modularization became less important,
physical and logical modularization,
logical over physical modularization,
physical modularization introduces complexity,
costs driven development,
kubernetes and modularization,
cloud complexity vs. Java runtime complexity,
wrong cloud expectations,
CI/CD in the clouds,
internal microservice structure should be simpler,
ECS blue green deployment with AWS CodeDeploy,
vendor independence vs. cloud specific services in the clouds,
Payara Cloud: Payara cluster became Kubernetes operator,
functions and microservices,
serverless computing with functions,
function communication styles,
Apache Kafka and functions,
the Outbox pattern is too technical,
KumuluzEE and Kumuluz Platform,
Prof. dr. Matjaz Juric on twitter: @matjazbj, Prof. dr. Matjaz Juric at University of Ljubljana

Aug 1, 2021 • 1h 6min
JavaServer Faces, Web Components, PrimeFaces and JavaScript Frameworks
An airhacks.fm conversation with Cagatay Civici (@cagataycivici) about:
support for vue 3,
components for vue 3,
vue 2 to vue 3 upgrade requires a migration,
vue 3 is backwards incompatible,
JavaServer Faces / Jakarta Server Faces (JSF),
PrimeFaces / JSF design was updated,
primefaces / JSF keeps being popular,
Java Server Pages / JSPs for server side rendering,
Angular is the new JSF,
styling and functionality separation,
primeblocks is CSS only,
primeflex CSS utility,
components vs. templates,
primevue as web component library,
BCE design template,
the BElement,
NPM-free web component template,
Microsoft Blazor for server side rendering,
accessibility with semantic HTML,
wrapping a checkbox for accessibility and design,
blocks are comprising components,
React Chakra blocks library,
code2 and bubble low code platforms,
SSE with Java screencast,
Cagatay Civici on twitter: @cagataycivici

Jul 25, 2021 • 54min
CDI Lite, MicroProfile, Helidon, Micronaut and Serverless
An airhacks.fm conversation with Graeme Rocher (@graemerocher) about:
Graeme became a Jakarta EE committer,
Micronaut supports large parts of CDI Lite,
the Build Time Extension API,
SessionScoped, RequestScoped and ApplicationScoped are going to be part of CDI Lite,
splitting the BeanManager interface,
the goal of CDI Lite,
CDI and immutable infrastructure,
using TestContainers to spin out micronaut instances,
heavy kubernetes,
Google Cloud Run,
CDI Lite's main goal is memory efficiency and fast startups,
using CDI Lite to write CLI apps,
using CDI Lite for IoT,
micronaut on IoT devices,
Azure functions, AWS Lambda and GraalVM,
Micronaut Launch as AWS Lambda,
Helidon will use Micronaut Core for CDI Lite injection,
Helidon will eliminate reflection with Micronaut contributions,
Helidon will be able to use any Micronaut module,
the micronaut's pom.xml was simplified,
micrometer and MicroProfile,
eclipse-ee4j CDI lite,
separating business and technology metrics,
the battle between standards and de-facto standards,
OpenMetrics, OpenCensus and opentelemetry,
moving fast and backward compatibility,
Graeme Rocher on twitter: @graemerocher

Jul 18, 2021 • 1h 11min
A Serial Duke Choice Award Winner
An airhacks.fm conversation with Mohamed Taman (@_tamanm) about:
AMD PC in 1997 with 200 MHz
hot AMD,
exploring the DOS and QuickBasic,
drawing sceneries,
photography as hobby,
assembling PCs from parts,
AS-400 and RPG,
QBasic and C++ on
Windows 3.11 and Windows 95,
to shutdown windows you had to push the start,
Windows Millenium Edition,
equations in QBasic,
starting with Java 1.1,
the Sun Certified Java Programmer
certification was hard to pass,
impressed with Java,
Java hides the low-level boilerplate for convenience,
catching up with J2EE 1.4 and Java EE,
building mazes with OpenGL and Java,
working for Silicon Experts,
staring with Sun Enterprise Server, later BEA WebLogic,
recreating Struts from scratch,
the problem with early EJB,
working on JD Edwards, Oracle and Siebel integration,
using ADF at Oracle,
Sun Microsystems was acquired by Oracle,
starting at eFinance,
efinance is private, but founded by the government,
started a United Nations (UN) project for donations management,
Java EE 7 with Glassfish was used as the stack,
finding bugs in GlassFish,
working with the latest versions in mission critical projects,
presenting at JavaOne keynote,
JBoss to quarkus migration on openshift,
"Java EE: Future Is Now, But Is
Not Evenly Distributed Yet" at JDD,
scaling with hardware,
Mohamed Taman on twitter: @_tamanm

Jul 9, 2021 • 43min
A Soldering, Agile, Geek Lawyer using Java and Quarkus
An airhacks.fm conversation with (Lawrence R. Peterson) about:
Tandy TRS-80 with 35 years,
practicing law in 1974,
terrible IBM typewriters,
handling 400 cases per month,
increasing the productivity of a law practice with computers,
changing the law,
soldering computers in leisure,
learning Pascal,
buying a 12k AT&T computer and learning C,
writing a pleading management software with Unix and dumb terminals,
writing a file-based database on UNIX,
buying a SUN workstation,
retooling to C++,
networking programming with Sun Station and C++,
"write once, run everywhere",
Java was solving a lot of problems,
transferring to Oracle Application Development Framework ADF, WebLogic and Java,
primefaces, RichFaces, icefaces, MyFaces, woodstock and
Netbeans,
overloading the court with too many perfect cases,
practicing Agile without knowing it,
migration from WebLogic to quarkus,
programming is like a murder mystery,
a U.S. missionary in Bavaria,
airhacks.live workshops,
merging back the microservices into a monolith,
From Redux to Redux Toolkit coupon code: redux4free,
the bce.design template,
Lawrence's software: juristec.com
Lawrence's website Lawrence R. Peterson

Jul 3, 2021 • 50min
EDI, Java Batch, MicroProfile, JSON-API and OpenAPI
An airhacks.fm conversation with Michael Edgar (@xlateio) about:
custom Pentium 100,
a telnet based, MUD game,
Vallhalla MUD,
BBS was used to connect to the network,
enjoying Apple 2 at school,
enjoying Sonic Sega games,
learning C-structures at collage,
learning 68000 assembly,
from Assembly to Visual Basic and Java,
starting at an insurance company and learning EDI,
X12 and EDIFACT
in EDI universe,
the fascination with EDI,
the beginners mind and Java Connector Architectures,
the EDI "hello, world",
starting to understand COBOL,
back to Java with WSAD and IBM WebSphere,
using JDBC, Servlets and Java Server Pages
(JSP),
using Java Batch processing (jbatch),
using Java Batch DSL features,
from WebSphere to Wildfly,
misusing WildFly as Tomcat,
from WildFly to MicroProfile
using smallrye,
JWT and OpenAPI committer,
reusing Java Bean Validation as openAPI metadata,
using jandex index for annotation scanning,
smallrye OpenAPI already uses Bean Validation
annotations,
JSON API is used by Ember,
JSON API is similar to odata,
JSON-API is generated from JAX-RS, JPA and Bean Validation,
JSON-API is used by EmberJs,
xlate,
RedHat OpenShift Streams for Apache Kafka
Michael Edgar on twitter: @xlateio

Jun 14, 2021 • 1h 10min
How Java WebSocket Implementation Happened
An airhacks.fm conversation with Justin Lee (@evanchooly) about:
C-64, the Run Magazine with source code,
summer olympics - the joystick destroyer,
coding "triangle with trigonometry" in Basic,
computer were like science fiction,
random access file in C-64 basic,
IBM PCjr BASIC,
writing American Football simulator,
starting Turbo Pascal,
learning Oberon and C,
NAG and fortran,
loosing a sub tree,
the Forth programming language,
starting Java on HP-UX machines,
starting with JDK 1.0.2,
the amazing Sun branding,
Software Development Lifecycle - SDLC,
writing software costs estimation in Java,
3D modelling in TCL/TK,
working with TogetherJ,
using vim professionally,
starting with Eclipse and JBuilder,
building systems for online grocery shopping in 1998,
using jhtml with Dynamo ATG,
building an own application server with own persistence,
using the blaze rules engine,
using Java Server Pages with Jasper compiler,
JSP was a weekend project,
JSPs could be sold SSR,
working on Glassfish and Project Grizzly,
implementing WebSocket in Java on application servers,
using Comet communication style with Atmosphere,
using GlassFish with grizzly for long polling,
writing unit tests for WebSockets in a Chrome client,
Tyrus took the Grizzly implementation as base,
Dany Coward wrote a Web Socket book,
SPDY and Bosh were the bases of HTTP/2,
the sticky session Web Sockeet problem,
using WebSockets for Java application servers clustering,
starting at Squarespace,
Squarespace used Java on the backed any MySQL / MongoDB,
fronted was implemented in YUI (Yahoo UI),
maintaining Morphia for MongoDB,
joining Red Hat and working on quarkus,
working on Quarkus MongoDB integration,
Quarkus Kotlin integration,
eventually and evancholy
Justin Lee on twitter: @evanchooly, Justin's blog: https://www.antwerkz.com

Jun 11, 2021 • 1h 11min
How Hudson and Jenkins happened
An airhacks.fm conversation with Kohsuke Kawaguchi (@kohsukekawa) about:
running Family BASIC on Nintendo,
learning C++, building abstractions,
growing up in Tokyo,
a Japanese keyboard,
selling shareware programs in high school,
writing a Text file viewer,
earning 5k per month as a kid,
PCs stores in Tokyo,
learning chinese,
Japanese vs. Chinese characters,
building software at university,
building an XML editor for XSL,
reverse transformation from XHTML to XML,
XML schema was lacking mathematical elegance,
starting at Sun Microsystems in California,
Sun didn't liked SOAP,
starting at J2EE / Java EE team,
working with James Clark on RelaxNG at Sun Microsystems,
implementing Java Architecture for XML Binding / JAXB,
Java Project Adelard,
Java and XML the evil book at JavaOne,
YAML vs. XML,
using JAXB for generating JSON,
working long hours in Tokyo,
working times at Sun Microsystems were almost vacations,
being a build breaker,
getting the idea for Hudson,
Hudson started as a leisure project,
Hudson - an executable WAR,
Hudson was based on the winstone servlet engine,
winstone is embeddable,
Hudson installation and administration was easy,
software was like another person in the team,
Hudson was like a British buttler,
writing args4j,
writing hk2,
exploring native Java integration capabilities,
working partially at Glassfish team,
being part of Oracle,
the forgotten developer at Oracle,
forking Hudson to Jenkins,
large corporations are not always rational,
leaving Oracle and joining CloudBees,
becoming a CEO of launchable,
starting launchable,
the confidence in code changes,
using ML to sort tests,
GraalVM can run Python,
Ruby is popular in Japan,
Kohsuke Kawaguchi on twitter: @kohsukekawa, Kohsuke on Wikipedia, and Kohsuke's website
Remember Everything You Learn from Podcasts
Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.