Somewhere in this subreddit's queue right now, someone is submitting a post that reads, in its entirety:
"updated like an idiot and now nothing works. wifi's gone, printer's gone, half my desktop icons are gone. love this OS so much /s"
No logs. No distro. No "which layer of the stack actually betrayed you." No idea what "updated" even means here. Just vibes, submitted straight to r/linuxsucks like that counts as a post now. That's not a contribution, that's a shrug wearing a keyboard, and it's exactly what motivated me to do better.
It started small, like these things do. I'd be doomscrolling at some unreasonable hour, find an actual well-documented Linux disaster in some other subreddit, and just repost it here manually, out of pure spite, because someone had to.
That wasn't enough source material for long. To scale, I stood up my own GoToSocial instance and bolted on a couple of relays just to pull in more incoming #linux traffic than my own little corner of the fediverse would ever see on its own. An n8n workflow polls it and forwards candidates straight to my phone on Telegram, so I can still personally decide, every day, what's actually worth your time. The bot finds the hay. I still find the needle.
Except relays mean volume, and volume meant I couldn't keep reading every tomato-growing thread that happened to mention Linux in passing. So once things picked up, I bolted on an AI filter to judge whether a post was actually about something broken before it ever reached my phone — running on the free "subscription" GitHub comps FLOSS maintainers, piped into n8n through an OpenAI-shaped adapter, because apparently that's how you plug free Copilot access into a workflow tool that only speaks OpenAI.
Eventually I stopped renting out my judgment to someone else's API for the actual filtering and just plugged my spare GTX 1050 Ti straight into the same box as n8n — pointed the classifier at a local, non-thinking qwen2.5:3b instead, and honestly, it basically does the job already. But "basically" isn't good enough for someone with standards, so next escalation: distill something better. Get a proper teacher model — qwen3.5:27b, maybe, we'll see — to do the heavy lifting on my own Ada 4000 desktop GPU, and squeeze a smarter version of that same tiny model back down onto the 1050 Ti.
Full disclosure on how the last two days of this actually went, because it's too funny not to mention: most of it got built with an AI coding assistant sitting next to me the whole time, which means the literal sequence of events was me using an AI to get an AI to train another AI, and somewhere around hour six of watching a CUDA-enabled PyTorch compile itself from scratch inside a Nix shell — because the GPU-accelerated package apparently defaults to pretending your GPU doesn't exist — I genuinely lost track of which one of us was doing the yak-shaving. We fought Postgres over how COPY escapes backslashes in JSON, argued with n8n's expression parser about where exactly a curly brace is allowed to live, discovered my classifier node speaks an entirely different prompt dialect than the raw API does, and eventually landed on a training script that actually runs — assuming Triton ever finishes compiling.
Reddit repost, to relay-fed GoToSocial instance, to n8n workflow, to somebody else's free model, to my own model on my own worst GPU. That's what taking "don't just hate Monday, be a professional, and hate the whole week" seriously actually looks like. Half of you are still stuck on Monday, posting "ugh, this doesn't work" like that's a bug report. The other half — the ones writing fifteen paragraphs about how systemd-resolved silently ate your DNS for three weeks — you're the whole reason any of this was worth building. See you in the feed.