|
| 1 | +# Conference demo ideas — Elixir/BEAM conference, 2027 |
| 2 | + |
| 3 | +The organizers cultivate a "music festival" mood: light, relaxed, creative, energetic. The brief: a new project with a very cool demo and, ideally, audience participation. Four candidates, with a recommendation at the end. |
| 4 | + |
| 5 | +## 1. Emoji DJ — launch `localize_emoji` on stage |
| 6 | + |
| 7 | +Already on the roadmap ([plans/cldr-49.md](cldr-49.md) item 11): a sibling library for emoji search over CLDR annotations with boolean tag queries. Build it over the winter, launch it at the conference. |
| 8 | + |
| 9 | +**The demo.** A giant screen running a LiveView "emoji mixing desk". Type queries live — `face and (happy or mischievous) and not sad`, `"dark skin tone" and musician` — and the wall fills with results in the audience's languages, because annotations are per-locale. Then the drop: the audience joins by QR code, every phone becomes a search box, and matching emoji rain onto the big screen like festival crowd reactions, tagged with the locale that searched for them. |
| 10 | + |
| 11 | +**Why it fits.** Emoji are inherently light and playful; boolean query parsing is a satisfying little language-design story for a BEAM crowd; and the talk ends having shipped a real hex package the audience can add to a project before the next session. The October `ldml2json_v2` pipeline work is the data prerequisite, so the roadmap already points here. |
| 12 | + |
| 13 | +## 2. The Babel Wall — one app, every locale in the room, live |
| 14 | + |
| 15 | +A festival-themed LiveView app (lineup, set times, ticket prices, distances to stages) where each attendee joins on their phone and the app negotiates their locale from `Accept-Language` — the `best_match` story. The big screen is a wall of every locale currently in the room rendering the same screen: Arabic digits, Buddhist calendar dates, 24-hour vs 12-hour, currency symbol placement, km vs miles. |
| 16 | + |
| 17 | +**The demo moment.** "Let's add Japanese" — add one MF2 translation file live, hot-reload, and thirty phones in the room flip. Zero code change. Then a plural-rules quiz: everyone's phone shows "you have N messages" for their locale and the audience discovers together that Arabic has six plural forms. |
| 18 | + |
| 19 | +**Why it fits.** The strongest pure-Localize showcase — process-per-user locale is a genuinely BEAM-shaped design — and presence + PubSub with hundreds of phones is exactly what LiveView was born for. |
| 20 | + |
| 21 | +## 3. OTP Orchestra — the audience is the instrument |
| 22 | + |
| 23 | +Every phone that joins becomes a voice: a process emitting notes/samples, mixed through PubSub (or Membrane for real audio pipelines) into music played through the PA. Sections of the room get instruments by seating block; a conductor view mutes, solos, and layers the crowd. Latency compensation and back-pressure are the technical meat — GenStage as a rhythm section. |
| 24 | + |
| 25 | +**Why it fits.** Maximum festival energy — the room literally makes music together — and "a thousand processes are playing this song right now" is the most visceral BEAM demo there is. The localization tie is thinner (per-locale phone UI, note names per locale), so this trades maintainer authority for spectacle. Highest on-stage failure risk (live audio). |
| 26 | + |
| 27 | +## 4. The Great Collation Race |
| 28 | + |
| 29 | +Sorting as spectator sport. The audience submits words — names, band names, words from their languages — and the big screen animates the same list re-sorting live under different collations: default UCA, German phonebook, Swedish, zh-pinyin vs zh-stroke, numeric mode, backwards French accents. Bars slide past each other like a horse race; the audience bets on where "Öztürk" lands before each round. |
| 30 | + |
| 31 | +**Why it fits.** Collation is the most underexplained topic in software and the animation makes it instantly visible. Probably a 10-minute segment rather than a whole talk — which is why it composes well with ideas 1 or 2. |
| 32 | + |
| 33 | +## Recommendation |
| 34 | + |
| 35 | +**Idea 1 (Emoji DJ) as the spine, with idea 4 as a segment.** It is the only option that leaves a real artifact behind — a new library launched on stage, born from the existing roadmap — and emoji provide festival-mood visuals without manufactured whimsy. The participation mechanic is robust (worst case, people search emoji on their phones, which is already fun), whereas live audio has the highest failure risk. A successful talk doubles as `localize_emoji`'s launch day. |
| 36 | + |
| 37 | +## Timeline sketch |
| 38 | + |
| 39 | +* October 2026 — CLDR 49 cycle lands `ldml2json_v2` and the annotations data path (prerequisite). |
| 40 | +* Winter 2026/27 — build `localize_emoji` (package skeleton, normalizer, query DSL, LiveView demo shell). |
| 41 | +* Spring 2027 — talk outline, demo hardening (offline fallback, capacity test with simulated phones), collation-race segment. |
0 commit comments