#Java's
How To Write Great Java Apps With LLMs and Agents

#agents #ai #conference #java #javaone #llm #oracle

youtube.com/watch?v=MMI...
How To Write Great Java Apps With LLMs and Agents
Java’s open ecosystem—specifications, source code, JSRs, JEPs, mailing lists, MicroProfile, and Jakarta EE—made it an ideal training ground for LLMs. These models learned more than syntax: they absorbed Java’s patterns, idioms, and design philosophy. In this live-coding session, we’ll explore how to put that knowledge to work with short prompts and rapid iterations. Topics include: Engineering prompts that follow Java conventions and best practices Using agents for autonomous code generation and refactoring Maintaining architectural consistency with Spec-Driven Development Improving code incrementally with agents Sharing best practices through instructions, rules, and steering files Developing a “Prompt Specific Language” (PSL) for consistent code generation We’ll also generate idiomatic Java 25 code that is both machine-readable and human-friendly. Presented by Adam Bien at JavaOne 2026 (CA, March 2026). All https://www.youtube.com/playlist?list=PLX8CzqL3ArzUMVSzm-z_-if8BIB55EGl4 talks. Adam's JavaOne 2025https://youtu.be/J1YH_GsS-e0?si=jGY3AqM5dz9yVzbQ Tags: #Java #AI #JavaOne LRN1064 18 AUDI
youtube.com
September 27, 2026 at 3:26 PM
Just-In-Time Compilation for Java Performance: Recent and Ongoing Improvements

Great talk about recent improvements... aka performance for free if you upgrade your JDK.

www.youtube.com/watch?v=h45c...
Just-In-Time Compilation for Java Performance: Recent and Ongoing Improvements
Just-in-time (JIT) compilation within the JVM is essential to Java's performance and plays a central role in ongoing OpenJDK projects such as Valhalla, Leyden, and Panama. JIT compilation is…
www.youtube.com
September 27, 2026 at 12:56 PM
So in one of the pale garden patches, Mojang decided to add some parity and make the suspicious stews' effects consistent with the bedrock.

...which are far worse than the Java stats..

1st of all!
Wouldn't it have made more sense to use Java's stats, when BE is KNOWN for worse passive regen!?
2/7
September 26, 2026 at 4:40 PM
Java's birthday will be in 1 days
September 26, 2026 at 3:21 PM
Java's popularity strikes again: no seats left for 'Architect-Grade Java with LLMs' at MUC airport. Join the waitlist, I'm already scaling the room vertically.

#java #airhacks #MUC
September 26, 2026 at 10:05 AM
Yeah the logic doesn't work. The only "evidence" there is is Bedrock getting custom dimension support, but they get things for the purpose of add-ons too and Java's had that for years and it didn't mean anything then.
September 26, 2026 at 12:30 AM
September 25, 2026 at 3:41 PM
𝟭𝟬 𝗧𝗵𝗶𝗻𝗴𝘀 𝗜 𝗛𝗮𝘁𝗲 𝗔𝗯𝗼𝘂𝘁 #𝗝𝗮𝘃𝗮 – 𝗦𝗲𝘀𝘀𝗶𝗼𝗻 𝗯𝘆 𝗔𝗱𝗲𝗹𝗲 𝗖𝗮𝗿𝗽𝗲𝗻𝘁𝗲𝗿 ☕

At #SAG2026, Adele Carpenter takes a critical yet constructive look at some of Java’s most frustrating features – and what developers can learn from them. 💡

Learn more 👉 t1p.de/ijhk8

#SoftwareDevelopment #SoftwareArchitecture #SAGconf
September 24, 2026 at 12:51 PM
Thank you. I survived by closing my office door and using my phone speaker per Java's suggestion lol
September 24, 2026 at 3:19 AM
time for bnpm better node package manager that tries to be what pnpm was when it took node world by storm, only to also then rewrite it in ocaml and add support for java's maven in it
was curious what the various increments were, so here's the pnpm size bumps labelled!
September 24, 2026 at 12:52 AM
In Java, domain modeling almost always means object orientation. But that's no longer the only good option.

In his talk, Fabian Walther shows how modern Java's functional features give you another way to model your business domain. 🚀

📅 12 Nov, 9 AM - 6 PM CET
📍 Online

👉️ technologyday.innoq.com
September 23, 2026 at 6:30 AM
HAPPENING TONIGHT: ImageOut's Volunteer Experience Committee invites current and prospective volunteers to stop by our Volunteer Drop-in Event on the evening of Tuesday, September 22 at Java's Cafe (16 Gibbs St. Rochester, NY 14604), 5:30-7:00pm…
September 22, 2026 at 9:44 AM
Bind Java's JCA/JCE to a hardware token via the SunPKCS11 provider. Config file with name, library, slot, attributes. Then KeyStore.getInstance("PKCS11") exposes the token's https://www.valtersit.com/vault/configure-java-sunpkcs11-provider-to-use-a-hardware-token-f9ff54/
#java #pkcs11 #ValtersIT
September 22, 2026 at 1:20 AM
Got some nice deep dive blog on the topic in April though: blog.jetbrains.com/platform/202...

That'd be nice to have some updates for OpenJDKs to run wayland too.
From Java to Wayland: A Pixel’s Journey - The JetBrains Blog
What happens when we try to draw a single pixel in Java? The rendering triggers a sophisticated and multi-layered process. It begins within the high-level frameworks of Java's Abstract Window Toolkit
blog.jetbrains.com
September 21, 2026 at 9:32 PM
But overloading is an eye-of-the-beholder thing.

Consider Java's triangle of overloads:

class Lists {
public static <T> List<T> of() {...}
public static <T> List<T> of(T a) {...}
public static <T> List<T> of(T a, T b) {...}
public static <T> List<T> of(T... all) {...}
}
September 21, 2026 at 6:03 PM
People have been pretty good at IEEE math for a few decades now. In scalar code at least, the widely-understood default mode for doing FP looks like Java's strictfp, with the only glitches at (1) multiply-and-add and (2) conversions. We owe a lot to Java for this.
September 20, 2026 at 3:57 PM
Since I learned what this episode is about I was patiently waiting for video release. Learned about Java's culture in uni, and it's something to BEHOLD.
September 18, 2026 at 4:53 PM
Leave the Class Path in the Rearview Mirror
_Introducing composable, module system native and agent friendly command line tools for modern Java development_ By Danny Thomas, JVM Ecosystem Team Recent work on the Java language to pave the on-ramp has made it easier than ever to start a Java program and evolve it using the full language and platform. At the end of that on-ramp lies Java’s mature build and dependency management ecosystem, capable of carrying software to enormous scale and complexity. That ecosystem reached its maturity by developing strong models for projects, dependencies, and builds. When the Java Module System arrived, those models were already serving developers exceptionally well. The module descriptor consequently became just another description of the project to keep in agreement. We’re excited to announce a preview of ja and its family of composable tools, that build on the capabilities of the Java Module System to provide a modern command line development experience for Java. We take the module descriptor and make it a complete description of a project, with dependency versions sitting naturally beside its requires directives and module metadata provided through documentation tags: /** * @mainClass com.example.application.Main */ module com.example.application { requires com.example.framework; // @1.2.3 } Combined with command line ergonomics you’re used to in other languages, creating and consuming Java modules has never been easier. ### Composable Tools Java developers have long been exceptionally well served by graphical tools. An IDE formats source, navigates between declarations and usages, presents API documentation, and maintains a compiled view of the project. That experience has been so complete that Java has had less need to expose the same capabilities through small, composable command line tools. Those gaps become quickly apparent when coding agents work with the Java language, with agents frequently struggling to locate dependencies, documentation and sources. ja only provides command line ergonomics and tool orchestration, each feature is underpinned by a standalone tool. You don’t need to adopt ja to get the benefit of these tools, you can compose them in any way you choose: * jig performs module version resolution, compilation and assembly, outputting standard module system arguments for use with other tools. It is also the bridge to and from Maven repositories providing a standalone module proxy and publishing commands * jfmt formats source using the Code Conventions for the Java Programming Language, adapted for the modern Java language. Avoids the very common whitespace, indentation, import ordering and qualified class references introduced in agent written code * jist provides source aware symbol search, providing a grep style interface for understanding class files and their associated sources. Gives coding agents access to symbols and sources without indexing, LSPs or MCPs while interoperating with other build tools via an argument file contract * jdocserver serves locally browsable API documentation These projects use the tool discovery and execution capabilities of the platform, and are intended to be installed in your JDK along with the standard tools. They all implement Tool or ToolProvider, allowing them to be run in process. This is also the tool discovery and execution model for ja. There we use OptionChecker and optional custom metadata to discover which module system options are supported so it can resolve the arguments on behalf of the tool. This provides a seamless transition from your source path modules to the standard JDK tooling such as jdeps, jlink and jshell. ### Maven as a foundation In a recent survey of the 1,000 most popular artifacts on Maven Central, just 232 had explicit module definitions and another 248 declared automatic module names. The remaining 520 expressed no Java module name opinion. The module system also makes no distinction between namespace and module name, so module-first tooling requires a solution to module naming and location in existing repositories. Fortunately, Maven Central already gives published artifacts a verified namespace. Publishers prove control of reverse domain group IDs, reflecting Sonatype’s long standing case for namespaces in public repositories. We use these conventions to establish a canonical Maven module coordinate, paring a verifiable DNS namespace with the complete module name, for example pkg:maven/com.netflix/com.netflix.tools.ja. For existing modules, authors choose to publish a single Maven relocation pom at the canonical coordinate, to allow for discovery of the original coordinate. When neither are available, candidates are walked from the root of the namespace using common Maven artifact conventions inferring coordinates from module names. We also bundle a short list of aliases for the most popular modules that don’t use a reverse DNS module name, but we suggest authors should always namespace their modules. The module proxy in jig presents resolved modules using the filename based conventions for module naming, making even automatic modules without stable names safe when used with these tools. These conventions and location strategies allow the majority of existing artifacts to be discovered using only the module name and version. ### Integrity by default ALL-UNNAMED has become unfortunately common in Java access options, because of the heavy use of the class path. It hides the source of the technical debt that applications are incurring by allowing such access and becomes increasingly consequential as Java moves toward Integrity by Default. For example, Preparing to Make Final Mean Final asks applications to explicitly authorize the modules allowed to mutate final fields. We allow runtime access requirements to bedeclared as module metadata and carried with the module descriptor throughout the module’s lifecycle. For example a library may record the access it requires: /** * @enableFinalFieldMutation com.example.framework */ module com.example.framework { } However, the consuming application remains in control and must explicitly authorize the framework, for it to be available at runtime: /** * @mainClass com.example.application.Main * @enableFinalFieldMutation com.example.framework */ module com.example.application { requires com.example.framework; // @1.2.3 } The command line interface for ja allows the dependency and authorization to be added together: ja require com.example.framework@1.2.3 \ --enable-final-field-mutation com.example.framework Without that authorization, dependency resolution fails with an unsatisfied access requirement. Native access follows the same model through @enableNativeAccess and qualified exports and opens are also supported. Module integrity is ensured by persistent hashes of resolved binary dependencies in a module-info.hash file, sequent resolution verifies those hashes and rejects an artifact that has changed. We also take a step further than the recent improvements to annotation processor security by treating annotation processing as an explicit code generation step. The resulting sources are alongside regular module source, making them visible in code review and allowing a module to be assembled without executing generator code. ### Make modules your default We think every Java project should be modular, regardless of the build tool you’re using. If you’re a library author producing automatic modules, we’d encourage you to avoid split packages and produce explicit modules. You can get started with our tools today with our installation guide. * * * Leave the Class Path in the Rearview Mirror was originally published in Netflix TechBlog on Medium, where people are continuing the conversation by highlighting and responding to this story.
netflixtechblog.com
September 19, 2026 at 1:41 PM
Java’s Maturity Gives It A Strong AI Advantage Java’s age has long been both its strength and its drawback. In 2026, that age.... @thecosmicmeta.com

https://u2m.io/wObkY33B
Java&#8217;s Maturity Gives It A Strong AI Advantage
Java’s age has long been both its strength and its drawback. In 2026, that age is less about technical debt
thecosmicmeta.com
September 17, 2026 at 10:16 AM
[Personal Art] - Javamimi and Mimi-vee
So~ I finally finished the picture I had done of Mia with Java's form (thanks to @nachan.bsky.social for his art piece that allowed this one <3) so here ya go, Java mimi (left) and Shiny Eevee Mia form (right). Hope y'all enjoy, now back to work on demon girl.
September 16, 2026 at 4:32 AM
ONE WEEK AWAY! ImageOut's Volunteer Experience Committee invites current and prospective volunteers to stop by our Volunteer Drop-in Event on Tuesday, 9/22 at Java's Cafe (16 Gibbs St.), 5:30-7:00pm. Learn more about us, the 2026 LGBTQ+ Fall Film Festival, and year-round volunteer opportunities.
September 16, 2026 at 1:39 AM
The lingering split: does Java's slow, conservative absorption of language features protect massive codebases from bloat, or is relying on third-party annotations for basic ergonomics just rationalizing an outdated foundation? #coding 4/4
September 16, 2026 at 12:00 AM