Patterns, Predictions, and Programming

Track: Java Platform
Abstract
Machine Learning Tools for Java Developers - VisRec, ChatGPT, etc "One of the most interesting aspects of the world is that it can be considered to be made up of patterns" - Norbert Wiener (1940s). We are entering a new and long-tail phase of software development with Machine Learning (ML). ML, a subset of AI, is the ability of a machine to produce accurate results for a particular problem without any explicit programming. These predictive results are derived from recognizing patterns in large data sets. We are effectively giving machines the ability to gain experience. With the new generation of “generative AI/ML” tools such as ChatGPT, DALL-E, Bard, Stable Diffusion, et al., this megatrend affects our applications, software tools, data structures, systems architecture, new hardware approaches, business processes, organizational interactions, enterprise strategies, government behavior, geopolitical strengths, ethics, data privacy, etc. In essence, ML is an inflection point for computing, enterprises, countries, humanity, and civilization. We’ll explore some basic ML use cases, take a look at JSR #381 (Visual Recognition for Java), dive into the ChatGPT API, show some demos, and then discuss what all this means for Java developers.
Frank Greco
Frank is a senior technology consultant and enterprise architect working on cloud and AI/ML tools for developers. He is a Java Champion, Chairman of the NYJavaSIG (first JUG ever), and runs the International Machine Learning for the Enterprise conference in Europe. Co-author of JSR 381 Visual Recognition for Java API standard and strong advocate for Java and Machine Learning. Member of the NullPointers. #STEAMnotSTEM