Skip to content

Kip Cole on Time, Localization and Building Agenda

September 25, 2026 · 1 h 9 min

Show notes

The Navajo Nation inside Arizona observes daylight saving. The Hopi reservation inside the Navajo Nation skips it again. There's a corner of the Yucatan Peninsula that takes 20 minutes to drive through and costs you an hour on your sat nav. No compiler warns you about any of this.

Kip Cole has spent 10 years building the Elixir libraries that handle what software gets wrong about human reality: localization, time, and scheduling. CLDR/ex_cldr gave the ecosystem 173,000 Unicode characters and locale-aware formatting for numbers, dates, currencies, and units. Tempo remodelled time as an interval instead of an instant. And this week, Agenda shipped - the scheduling engine four years in the making.

Topics include:

  • why localization is not translation - the three things that go wrong in an e-commerce search before a single word has been mistranslated

  • the 10-year weekend project: how a localization library for Elixir turned into 28 packages and a full rewrite into Localized

  • why compile-time code generation with Elixir macros hit a wall - 1,000+ function clauses and quadratic compile times - and why moving to runtime fixed it

  • the astronomical algorithms scar: three years of learning a new branch of mathematics to implement calendar software the BEAM was never designed for

  • what Tempo makes explicit that everyone does by accident: time as an interval, not an instant

  • why scheduling is just set intersection over everyone's free and busy intervals - and why that single insight collapses almost every hard scheduling problem

  • how "sometime on Tuesday" is not a time but a domain error - and what Tempo forces you to say instead

  • Unicode version 18, 173,000 human language characters, and why most language ecosystems still can't represent them correctly

  • the difference between CLDR (the Unicode standard) and Localized (the Elixir implementation of it)

  • what Agenda actually ships this week and what's next

Recorded September 8th, 2026.

All episodes of BEAM There, Done That

Settings

Display

Language

Decides which stations you see first on the home page.

History

Recently played stations and episodes and your latest searches are only stored in this browser.

Notifications

A short notice when a podcast you follow has a new episode. Turn off single podcasts with the bell on their page.

Account

Save favorites – in the app and on the website.

Keyboard shortcuts

/
Open search
Space
Play or pause
← →
In the player: back 15 s, forward 30 s (episodes) · in a row: next tile
↑ ↓
In a row: target within the tile
Home / End
In a row: first or last tile
Esc
Close window or menu
?
This overview
Now playing

Go to station page

Play next

    Add episodes with “Play next” – they play after the current episode.