-
Automata Arcade: Building a Playable Lab for Conway’s Game of Life
Automata Arcade turns Conway’s Game of Life into a live engineering arena. You do not just observe emergence, you shape it in real time. Live demo: automata-arcade.vercel.appGitHub: github.com/jclosure/automata-arcade The core idea: computation through conflict Game of Life is deceptively simple. Tiny local rules create global behavior that feels alive. In Automata Arcade, that behavior is…
-
Evo Lumen Life, creating a living ecosystem in the browser
How Evo Lumen Life evolved from shader experiment to continuous artificial-life ecosystem—with goals, outcomes, and future directions.
-
Wrapping C APIs in Python
When working in Python, there are times when you have cpu-bound processing and need real threads. This is usually when I reach for C. The interop between the languages is clean, minimal, and fast. I’ll give a quick example. First, the basic problem. How do you compose a C lib into your Python application? Fortunately,…
-
EventBusBridges for Great Good
The SockJS protocol provides a fast and reliable mechanism for providing duplex communication via Websockets. Vertx has a particularly nice implementation of this in the form of EventBusBridges, which make it easy to create secure communication pipelines between an HttpServer Verticle and a variety of polyglot SockJS clients via Websockets or fallback transports. Surprisingly, a Java-based…
-
How To Cleanly Integrate Java and Clojure In The Same Package
A hybrid Java/Clojure library designed to demonstrate how to setup Java interop using Maven This is a complete Maven-first Clojure/Java interop application. It details how to create a Maven application, enrich it with clojure code, call into clojure from Java, and hook up the entry points for both Java and Clojure within the same project.…
-
Think and Practice Testable Routing

Professional rewrite with original code samples and images restored, with clearer structure and cleaner technical prose.
-
Integrating JBoss Fuse ESB with Active Directory
As of the time of this writing, I could not find a documented recipe for using Active Directory as the authentication and authorization backend of JBoss Fuse ESB. Here’s a link to the official documentation on Enabling LDAP Authentication. It describes how to integrate with Apache Directory Server, which has some key differences from Microsoft…
-
Defining Log4j MDC Fields Declaratively With Spring
In this post, I’m going to show you how to extend the fields Log4j captures via MDC (Mapped Diagnostic Contexts). Specifically, we will add an additional field called “ApplicationId” that will identify the application that a given log entry came from. This is useful when you have many applications logging to a single persistence mechanism.…
-
Surfing the ReferencePipeline in Java 8
Java 8 includes new a Stream Processing API. At its core is the ReferencePipeline class which gives us a DSL for working with Streams in a functional style. You can get an instance of a ReferencePipeline flowing with a single expression. The MapReduce DSL has the essential set of list processing operations such as querying,…
-
Grokking JBoss Fuse Logs with Logstash
JBoss Fuse or more generally Apache ServiceMix ship with a default log4j layout ConversionPattern. In this article I will show you how to parse your $FUSE_HOME/data/log/fuse.log file, collect its log entries into Elasticsearch, and understand whats going on in the Kibana UI. First a few pieces of context. If you are not familiar with the…