Speaker Details

Mario Fusco
IBM

Mario is a senior principal software engineer at IBM working as Drools project lead. Among his interests there are also high performance systems and generative AI, being an active contributor of widely adopted projects like Quarkus and LangChain4j. He is also a Java Champion, the JUG Milano coordinator, a frequent speaker and the co-author of "Modern Java in Action" published by Manning.

View
Behavioral Software Engineering
Conference (BEGINNER level)
Banquet

According to the traditional economic theory, markets are fully efficient and humans operate in them in a rational way. In the late 70s Daniel Kahneman and Amos Tversky started disproving this efficient markets hypothesis, contrasting the consistently logical Homo Economicus (Econ) they depicted, with the more realistic Human who takes decisions based on his questionable points of view. Doing so they gave birth to the study of the psychological factors involved in the making of these decisions, called Behavioral Economics.

The same flawed reasoning also impacts other fields like software engineering: we cannot behave as cold Econ when spending or investing our money, or as rational Engeen when coding. We are humans and this inevitably influences our choices.

The anchoring effect and the availability bias affect how we benchmark and evaluate the performances of our programs. The pro-innovation and bandwagon biases drive our technical decisions, making us to blindly follow hypes and gurus. The not-invented-here syndrome pushes us to create homemade tools instead of using de-facto standards. The framing effect makes us solving the same problem in different ways, depending on how it is presented.

During this talk we will go through these and other heuristics and shortcuts used by our brain, as found by behavioral economists in almost 50 years of research, and examine them in the context of software engineering, discussing their consequences on the quality of our work.

More
View
Build your own Java-powered Agentic Apps
Hands-on Lab (INTERMEDIATE level)
MC 3

You’ve likely heard it everywhere lately: “This is the year of Agentic AI”!! Well, then why not roll up your sleeves and try creating your own Java-based Agentic AI app?

Thanks to the ease of use and superb developer experience of Quarkus and the nice AI integration capabilities that the LangChain4j libraries offer, it becomes trivial to start working with Agentic AI.

In this session, you’ll explore a variety of Agentic AI capabilities. We’ll start by creating a simple AI client to interact with an LLM. We’ll then explore how we can make this app “agentic” by adding a variety of agentic capabilities, such as local function calling, MCP, Agent2Agent, and more.

In addition, we’ll also try out different techniques and patterns to get your LLM leveled up to leverage these Agentic capabilities. We’ll also attempt to show that agents are in fact not always needed, and show alternative patterns to accomplish AI tasks.

Come to this session to learn how to build Agentic AI applications in Java from the experts and engineers actively working on Quarkus AI and LangChain4j. This is also an opportunity to provide feedback to the maintainers of these projects and contribute back to the community.

More

Searching for speaker images...