Agentic Engineering & ToolingAgentic Engineering & Tooling
Conference50min
ADVANCED

10 boring reasons why Java is the best ecosystem for agentic development

The talk argues that Java’s “boring” strengths—types, tests, static analysis, mature builds, formatting, observability, and more—help control AI agents’ risks like hallucinations, non-determinism, and unmaintainable code. It maps 10 Java features to agent failure modes and ends with a practical agent-safe checklist.

talk.summaryAiDisclaimer

Ed Burns
Ed BurnsGitHub

talkDetail.whenAndWhere

Friday, October 9, 11:50-12:40
TBA 4
talks.roomOccupancytalks.noOccupancyInfo
talks.description
I was about ten years into my Java career when I had spoken at enough conferences, and befriended enough speakers, that my sense for the hype cycle had been sharpened by the collective skepticism of the speaker jet-set. That was two decades ago. We've all heard the latest hype about what AI agents can do well. Less hyped is what can go wrong: non-determinism, DRY violations, hallucinated APIs, token cost, unreviewable code, and code reviews that start to improve the code, only to keep going until the code is actually broken.

This talk makes the case that it's the time-honed boring things about Java that keep the agents honest. Successful agentic development maximizes agent strengths — speed, breadth, fearless exploration, tolerance for boilerplate — while backstopping their weaknesses: non-determinism, dependency sprawl, inconsistent error handling, and code that works but nobody wants to maintain.

Here are the 10 boring reasons:
1. Type system
2. Testing ecosystem
3. Backwards compatibility culture
4. Deep static analysis
5. Build system maturity and dependency management
6. Code formatting and style enforcement
7. Virtual threads and structured concurrency
8. Observability stack
9. JVM performance tuning
10. Breadth of deployment options

For each, I'll show the specific agentic failure mode it addresses. I'll close with a practical checklist for making your Java development process agent-safe, and tie it up with the message that to move forward, you have to go back.
observability
java
agents
testing
talks.speakers
Ed Burns

Ed Burns

GitHub

United States of America

Ed Burns is currently Principal Architect on the Java Tooling and Experiences team at Microsoft. In this role, Ed will help make Azure the best place for Enterprise Java. Prior to joining Microsoft, Ed was a Principal Member of the Technical Staff At Oracle. While there, Ed was the specification lead or co-lead for JavaServer Faces, the standard Web Application Framework for Java EE, and for Servlet, the standard HTTP API for Java EE. Ed continued in these roles from his work at Sun Microsystems, Inc. In these roles, Ed lead a team of web experts from across the industry in developing JavaServer Faces and Servlet Technology through the Java Community Process and in open source. His areas of professional interests include web application frameworks, AJAX, reducing complexity, test driven development, requirements gathering, and computer supported collaborative work. Before working on JavaServer Faces, Ed worked on a wide variety of client and server side web technologies since 1994, including NCSA Mosaic, Mozilla, the Sun Java Plugin, Jakarta Tomcat, the Cosmo Create HTML authoring tool, and the web transport layer in the Irix operating system from Silicon Graphics.
Ed has published four books with McGraw-Hill: JavaServerFaces: The Complete Reference (2006), Secrets of the Rockstar Programmers: Riding the IT crest (2008) JavaServer Faces 2.0: The Complete Reference (2010) and Hudson Continuous Integration In Practice (2013). To learn more about his books or projects, you can visit his website at <http://ridingthecrest.com/> or Amazon Author Page.
Ed has a Bachelor of Computer Science degree from the University of Illinois at Urbana-Champaign. While at UIUC, Ed took a minor in Germanic Studies and worked for IBM in the co-op program, where he first acquired a fondness for computer history by working on System 370 Office Software.
Ed is a frequent keynote speaker at international industry conferences, having presented many times at Oracle's JavaOneSM conference, given keynote addresses at Javaland, the JAX conference in Mainz, the W-JAX conference in Munich, Germany and the Globalcode Developer's Conference in São Paulo, Brazil, and the JSFDays conference in Vienna Austria. In addition to keynotes, Ed has given technical sessions at numerous international Java conferences including Javapolis, Jazoon, JAX-India, TheServerSide.com Java Symposium, No Fluff Just Stuff, the Ajax Experience, JAOO, and others, and also has spoken at many Java User Group meetings. A complete list of Ed's conference speaking experience is available at <http://purl.oclc.org/NET/edburns/speaking-engagements/> Further information and blogs may be found at <http://purl.oclc.org/NET/edburns/>.