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

Nov 7, 2021 • 1h 31min
The Endless Loop of Frustration and Challenge
An airhacks.fm conversation with Nicolai Parlog (@nipafx) about:
Amiga 500,
booting into blue environment,
Settlers, dune game on Amiga,
writing the first line of Turbo Pascal at high-school,
starting with Java in 2001 with Applets,
the dining philosopher's problem with Java,
Karel the Robot in Java,
studying math is hard,
Temporal logic and formal verification,
the endless loop of frustration and challenge,
mathematicians and formulas,
solving an equation is refactoring,
learning complexity theory,
TLA+ and Lesley Lamport,
Amazon S3 formal verification with TLA+,
cost estimation in large scale projects,
java.awt.List vs. java.util.List
Kotlin vs. Java 17 productivity,
Java is the lowest possible denominator,
working for lichtblick - the renewal energy company,
implementing energy model for Fraunhofer in Karlsruhe,
linear programming with simplex in C,
dependencies come with a cost,
dependencies are liability,
starting to work for Oracle as Java Developer Advocate,
Nicolai Parlog on twitter: @nipafx, Nicolai's website: nipafx.dev

Oct 28, 2021 • 1h 8min
From Java EE to GlassFish and Back To WildFly
An airhacks.fm conversation with Jason Lee (@jasondlee) about:
C-64, assembly and Basic,
the talking ghostbusters game,
a DOS screen saver,
the Run Magazine,
buying a 286,
installing early version of PostgreSQL,
starting with Pascal, C, COBOL and PHP programming,
working for WalMart on Decision Support System (DSS),
providing support for cable modems,
the great US robotics modem,
36 kBs vs. 54 kbS speed,
building a FoxPro C++ system for a medical company,
starting with JBuilder and Java Swing 1.1 and JBCL,
porting C++ to Java,
the jbInit method,
Eclipse's refactoring was great,
Embarcadero and Inprise,
writing SOAP with Apache Axis,
first opensource contribution,
working with Federal Aviation Administration,
starting with Glassfish v2 and Java Server Faces,
Java EE and MicroProfile - productivity by constraints,
the annotation driven Java EE 5,
starting at Sun Microsystems to work for Glassfish v3,
working on Glassfish admin console,
starting at Netsuite and coming back to Oracle,
starting at RedHat on Wildfly,
working on WildFly MicroProfile integration,
adding telemetry support for WildFly 25,
Jakarta EE: integration vs. implementation,
WildFly runs on Java 17 and supports opentelemetry,
micrometer vs. MicroProfile Metrics,
airhacks.fm episode 140 with Erin Schnabel about Micometer, Metrics and Quarkus,
WildFly 26 will suport Jakarta EE 10,
bootable WARs,
Jason Lee on twitter: @jasondlee, Jason's blog: jasondl.ee

Oct 20, 2021 • 59min
SGI, NCSA Mosaic, Sun, Java, JSF, Java EE, Jakarta EE and Clouds
An airhacks.fm conversation with Ed Burns (@edburns) about:
Ti 99 4a with speech synthesis,
Secrets of the Rockstars Programmer book,
Apple 2c with word processing and laser mouse,
Superman 2, collecting half cents as rounding errors,
War Games and Tron,
the Logo programming language with a turtle,
enjoying playing trumpet,
marching band and a binary trumpet,
The Nullpointers Band,
Fourier Transforms for music quantification at high school,
just intonation and the key changes,
equal temperement on piano,
retuning the keyboard on the fly,
applying at Sun Microsystems,
Lighthouse Design and Objectivec-C,
working at Silicon Graphics and the nice O2 workstation,
working on NCSA Mosaic browser at NCSA,
learning Pascal and C++ at the university,
working on Common Client Interface on Mosaic Browser,
inperson conference system,
talent vs. grit,
grit over talent,
floyd marinescu started the theserverside.com,
the Spyglas Browser,
the SGI Cosmo and VRML,
SGI IRIX operating system,
commodity vs. boutique fights at SGI,
joining Sun's Lighthouse Design group,
building a Java-based productivity suite,
building a multi-dimensional spreadsheet: quantrix,
NextStep Appkits vs. Swing,
the AOL Sun-Netscape alliance,
OJI - Open Java VM Interface the SPI for Applets,
Project Panama - the new JNI,
the popularity of Struts was the motivation for JSF,
Craig McLanaham and Amy Fowler started to work on JSF,
JSF code name was moonwalk,
Hans Muller and the Swing Application Framework (JSR-296),
the Java Community Process passion,
IETF and W3C are like JCP,
"Innovation Happens Elsewhere" book,
JSF and Spring XML-based dependency injection,
ATG dynamo jhtml,
JSF 2.0 composite components,
JSF was a hot technology with multiple component implementations RichFaces, icefaces, PrettyFaces, Liferay, PrimeFaces and MyFaces,
the initial JSF target was page-based corporate apps,
the AJAX experience conference and Ben Galbraith,
Martin Marinschek from Irian,
Josh Juneau and the famous blog post,
building a proprietary Java-based docker orchestration framework on top of Apache Mesos at Oracle,
Java EE on Azure,
riding the crest,
Ed's journey from client to server to cloud
Ed Burns on twitter: @edburns

Oct 8, 2021 • 48min
Modules Are Needed, But Not Easy
An airhacks.fm conversation with Ondrej Mihályi (@OndroMih) about:
last episode with Ondrej: Productive Clouds 2.0 with Serverless Jakarta EE,
"Modularization, Monoliths, Micro Services, Clouds, Functions and Kubernetes" #151 episode with Matjaz Juric,
modules are useful, but the tooling is not easy,
using OSGi for User Interfaces,
hybrid Java / JavaScript UI,
build time and development time modularity,
frontend and backend separation is important,
business and presentation separation,
Boundary Control Entity (BCE) pattern is permissive,
strict modularization with WARs and JARs,
logical over physical modules,
JPMS for hiding internal implementation,
modules are more important in teams as contracts,
WARs as simple as AWS Lambdas,
kubernetes and readiness probes,
Elastic Beanstalk is similar to Payara Cloud,
Payara Micro optimizations for Payara Cloud,
redeployment without restarting the instances,
Payara Micro Arquillian Container,
hollow JAR approach and Payara Micro,
Payara Micro could support native compilation in the future,
Jakarta EE core profile and CDI lite,
native compilation for resource reduction,
Payara implements MicroProfile as early as soon,
Ondrej Mihályi on twitter: @OndroMih

Oct 1, 2021 • 1h 3min
Humans over Computers and Serverless JBoss on Azure App Service
An airhacks.fm conversation with Theresa Nguyen (@RockClimberT) about:
Apple II ES with blue screen and yellow font,
3h to install an OS on 386 machine,
enjoying minesweeper and Tetris,
playing frogger on a flashback Atari,
learning Pascal at high school,
learning how the brain works,
ambition, motivation, attitude and dedication,
computers had better keyboards, than typewriters,
enjoying Word Perfect,
humans over computers,
joining Caucho,
caucho is the home of Resin application server,
meeting at theserverside conference,
Jakarta EE, TomEE and MicroProfile,
Sun's Microsystem spirit at Microsoft,
the importance of opensource software,
standardization is freedom of choice,
Microsoft at JavaOne,
joining Microsoft in 2018,
enabling JBoss EAP on Azure,
the official Maven archetype from Microsoft,
quarkus JAX-RS resource as Java function,
JBoss EAP runs on Azure App Service,
Azure Service Bus is JMS compliant,
the episode 111 about Azure and JMS,
JBoss vs. Wildfly on Azure,
WildFly on virtual machines and scale sets,
serverless JBoss on Azure,
Java For kubernetes, j4k conference,
Theresa Nguyen on twitter: @RockClimberT

Sep 24, 2021 • 1h 3min
Kubernetes, KumuluzEE, MicroProfile and Clouds
An airhacks.fm conversation with Prof. dr. Matjaz Juric (@matjazbj) about:
about KumuluzEE and the Duke Choice award,
SOA had its problems,
jetty is the core of KumuluzEE,
Java EE fans building a lightweight runtime environment,
JavaOne rejection, then winning the Duke Choice Award in 2015,
KumuluzEE started with exploded deployments,
KumuluzEE supported parts of Jakarta EE and fully MicroProfile from the beginning,
now KumuluzEE support MicroProfile 3.3,
KumuluzEE created an own configuration framework before MicroProfile,
KumuluzEE supports etcd and consul,
live configuration updates are supported,
KumuluzEE listens to etcd changes,
layered configuration approach is supported,
KumuluzEE implements some MicroProfile APIs,
KumuluzEE is one of the fastest runtime,
quarkus is the main contender,
event streaming and GraphQL are the most interesting KumuluzEE features,
JPA-RS: JAX-RS mapping to EclipseLink / JPA,
kumuluzee-rest is similar to JPA-RS,
Remote Procedure Call (RPC) is supported with kumuluzee-rpc module,
RMI over gRPC,
sending classes over the wire is no more supported,
Apache Johnzon supports Java Record to JSON serialization,
MarshalledObject is great for agent implementation,
feature flags are a semantic extension of configuration,
KumuluzEE support feature flags with the kumuluzee-feature-flags module,
flagr provides feature flagging,
kubernetes with istio makes dynamic JAX-RS endpoint obsolete,
automation of canary release deployments,
KumuluzEE translates specific DSL configuration to istio configuration,
kumuluzee-fault-tolerance is MicroProfile compatible,
kumuluzee-logs sends logs to various logging frameworks and drivers,
energy trading with decentralised blockchain approach like ethereum,
episode 145 with Kevin Wittek about ethereum,
KumuluzEE is opensource,
Kumuluz Platform adds additional features,
the larger the module, the lower the overhead in the clouds,
Java should not compete with Python and Javascript,
Prof. dr. Matjaz Juric on twitter: @matjazbj and at University of Ljubljana

Sep 18, 2021 • 1h 14min
The Ingredients of GraalVM
An airhacks.fm conversation with Oleg Selajev (@shelajev) about:
the red glowing mic,
GraalVM is the runtime for your applications,
GraalVM is high-performance, embeddable and polyglot,
GraalVM comes with top tier Just In Time Compiler (JIT),
GraalVM ships as community edition and enterprise edition,
Twitter gains 10% throughput and performance improvement with GraalVM Community Edition,
GraalVM is a drop-in replacement,
GraalVM is based on openJDK builds,
the Jikes Java compiler was fast, but not always compatible,
Jikes was able to compile Java 5,
the dcevm project,
javac is written in Java,
javac can be compiled to native code,
Oracle Aurora JVM - early Java in the database,
Oracle AuroraVM - Java in the database,
GraalVM comes with better performance by maintaining the compatibility,
the different tiers of compilers,
GraalVM Enterprise Edition is currently part of the Oracle's Java subscription,
GraalVM Enterprise Edition compiler is smarter and better,
GraalVM supports Ruby, Python, JavaScript, R and WebAssembly,
Truffle provides an API for interpreter API for a non-JVM language,
with Truffle you can describe the semantics of your language,
Truffle specializes the interpreter to execute your program,
GraalVM already ships with several languages built-in,
GraalVM supports Ruby with its native extensions,
GraalVM is able to optimize multiple languages running in a single process,
GraalVM ships with Nashorn compatibility mode,
GraalVM supports modern Python,
WebAssembly can run on GraalVM,
GraalVM supports "BigNumber" types for JavaScript,
debug support is implemented via Chrome DevTools,
with GraalVM Espresso Java runs on Java,
GraalVM team at Oracle Labs is the bleeding edge resource of language research,
Java is well suited for language research,
Java BeanShell was a Java sourcecode interpreter,
Java runs on Java which runs on Java,
Truffle ships with sandbox-like isolation,
Espresso is Java on Truffle,
performance is relative,
Java on Truffle allows easier code reloading,
wasm runs on browsers and backends,
running wasm in a database,
the GraalVM team blog at medium,
Oleg Selajev on twitter: @shelajev, Oleg's youtube channel, the GraalVM team on medium medium.com/graalvm

Sep 9, 2021 • 1h 29min
Bash, Apple and EJB, TomEE, Geronimo and Jakarta EE
An airhacks.fm conversation with David Blevins (@dblevins) about:
Code Generation with bash,
bash is your best friend,
scripting as documentation,
learn first, then automate,
an opportunity to work on an EJB container,
working on EJBOSS,
working with the great Richard Monson-Haefel,
co-founding openEJB with Richard,
bluestone and gemstone servers,
exolab was an incubator,
openJMS, openEJB and castor,
working with Apple to integrate openEJB with Apple's WebObjects,
openEJB on Apple's WebObjects box,
from experience to cash,
the concept of isolated containers in openEJB,
Dain Sundstrom wrote CMP for JBoss,
Rickard Öberg started at openEJB for two weeks,
creating Geronimo in 2003 as competitor to JBoss,
announcing Geronimo at theserverside.com,
Geronimo was over engineered,
good idea at a bad time is a bad idea,
Convention over Configuration vs. explicit configuration,
openEJB's Java Serialization was faster than WebLogic's T3,
Geronimo's configuration was not portable,
joining gluecode,
gluecode was sold to IBM,
Jason van Zyl was the creator of Maven,
Jason van Zyl created Sonatype,
jelly - the executable XML,
Maven 2 rollout was tested with openEJB,
switching from codehouse to Apache,
600 people were working on WebSphere,
Dan Allen was working on arquillian,
Arquillian used internally openEJB,
JBoss 7 became Wildfly,
creating TomEE after JavaOne 2010,
TomEE stopped consulting,
tomitribe provides support for TomEE, Tomcat, ActiveMQ,
TomEE 9 starts in 2 seconds,
TomEE passes the TCK with 64MB RAM,
TomEE lost access to TCK in 2013 before Java EE 7,
TomEE got access in December 2019,
TomEE is working on MicroProfile 4.0,
TomEE uses Apache Johnzon JSON-P,
TomEE uses Apache projects to implement Jakarta EE and MicroProfile specification,
TomEE uses BeanValidation for JWT validation,
using BeanValidation for authorization with custom data in JWT,
Tribestream - the API Gateway,
David Blevins on twitter: @dblevins and David's company: tomitribe

Sep 5, 2021 • 1h
Java, Blues and Tomitribe
An airhacks.fm conversation with David Blevins (@dblevins) about:
Atari 800, then Atari 2600,
playing Pitfall!,
enjoying Apple II,
enjoying the M.U.L.E. game,
the creative art kid,
working at Public-access station,
making special effects with Amiga 500,
the Monday the 13th horror movie,
specializing on make-up,
halloween was a working day,
the amazing B.B. King,
learning blues,
studying psychology,
going to Ecuador,
going to Brown College in Minnesotta,
hitting a truck with a mini van,
a nice truck driver,
starting the iWeb company,
working with Apple,
developing websites with HTML and JavaScript,
80k salary for a Java developer in 1998,
learning Java 1.0 in a week,
working as Java consultant,
working on Visual Basic and Java integration,
writing a web server,
hotsite, Silverstream, Jigsaw,
working with NorthWest Bank with Swing and CORBA backend,
using visigenics ORB,
the power of source code,
using com.sun.swing,
the cancellation of a 35 million project,
writing JDBC drivers for PostgreSQL,
generating code in bash and Pearl,
David Blevins on twitter: @dblevins and David's company: tomitribe

Aug 27, 2021 • 1h 4min
Serverless Kubernetes without YAML
An airhacks.fm conversation with Patrik Dudits (@pdudits) about:
Sparc Workstation, then 486 computer,
the Camel book at highschool,
inspired by Kraftwerk,
a Java Demo CD,
CGI coldstart project,
the XML publishing pipeline--the Apache Cocoon project,
Xerces and Xalan with plain Java,
the rotating cube applet,
the Camel Book is about the Pearl language,
from Pearl to Java,
the "Write Once, Run Everywhere" cheating,
working and learning in Kosice,
building websites with Apache Cocoon,
developing ABAP at SAP,
ABAP and consistency,
switching from ABAP to Java,
using the Netweaver Application Server,
Web Dynpro for web development,
code generators rarely work in practice,
low code and code generation,
building electric vehicle charging station management system,
OSGi, ActiveMQ and GlassFish 3,
Glassfish ships with monitoring capabilities and admin console,
replacing OSGi modules with EARs for faster starts,
using JCA for socket communication,
Raft and Paxos leader election pattern,
blue green deployments with application servers,
starting at Payara,
attending airhacks.com workshops,
starting at Payara,
working on profiling, implementing Jakarta EE TCK build,
starting to work on a cloud application server,
an application server as kubernetes operator,
Payara admin server starts Payara Micro instances,
payara cloud without YAML,
namespaces, projects and stages,
applications in the same namespace can easily communicate with each other,
Payara Cloud monitoring and metrics,
Payara Cloud runs on AKS,
exposing business metrics to Payara Cloud,
custom DNS name registration,
working on Payara Cloud API,
Payara ships with openID connector
Patrik Dudits on twitter: @pdudits, Patrik's blog: https://pdudits.github.io/
Remember Everything You Learn from Podcasts
Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.