Elixir Phoenix Guide v1.4.0: OTP, Oban, and Subagent Enforcement

What Changed

Released v1.4.0 of my Elixir Phoenix Guide plugin. Two new skills, three new hooks, and a fix for something that’s been bugging me: subagents ignoring the rules.

The Problem with v1.3.x

The plugin had five skills covering Elixir core, LiveView, Ecto, uploads, and testing. That’s solid for web layer code. But two big gaps remained.

No OTP guidance. GenServer, Supervisor, Task, Agent, ETS. These are core to any real Elixir application, and the plugin had nothing to say about them. Claude Code would write GenServers with blocking handle_call callbacks, skip supervision trees, or reach for Agent when a simple GenServer would do.

Read More

Elixir Phoenix Guide v1.3.0: Testing Essentials

What Changed

Released v1.3.0 of my Elixir Phoenix Guide plugin. This one is all about testing.

v1.2.0 built out four skills that cover Elixir patterns, LiveView, Ecto, and file uploads. What I didn’t have was anything for tests. You could open a _test.exs file and the plugin had nothing to say. That felt like a hole worth fixing.

The Problem with v1.2.0

The four skills worked well for production code but testing was just not covered. Claude Code would write a context module following strict patterns, then write the tests with no real guidance. The result was inconsistent test setup, missing edge cases, and assertion styles that made failures hard to read.

Read More

Elixir Phoenix Guide v1.2.0: From 8 Skills to 4 Essentials

What Changed

Released v1.2.0 of my Elixir Phoenix Guide plugin. This is a major restructuring: eight separate skills consolidated into four essential modules, each with enforced rules and real-time validation.

This isn’t a minor update. It’s a complete rethinking of how Claude Code should guide Elixir/Phoenix development.

The Problem with v1.1.x

In v1.1.x, I had eight skills covering different aspects of Elixir and Phoenix development. The structure worked, but created problems:

Read More

Elixir Claude Optimization v1.1.2: Better Skill Discovery

What’s New

Released v1.1.2 of my Elixir Claude optimization plugin. The focus: making skills easier to discover and use.

The Problem

In v1.0.0, Claude Code would often miss applicable skills. The “Use when” language wasn’t directive enough, and there was no systematic way to identify which skills applied to a task.

Result: Skills existed but weren’t being invoked consistently.

What Changed

New Skill Discovery System

Added a meta-skill called skill-discovery that provides a systematic checklist based on file types and task requirements. Think of it as a flowchart for skill selection.

Read More

My AI Tool Stack (January 2026)

The Stack

Here’s what I’m actually using day-to-day for Elixir/Phoenix LiveView development. Not what I tried once and forgot about.

Code Editing: Windsurf

What I use it for:

  • Primary IDE for Elixir/Phoenix development
  • In-editor AI assistance without context switching
  • Refactoring suggestions that understand Phoenix patterns

Why it stuck: Feels native. The AI suggestions understand Elixir idioms and Phoenix conventions. When I’m working on a LiveView component, it actually suggests LiveView-appropriate patterns, not React patterns.

Read More

Hacking My Rancilio Silvia: Using Stride to Manage a Complex Sensor Integration

The Setup: Modding a Rancilio Silvia

I’m hacking my Rancilio Silvia espresso machine with a Raspberry Pi Zero W running Elixir/Nerves. The goal? PID temperature control for better espresso. When I decided to add a TSIC306 temperature sensor, I knew it’d be tricky, but I didn’t know how tricky.

Here’s the thing about embedded systems work: you can’t plan what you don’t understand yet. And I needed some way to stay organized without drowning in project management overhead.

Read More