talks

Juju Does Everything. Here Is What That Is Like.

Why Juju's relation protocol beats Terraform, Ansible, and Helm at wiring services, and what running it in production at Canonical looks like.

Two weeks ago I flew to Taipei to give a talk at UbuCon Asia 2026, held alongside COSCUP at National Taiwan University of Science and Technology (NTUST). The session was called “Juju Does Everything. Here Is What That Is Like.” and it was my attempt to answer a question I get asked a lot at work: why does Canonical still use Juju when everyone else has settled on Terraform, Ansible, and Helm?

Short answer: because none of those three tools talk to each other, and Juju’s whole reason for existing is the gap where they meet.

The talk, at a glance

The Cloud and Infrastructure track room at NTUST, set up before the talk The room at NTUST, shortly before doors opened.

On stage at NTUST, opening the talk with why Juju exists Opening with the question everyone actually came to hear answered: why Juju, when Terraform, Ansible, and Helm already exist.

The takeaway

Juju is operator knowledge, written down as code instead of trapped in someone’s head. The relation protocol solves a problem the rest of the stack does not even attempt, but that power comes with a debugging model that stays opaque until you know exactly where to look. My goal for the talk was to hand the room that map: the mental model to trust Juju in production, and the commands to verify it instead of hoping.

Mid-talk at NTUST, walking through the relation protocol live demo Mid-talk, walking through the relation protocol with a live demo.

Resources

The audience during the Q&A session at NTUST The room during Q&A — genuinely good questions.

Taipei itself deserves its own separate post: the night markets, the boba tea logistics, and easily the best conference wifi I have used all year. For now, if you were in the room at NTUST, thank you for the good questions. If you were not, the slides above cover everything, minus the jokes.