Sign in

Michael Kohl

@citizen428.net
136 followers 187 following 315 posts

Your friendly neighborhood anarcho-cynicalist. I do things with computers and occasionally succeed. 🇦🇹 in 🇹🇭 since 2013. Fan of 1990s pop culture. I delete old posts. I'm more active on Mastodon: chaos.social/@citizen428

PostsRepliesMedia
Michael Kohl @citizen428.net · 29/09/2026
Emacs: Obsidian without external packages citizen428.net/blog/emacs-simple-ob… #Emacs
citizen428.net
Emacs: Obsidian without external packages - citizen428.net
In my current config, I’m trying to reduce the number of external packages I rely on. Emacs has improved a lot over the years and also added several community packages into the core distribution. Recently, I decided to remove the obsidian.el package and see how far I can get with vanilla Emacs and packages I already have installed anyway. #Why no longer obsidian.el? I used obsidian.el for quite a while. Unfortunately, it hasn’t seen a commit since February 2025 and I started having some issues with it. Maybe they were related to my specific config, but it doesn’t even matter. I realized that the package has way more features than I care about 1 and started wondering if I could get a good enough (for me) Obsidian experience with whatever Emacs offers out of the box. I’ve been using this for a bit now and it’s absolutely sufficient for my needs.
010
Michael Kohl @citizen428.net · 28/09/2026
What happened to the Snowden archive libroot.org/posts/what-happened-to-…
000
Michael Kohl @citizen428.net · 28/09/2026
TIL that GNU `ls` has a `--dired` flag to make it easier for Emacs to find the filenames in a dired buffer. www.gnu.org/software/coreutils/manu…
gnu.org
What information is listed (GNU Coreutils 9.12)
What information is listed (GNU Coreutils 9.12)
100
Michael Kohl @citizen428.net · 10/09/2026
Remember the subprime mortgage crisis? At least it was caused by human greed. We won’t even get a fun movie afterwards, who wants to see “The Bot of Wall Street”? www.cnbc.com/2026/09/10/openai-chat…
000
Michael Kohl @citizen428.net · 10/09/2026
RE: chaos.social/@citizen428/1172474857… Sharing this on my timeline too because that's how upset I am.
chaos.social
Michael Kohl 🇦🇹🇹🇭 (@citizen428@chaos.social)
What frustrates me most about all the money going to Omarchy right now is that there are way more established organizations that deserve it so much more. Take DO as an example. I know they have done a good job providing infra to some FOSS projects, but have they handed anyone else $3m in actual money? Also: "beautiful, fun & agentic OS"? I think you misspelled "vibe-coded eye candy and dotfiles on top of Arch". https://omarchy.org/news/2026/09/digitalocean-joins-as-founding-corporate-patron/
110
Michael Kohl @citizen428.net · 05/09/2026
RISC-V interpreter from the future abundance.build/blog/2026-08-31-ris…
abundance.build
RISC-V interpreter from the future
High-performance RISC-V interpreter with a lot of compelling features using nightly Rust
000
Michael Kohl @citizen428.net · 05/09/2026
I share this sentiment to a certain degree. I have written a fair bit of Rust and will continue to do so where it fits. But it does not spark joy.
000
Michael Kohl @citizen428.net · 05/09/2026
Related: e17i.github.io/articles-emacs-eshell
000
Michael Kohl @citizen428.net · 04/09/2026
#emacs discovery of the day: Emacs can actually edit files outside its own configuration directory. I used this incredible feature to get actual work done. If only I had known sooner 😂
030
Michael Kohl @citizen428.net · 04/09/2026
Hm, I never noticed the --numstat flag in git diff before. It shows you the lines added and removed for every file in the diff. #git
git diff --numstat showing the output for a list of files:

220     264     src/path/omitted1
240     316     src/path/omitted2
128     161     src/path/omitted3
132     157     src/path/omitted4
1       1       src/path/omitted5
000
Michael Kohl @citizen428.net · 02/09/2026
A thread of tips, tricks, and TILs for #emacs . 🧵
810
Michael Kohl @citizen428.net · 31/08/2026
Executable Emoji martypc.blogspot.com/2026/08/execut…
martypc.blogspot.com
Executable Emoji
Warning: This page contains hundreds of emoji. If you're using a screen reader, be sure it doesn't read them all out loud. A whole bunch o...
000
Michael Kohl @citizen428.net · 31/08/2026
In a time where pretty much all software around us gets progressively enshittified, there’s this 50 year old Lisp interpreter masquerading as an editor that you can make truly and uniquely yours. #emacs
041
Michael Kohl @citizen428.net · 30/08/2026
Writing Ruby Extensions in Odin citizen428.net/blog/writing-ruby-ex… #ruby #odin
citizen428.net
Writing Ruby Extensions in Odin - citizen428.net
Over 15 years ago, I published this short post about how to write a very basic Ruby extension in C. A few weeks ago I got curious what the same extension would look like in Odin, a language I very much enjoy. I just realized that I never published the draft I started back then, so let’s fix that. #Wrapping ruby.h Odin makes it very easy to bind to C. You could do everything in one file, but I decided to split it up and put the wrapper in ext/person/ruby.odin.
000
Michael Kohl @citizen428.net · 29/08/2026
Did you know that you don't need to start #emacs in daemon mode before being able to use emacsclient? That's what the -a / --alternate-editor option or the ALTERNATE_EDITOR environment variable are for. If set to the empty string, the client will start Emacs in daemon mode and then connect to it.
011
Michael Kohl @citizen428.net · 27/08/2026
mu4e, how I missed you <3 #emacs
010
Michael Kohl @citizen428.net · 27/08/2026
"Your executable is a SQLite database" fzakaria.com/2026/08/23/your-execut…
fzakaria.com
Your executable is a SQLite database
I have been probably obsessed with two things in the last few years: Nix as a tool to explore innovative ideas that require the capability to rebuild the world and replacing ELF with SQLite as an executable format. You might have noticed that these two ideas are well suited to each other.
000
Michael Kohl @citizen428.net · 27/08/2026
Huh, Firefox now runs on Haiku. Time to upgrade my VM and play around with this for a bit. www.haiku-os.org/get-haiku/r1beta6/…
000
Michael Kohl @citizen428.net · 26/08/2026
So Space Karen's Site of Doom sent cease-and-desist letters to Nitter, xcancel, and others. I hope whoever is responsible for this steps on a Lego and spills their drink.
000
Michael Kohl @citizen428.net · 23/08/2026
Our #dog loves traveling. He’s been on many road trips with us. Yesterday we re-arranged the bedroom a bit and his bed moved by about 2.5 meters. He looked at us like we moved him to another country. It took quite a bit of convincing until he finally believed us that it’s still the same bed. 🐕
010
Michael Kohl @citizen428.net · 22/08/2026
Couldn't resist letting myself get nerd-sniped back into #emacs . I never fully left anyway. This time around I'm determined NOT to try to fit my entire computing life into it and (mostly) just use it as an editor.
100
Michael Kohl @citizen428.net · 22/08/2026
My current theory is that feeling pain/annoyance is an integral part of the software engineering process.
100
Michael Kohl @citizen428.net · 22/08/2026
RE: kafeneio.social/@baskin/11713539244… Be like Carl!
kafeneio.social
baskin :kafeneio:🇵🇸 (@baskin@kafeneio.social)
Attached: 1 image Real hacker. 77-year-old Carl Gunn legally blocks a Flock license plate camera in St. Petersburg, Florida, by sitting on a public sidewalk and holding a 12-foot pool skimmer pole with a “DOWN WITH FLOCK CAMERAS” sign. Because he remains on public property and never touches the equipment, police confirmed his protest is lawful. #flock
000
Reposted by Michael Kohl
weeder @weeder.bsky.social · 20/08/2026
Cover art for doom, doom guy slayin demons in hell. Title says DOOMOLINGO in severe sharp mirrored symmetry doom font
291603244
Michael Kohl @citizen428.net · 19/08/2026
Palomar – a registry of Lean verified mathematics terrytao.wordpress.com/2026/08/18/p… #math #LeanLang
terrytao.wordpress.com
Palomar – a registry of Lean verified mathematics
In recent months there has been a proliferation of AI-generated proofs of various old and new results, some of which have been formalized in the proof assistant language Lean. However, checking tha…
010
Michael Kohl @citizen428.net · 18/08/2026
So GitHub is collapsing under the amount of slop it receives? The service that tries to push Copilot at every chance it gets. Run by the company whose code editor is all-in on slop-slinging now. As you sow slop, so you shall reap slop.
001
Michael Kohl @citizen428.net · 17/08/2026
If anyone is gonna appreciate Common Lisp on #amiga it’s you weirdos in my Mastodon bubble. 😘 nnamgreb.de/blog/Clamiga+-+Common+L…
000
Michael Kohl @citizen428.net · 17/08/2026
The weirdest thing to me about #vibecoding enthusiasts are the constant brags about lines of code produced. What happened to treating code as liability not asset and making sure we write just enough of it and no more?
111
Michael Kohl @citizen428.net · 15/08/2026
"The Art of CHIP-8" beyondloom.com/blog/artofchip8.html A very good #chip8 resource. I've written two interpreters/emulators myself (Go and Rust), and also a few tools like a ROM disassembler. It's a fun and easy platform to learn about building interpreters, etc.
000
Michael Kohl @citizen428.net · 13/08/2026
"Who wants to fuck with Elon Musk?" www.cardsagainsthumanity.com/elonha…
cardsagainsthumanity.com
Who wants to help Cards Against Humanity f*** with Elon Musk?
We got Musk off our land. Let's build a monument to remind him he's a sad little b**** with no friends.
000
Michael Kohl @citizen428.net · 13/08/2026
Doing some really interesting work for one of my clients now:
100
Michael Kohl @citizen428.net · 10/08/2026
This video probably has a pretty narrow audience, but here we go: www.youtube.com/watch?v=WQI4syGj1pk
youtube.com
- YouTube
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
000
Michael Kohl @citizen428.net · 07/08/2026
"Thai Psychedelic Techno like you've never heard before | The Hymmapan Electron" www.youtube.com/watch?v=Wrwf5fj4zNI #Thailand #music
youtube.com
- YouTube
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
000
Michael Kohl @citizen428.net · 06/08/2026
In today's episode of "Shelbot Copper's Fun With Vibes": bobdahacker.com/blog/tldv-hack
bobdahacker.com
tl;dv (Too Lazy; Didn't Validate): 181,874 Meetings Left Wide Open
How a missing Firestore security rule on tl;dv exposed 181,874 meetings from 84,312 users across 35,003 domains, including live calls I could join uninvited, and how six months of disclosure got me nothing but seen receipts.
000
Michael Kohl @citizen428.net · 06/08/2026
RE: infosec.exchange/@cR0w/117044491344… Mood.
infosec.exchange
:rainbowCrow: (@cR0w@infosec.exchange)
Attached: 1 image
000
Michael Kohl @citizen428.net · 30/07/2026
Is "radicalized by billionaires' dumb hot takes" a recognized category now? It definitely should be. Some days, I feel like I'm 3 posts away from looking for an online course on artisanal guillotine making.
010
Michael Kohl @citizen428.net · 29/07/2026
Why do so many CLI tools feel like they can just go and add their shit to my shell startup files? I have a pretty specific way of managing my config. I do not want a tool to randomly vomit something into wherever it thinks is the right place.
100
Michael Kohl @citizen428.net · 27/07/2026
"DOOM on regex - find & replace as a computer" 4rh1t3ct0r7.github.io/doom-regex
000
Michael Kohl @citizen428.net · 26/07/2026
Oh boy, movie producers sure love the word “firewall” even though they have no idea what it means. “This keys’s firewall is level <insert mumbo-jumbo> […] One level short of military grade” From 捕风追影 (The Shadow’s Edge)
000
Michael Kohl @citizen428.net · 25/07/2026
While there were some good #donghua movies like 哪吒 1 & 2 and 浪浪山小妖怪, I never quite found a show I liked. After the first 2 episodes, 凸变英雄X looks like it could change that. I guess it doesn't hurt that it was co-produced by Aniplex.
100
Michael Kohl @citizen428.net · 21/07/2026
“The EU is about to sell our most sensitive data to the US for visa-free travel” edri.org/our-work/the-eu-is-about-t…
edri.org
The EU is about to sell our most sensitive data to the US for visa-free travel - European Digital Rights (EDRi)
The leaked draft text suggests that the Commission significantly caved in to US’s excessive demands for unfettered information access.
000
Michael Kohl @citizen428.net · 19/07/2026
TIL an obscure fact about #thailand and WW1 history: en.wikipedia.org/wiki/Siamese_occup…
011
Michael Kohl @citizen428.net · 12/07/2026
A few months ago our #dog learned a new life hack: if either my wife or I are not in the room when he gets his food, he’ll finish the bowl and then go to the other person and pretend he didn’t get fed yet. 😂 🐕 #dogsofmastodon
A senior German Shepherd mix doing his best “I’m starving, surely you can’t let this happen” face.
020
Michael Kohl @citizen428.net · 08/07/2026
Standalone ActivityPub bots in TypeScript "BotKit is a TypeScript framework for standalone ActivityPub bots. No Mastodon account and no 500‑character limit: your bot runs as a complete fediverse server, and it fits in a single file. " botkit.fedify.dev
botkit.fedify.dev
Standalone ActivityPub bots in TypeScript
BotKit is a TypeScript framework for building standalone ActivityPub bots for the fediverse: its own server, not a Mastodon or Misskey account. Built by the Fedify team.
011
Michael Kohl @citizen428.net · 03/07/2026
It just so happens that this year’s #Rugby U-20 WC is in Georgia. Since I’ll be there later this month I now got a ticket for the game for third place and the final. Exciting!
100
Michael Kohl @citizen428.net · 23/06/2026
Been feeling a bit demotivated lately. So I did what every responsible adult would do and booked a flight to Tbilisi, Georgia 🇬🇪 in 3 weeks. Back 16 days later from Yerevan, Armenia 🇦🇲. No plans so far, just how I like it.
110
Michael Kohl @citizen428.net · 23/06/2026
Had a hard time motivating myself to do client work today. Finally managed to get started, but in the process noticed a little bug in KDE’s digital clock applet. Obviously that nerd-sniped me into fixing that first, so I still haven’t done any actual work. Le sigh.
100
Michael Kohl @citizen428.net · 22/06/2026
“A Microsoft researcher built a goat-powered LLM in Age of Empires II to prove it's not sentient” www.xda-developers.com/a-microsoft-…
100
Michael Kohl @citizen428.net · 22/06/2026
What a sentence: "It was likely just a perfectly reasonable aesthetic choice in the 1980s - a decade that normalized concepts like the mullet, neon pink tracksuits, and starting the morning with a few lines of blow before firing up the Bloomberg terminal to commit large scale securities fraud."
100
Michael Kohl @citizen428.net · 21/06/2026
Had an issue with my controller in Steam. Turns out that "Allow using as pointer and keyboard" was accidentally turned on by default in KDE 6.7's controller settings, which interfered with games. Fixed in 6.7.1: invent.kde.org/plasma/kwin/-/merge_…
invent.kde.org
plugins/gamecontroller: disable by default (!9424) · Merge requests · Plasma / KWin · GitLab
There's a race condition for controller hotplug that must be fixed before it can be enabled by default. This was already off by default in 6.6,...
000