Articles

Long-form posts and essays. (267 total)

  • Quatre ans après Bouddhisme, la loi du silence ce dernier continue

    Il y a quatre ans, presque jour pour jour, ARTE diffusait “Bouddhisme, la loi du silence” https://www.youtube.com/watch?v=XcbpwOzoejw le documentaire d’Élodie Emery et Wandrille Lanos. Un véritable ovni télévisuel, qui a pourtant failli ne jamais êtr...

    Read more →
  • Trump’s Third Term May Not Need Trump

    There are at least two obvious ways to imagine Donald Trump trying to remain president after 2028. The first is the constitutional loophole: someone close to him — perhaps one of his children — runs for president with Trump as vice president, wins, t...

    Read more →
  • Another reason to leave WordPress behind

    So today it was fires both at work and privately : I successfully intercepted what appears to have been an attempt to compromise chardonsbleus.org. Two administrator accounts were created within a very short period of time. At first, I assumed the us...

    Read more →
  • I shipped my comment plugin to a service that could never accept it

    I’ve been rebuilding the comment system on this site with Claude Code. Visitors sign in with their own website to leave a comment — IndieAuth, the way it’s meant to work. Overnight we migrated it from IndieAuth to IndieLogin.com. At 05:40 this mornin...

    Read more →
  • The Man Who Cannot Be Overruled Wants to Talk About Balance of Power

    Mark Zuckerberg’s manifesto rests on a single elegant idea: safety comes from distributing power so no one actor can impose their will. It’s a fine principle. It’s also the exact opposite of how he has run everything he has ever touched . Start with...

    Read more →
  • RSC : et si le web social n'avait jamais eu besoin d'un nouveau protocole ?

    Depuis vingt ans, chaque tentative de « réinventer » le web social commence par la même étape : inventer un protocole. XMPP, OStatus, ActivityPub, AT Protocol, Nostr. À chaque fois la promesse est la même, à chaque fois le coût d’entrée est le même :...

    Read more →
  • Canicule : Adapte-toi ou crève!

    Il y a quelque chose d’absurde dans notre manière de répondre à l’urgence climatique. À chaque nouvelle canicule, on nous parle de volets, d’isolation, de climatisation, de fontaines, de piscines publiques temporairement accessibles et de quelques ar...

    Read more →
  • Inbound and outbound RSS

    Most of the talk about RSS is about publishing. A feed is something your site emits: you write a post, and the feed is the machine-readable copy that goes out the door. Almost every blog does this. It is the easy half, and it has been solved for twen...

    Read more →
  • La thermodynamique de la justice

    Je pense qu’il y a quelque chose de profondément humain dans notre besoin d’expliquer les dysfonctionnements par des intentions. Lorsqu’un système échoue, lorsqu’une institution ne répond pas à sa mission, nous cherchons instinctivement un responsabl...

    Read more →
  • The Brexit Bus Was Only the Beginning

    When historians write about the decline of democratic institutions in the early twenty-first century, they may not focus on artificial intelligence, deepfakes or social media algorithms. They may focus on a bus. A red bus promised that leaving the Eu...

    Read more →
  • Building Plume

    I got annoyed. Every time I wanted to bookmark a page or jot down a note, I’d open the Indiekit admin UI in a new tab, paste a URL, and click around. Small friction. But small friction repeats forever. So two days ago I started a brainstorm with Clau...

    Read more →
  • Peace Without Accountability Is Not Peace

    The Dalai Lama’s message calls for peace, compassion, and dialogue. On the surface, it is hard to disagree with any of that. But there is a deeper problem in how this message is framed. By grouping together vastly different situations under the singl...

    Read more →
  • Building NewsDiff: Tracking How News Changes After Publication

    TLDR; What it does : Polls RSS/Atom/JSON feeds, extracts article content, detects word-level changes, shows inline diffs on a web UI, posts to the fediverse (threaded AP bot) and Bluesky, generates diff card images server-side. Stack : SvelteKit + Dr...

    Read more →
  • Cult Dynamics at the Scale of Rogue Democracies

    I was born and grew up inside an authoritarian Tibetan Buddhist hippie community that slowly revealed itself to be a cult . Why am I telling you this? Because once you have lived inside a coercive system, you begin to recognize patterns that others m...

    Read more →
  • Optimizing Eleventy Build Performance: From 38s to Under 10s

    My Eleventy site builds 3,400+ pages with data from over a dozen APIs (GitHub, Funkwhale, Last.fm, YouTube, Mastodon, Bluesky, and several Indiekit endpoints). The initial build was taking 38 seconds, and incremental rebuilds — triggered by a single...

    Read more →
  • Dev Log: Hunting OOM kills, fixing CLS, and making Eleventy builds 10x faster

    Three days of performance work on the Indiekit stack — memory optimization, Core Web Vitals, and build-time improvements. This one gets technical. The Problem: OOM Kills in a 3 GB Container The site runs on Cloudron in a container with 3 GB RAM. Elev...

    Read more →
  • Dev Log: 43 commits — design system, accessibility, and 306 bookmarks imported

    A day of polish, performance, and migration cleanup across the Indiekit ecosystem. Eleventy Theme — 24 commits Design System Compliance The theme got a full design system overhaul. Every post type — articles, notes, bookmarks, photos, replies, likes,...

    Read more →
  • Dev Log: 27 commits across 5 plugins to improve my blog

    A busy day of improvements across the Indiekit ecosystem. Here’s what changed. Eleventy Theme — 10 commits The frontend got the most attention: Blog filter navigation — the blog dropdown now shows all posts per type, not just the most recent Interact...

    Read more →
  • Adding AI Usage Metadata to JSON-LD Structured Data

    Every post on this site carries structured AI transparency metadata — visible both to readers (as a disclosure badge) and to machines (as Schema.org JSON-LD). Here’s how I built it, from the post editor to the structured data output. My AI Transparen...

    Read more →
  • The Blog Question Challenge

    This challenge was initiated by Alexandra from wrywriter.ca — thanks for putting this together! Why did you make a blog in the first place? My first blog goes back to the early 2000s — it was called “Make Love Not War” and it was a space where I was...

    Read more →