Summary of Key Points
Rod Johnson, the founder of the Spring framework, has returned to the forefront after more than 20 years to create the open-source AI framework Embabel, which is designed to address the issues of "controllability, explainability, and audibility" in corporate AI agents. He makes a provocative statement: "This could be the last generation of frameworks chosen by humans." In the future, AI tools will gradually take over the task of selecting technical solutions for developers, eliminating the need for humans to manually pick and assemble technology stacks. Additionally, he offers several counterintuitive insights into corporate AI applications, such as opposing the blind conversion of Java code to Python for AI purposes and warning that AI coding agents could ruin code libraries. He also suggests using planning algorithms from video game NPCs to make AI agents more predictable.
I. The Return of the Spring Father: Why Now Create an AI Framework?
Rod Johnson's return is not a sudden shift in career; he is a "multidisciplinary expert" who transitioned from a music doctor to programming and redefined enterprise Java development with Spring 20 years ago. His comeback is driven by the fact that technologies like GPT-3/ChatGPT have made AI practical, but companies are facing significant challenges when integrating it into their systems:
- Executives advocate for AI across the board, yet teams embark on projects without clear business objectives.
- AI is often forced into existing systems, leading to isolations and incompatibilities with legacy Java-based infrastructure.
- LLM (Large Language Models) tools are used arbitrarily, resulting in uncontrolled and unauditable outcomes.
He had been experimenting with TensorFlow for the past two years and realized that corporate AI needed a framework that could seamlessly integrate LLMs with existing systems (e.g., Java) while providing structured behavior. Thus, Embabel was born.
II. Don’t Rush to Switch from Java for Corporate AI: Java Is the Better Choice
Many company leaders are urging their Java teams to switch to Python for AI projects, but Rod argues this is a mistake:
- Distinguish between two use cases: Data science (model training and fine-tuning) can benefit from Python, but corporate AI applications (integrating LLMs into business systems) do not require it. LLMs are essentially HTTP calls, and Java can initiate these calls just as easily as Python.
- Compatibility is crucial: 90% of corporate systems are built with Java (databases, services, code libraries), so using Java for AI applications allows for direct integration without reinventing the wheel.
- Embabel’s compromise: The core of Embabel is written in Kotlin, a more modern language, but it offers seamless compatibility with Java users. You can write Java code to use Embabel without encountering any awkwardness.
For example, a company in Australia used Java to automate 95% of form audits and achieved excellent results without switching to Python.
III. Is AI Coding Exciting? Be Careful: It Could Mess Up Your Code Library
Rod writes 95% of his code using AI, but he warns against letting it go completely out of control:
- AI is good at creating "one-off" code (e.g., UI prototypes), but when used for complex business tasks, it can lead to bloated and poorly designed code.
- His secret: Maintain control over the architecture by only allowing AI to handle the "execution details" and manually reviewing and modifying the resulting code. For instance, if AI assigns a fixed value, he will correct it by saying, "This should use the Strategy Pattern and be extracted."
- A common mistake in companies is that executives push for AI without a clear understanding of its benefits, leading to project failures.
IV. Embabel’s Advanced Technology: Using Game NPC Algorithms to Make AI Agents Predictable
Other AI frameworks (like LangChain) let LLMs make decisions on their own, which can be unpredictable. Embabel, however, uses the GOAP algorithm from video games (Goal-Oriented Action Planning):
- Plan like an NPC: For example, when auditing forms, GOAP considers the current state and determines the necessary steps (checking required fields, validating formats, calling LLMs for analysis), with each step having clear conditions (e.g., "You can’t proceed if required fields are missing").
- Predictability and explainability: GOAP is a dynamic planning algorithm, but every step is traceable, allowing you to understand why AI made certain choices and generating audit logs.
- Cost optimization: You can set costs for each step (e.g., expensive LLM calls), and GOAP will automatically choose the most cost-effective path.
Compared to LangChain, Embabel’s AI agents are more predictable and reliable for corporate use.
V. Will Future Frameworks No Longer Require Human Selection? This Could Be the Last Generation of Human-Chosen Frameworks
Rod believes that developers will not disappear, but the power to choose frameworks will shift to AI tools:
- Models will become increasingly powerful, and tools will automatically suggest the best frameworks and technology stacks.
- Why is he so confident? He has witnessed Spring evolving from a framework to an essential infrastructure component. Similar trends are now happening with AI tools, which are making decisions on behalf of humans.
- But do companies still need frameworks like Embabel? Yes, because they require predictability and explainability. Even if AI selects the frameworks, humans still need to ensure they meet these requirements. He jokes, "In five years, will people still write applications by hand? Maybe not, but Embabel would be the last generation of frameworks chosen by humans."
Conclusion
Rod Johnson’s return is not just about creating another AI framework; it’s about redefining the role of developers in the AI era. In the future, developers won’t need to write extensive code or select frameworks manually, but they must maintain control over the architecture and have a deep understanding of the business context. His views may not be universally accepted, but as the creator of Spring, his insights are worth considering for every company and developer. After all, he has already transformed the landscape of Java development; perhaps he will do the same for AI development.