Chris Heilmann, Daniel Cranney & Rick Ossendrijver
WeAreDevelopers LIVE - GraalVM in action, Static Analysis insights and more
A misconfigured business rule created an infinite loop and took down our system. Here’s how our GraalVM platform recovered to safely handle 37 million daily evaluations.
#1about 9 minutes
Introducing Picnic's tech-driven grocery delivery model
Picnic's engineering approach involves a custom Java platform, automated warehouses, and a proprietary last-mile delivery system to optimize online grocery shopping.
#2about 13 minutes
Discussing modern web development news and trends
A review of recent industry news covers Java 25's AI capabilities, AI integration in browsers, the problem of application bloat, and essential modern CSS features.
#3about 4 minutes
Exploring creative and nostalgic web projects
A look at fun and interesting web projects, including the revival of LimeWire, classic SGI 3D demos running in the browser, and a game based on CAPTCHA puzzles.
#4about 7 minutes
Highlighting useful developer tips and tools
A roundup of developer resources includes a look at JavaScript's nullish coalescing assignment operator, new CSS learning modules, and a self-hosted photo management application.
#5about 7 minutes
The business case for a self-service rule engine
Traditional development cycles for business logic are slow and create bottlenecks, leading to the need for a platform where business analysts can implement their own rules.
#6about 7 minutes
Building a polyglot rule engine with GraalVM
Picnic's rule engine uses the GraalVM Polyglot Engine to allow analysts to write business logic in Python or JavaScript that runs directly on the Java backend.
#7about 7 minutes
How GraalVM's Context and Engine enable polyglot execution
A technical overview explains how the GraalVM Engine manages long-lived resources and shared code, while the Context provides a sandboxed runtime for executing individual rules.
#8about 8 minutes
Achieving interoperability between Java and guest languages
GraalVM Proxy Objects and Jackson introspection are used to create a translation layer, making Java DTOs accessible in a native way within Python and JavaScript rules.
#9about 4 minutes
Production insights and the 'cheese paper incident'
The rule engine handles millions of daily evaluations, but a recursive rule known as the 'cheese paper incident' highlights the need for robust guardrails and monitoring.
#10about 4 minutes
Key lessons learned and a successful loyalty program use case
Building a successful self-service platform requires extensive tooling, clear ownership, and analyst training, as demonstrated by the rapid implementation of a complex loyalty program.
#11about 7 minutes
Q&A on rule engine security and analyst training
The discussion covers how the GraalVM context builder enforces security, the preference for Python among analysts, and how a tech academy provides necessary training.
Related jobs
Jobs that call for the skills explored in this talk.
Dev Digest 214: Claude Is Leaking, GitHub Is Listening & Axios Hacked!Inside last week’s Dev Digest 214 .
🕵️ Claude source code leaked, analysed and re-written in 2 days
🐙 GitHub auto-opts users into feeding their code to train their AI
🌐 Pretext shows how to show complex text rendering in the browser
🤖 How to securin...
Daniel Cranney
Dev Digest 213: Petrol Prices, Agentic Workflows, AI Skills and CODE100!Inside last week’s Dev Digest 213 .
🤫 Don’t tell your LLM that it is an expert
👻 AI generated code is invisible
🔄 Learn about agentic workflows
🛡️ Linux Foundation sponsors fight against AI slop
🦠 1M users infected by Chrome extension
🫃 The why of J...