Version française du billet sur Planova : pourquoi j'ai abandonné todo.txt et mes formats maison pour un fichier Markdown par jour, le refill du matin, l'application Flutter, la CLI en Go et la synchronisation par Syncthing.
How a field-coded HEVC 1080i Canal+ feed, refused by the NetInt Quadra decoder, made it to hardware decoding thanks to an ffmpeg bitstream filter that erases the interlace signalling. With the code, the ffmpeg command line, the results on a corrupted feed, and NetInt's response.
Comment un flux Canal+ en HEVC 1080i field-coded, refusé par le décodeur NetInt Quadra, est passé en décodage matériel grâce à un bitstream filter ffmpeg qui efface la signalisation d'entrelacement. Avec le code, la ligne ffmpeg, les résultats sur un flux corrompu, et la réponse de NetInt.
My team went from twelve to one lead, one dev, a data integrator, and an apprentice, through departures simply not replaced. Except for a few architecture-heavy pipelines, the AI-generated code is as good as or better than what an average dev writes. Devs will remain, like farm workers remained, but LLMs are the tractor.
Omarchy 4 replaced its bar with quickshell, and its clock widget gave me an idea: why not make it look like Planova? One prompt, a few follow-up requests, and the clock became a full calendar/todos/notes panel over my plaintext files.
The complete recipe to fine-tune EasyOCR's recognizer on your own domain: auto-labelling with the stock model, human correction, the training configuration, and the three files that deploy it.
Coding agents write plausible but foreign code by default. Per-repo AGENTS.md files and reusable skills, including one that scaffolds an entire Go microservice to house conventions, fix that.
The capstone of the broadcast series: how the capture platform records TV and radio around the clock, with time-addressed chunks, multicast decoupling, tiered storage and a repair layer.
Extracting on-screen text from TV frames with per-channel boxes, live-content gating and spellchecker-adjusted confidence, then enriching transcripts with LLM workers treated as just another flaky pipeline stage.
WhisperX and pyannote diarization on multi-GPU workers, 24/7: dynamic GPU rebalancing between transcription and diarization, crash-only CUDA error handling, and silence injection for missing audio.
Four years after my first plain-text setup, I replaced todo.txt and custom formats with one Markdown daily file: Planova on Android and Linux, a Go CLI, vim, and Syncthing.
From an O(N²) cosine self-join that timed out to HNSW + LATERAL k-nearest-neighbour queries: deduplicating voice embeddings without leaving PostgreSQL.
Gjallar, a KISS monitoring service in ~3,400 lines of Go: zero CGO thanks to pure-Go drivers, a lock-free alert state machine, and SIGHUP hot-reload with validation.
Experience report from a real CRUD SaaS: 671 hx- attributes, typed HTML components, no API layer, no duplicated state, and an honest list of what hurts.
Three real production uses of the ramdisk: temp files for third-party binaries, in-RAM indexes shared between processes, monitoring via statfs, and the pitfalls to know about.
Fast compilation, gofmt, a rich standard library, explicit error handling, goroutines and channels for concurrency, and static cross-platform binaries.
Quasi-absence de commerçants, volatilité, frais de transaction, réputation : pourquoi le Bitcoin ne peut être qualifié de système de paiement en France.
How I manage todos, agenda, journal and notes in plain text files: todo.txt, custom agendatxt and expensetxt formats, Markdown, vim and the MOrg Android app.
Let's Connect
Have a project in mind? I'd love to hear from you!