No recent posts
Pixel Canvas is a real-time collaborative canvas that I’m building as a learning project to better understand Elixir and the OTP platform. I chose this as a use-case that is easy to understand and test, and has high-throughput low-latency requirements.
Because this is a project meant to help me deeply understand the building blocks of OTP, I decided to approach it with a no dependencies approach. This means:
During this process, I’ve been refining an AI-based learning framework. I wanted to leverage Claude as a mentor to help me along the way, but I set a hard rule that I wouldn’t let the LLM write any of my application code. The first commit in this project includes a CLAUDE.md that directs the agent to NEVER make direct code changes. At a high level, I directed Claude to:
This has been like a more interactive codecrafters.io - having an expert available to explain tradeoffs and catch mistakes in real-time has dramatically accelerated my learning.
I have set some very high goals for this project in an attempt to really stretch out into handling large-scale traffic. The numbers are intentionally unrealistic - I’m simulating worst-case sustained load like what an IoT aggregator might see:
Since I don’t have a bunch of IoT devices, the canvas gives me something people can easily interact with while I stress-test the underlying infrastructure.
This is a pretty ambitious project that I will probably be woodshedding for a while. As of 2025-10-22, I have accomplished the following:
The main bottleneck I’ve identified is process message buildup - I need to get from 70k to 1M msg/s (14x improvement) by addressing GenServer mailbox congestion.
No recent posts