Just submitted a CFP to the Fediverse & Social Web track at @COSCUP 2026. The talk is titled I just wanted ruby annotations: writing in dead scripts on the living fediverse.
Here's the abstract:
Koreans used to mix hanja (漢字; Chinese characters) into Korean prose, much as Japanese still mixes kanji and kana. The style is called Korean mixed script (國漢文混用體). Almost nobody writes this way anymore. I do.
When I wanted to post this way on the fediverse, I ran into a small but stubborn problem:
<ruby>annotations, the HTML feature that puts pronunciation guides above or beside characters, were stripped by the major servers I tried. I filed an issue against Mastodon. It sat there for a long time. At some point, “maybe I should run my own server” somehow became “maybe I should implement ActivityPub myself.”ActivityPub is not simple. JSON-LD alone has several ways to say the same thing. Then come HTTP Signatures, WebFinger, NodeInfo, inbox forwarding, and the small incompatibilities that only become obvious when Mastodon and Misskey disagree. Before building the server I wanted, I built Fedify: a TypeScript framework that keeps most of that protocol plumbing out of application code.
Hollo came next, because I still wanted the original thing: a single-user ActivityPub server where Markdown and
<ruby>annotations survived the trip. Hackers' Pub followed from the same framework, aimed at developers who want short posts and longer articles to federate.This talk is about how a small typographic itch turned into upstream patches, a framework, and two fediverse servers. I still just wanted ruby annotations.
Fingers crossed!