<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: matrss</title><link>https://news.ycombinator.com/user?id=matrss</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 07 Jun 2026 00:37:35 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=matrss" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by matrss in "Moving from GitHub to Codeberg, for lazy people"]]></title><description><![CDATA[
<p>First time seeing that, but yes, seems similar in concept. Iocaine can be self-hosted and put in as a "middleware" in your reverse proxy with a few lines of config, cloudflare's seems tied to their services. Cloudflares also generates garbage with generative models, while iocaine uses much simpler (and surely more "crude") methods of generating its garbage. Using LLMs to feed junk to LLMs just makes me cry, so much wasted compute.<p>Is iocaine actually newer though? Its first commit dates to 2025-01, while the blog post is from 2025-03. I couldn't find info on when Cloudflare started theirs. There's also Nepenthes, which had its first release in 2025-01 too.</p>
]]></description><pubDate>Thu, 26 Mar 2026 18:41:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47534120</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47534120</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47534120</guid></item><item><title><![CDATA[New comment by matrss in "Moving from GitHub to Codeberg, for lazy people"]]></title><description><![CDATA[
<p>So, basically iocaine (<a href="https://iocaine.madhouse-project.org/" rel="nofollow">https://iocaine.madhouse-project.org/</a>). It has indeed been very useful to get the AI scraper load on a server I maintain down to a reasonable level, even with its not so strict default configuration.</p>
]]></description><pubDate>Thu, 26 Mar 2026 16:33:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=47532599</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47532599</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47532599</guid></item><item><title><![CDATA[New comment by matrss in "A decade of Docker containers"]]></title><description><![CDATA[
<p>And what I've said is that there are more options. You don't have to use cgroups directly, there are other tools abstracting over them (e.g. systemd) that aren't also container runtimes.</p>
]]></description><pubDate>Sun, 08 Mar 2026 13:07:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47297012</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47297012</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47297012</guid></item><item><title><![CDATA[New comment by matrss in "A decade of Docker containers"]]></title><description><![CDATA[
<p>I think the storage optimization aspect is secondary, it is more about keeping control over your distribution. You need processes to replace all occurrences of xz with an uncompromised version when necessary. When all packages in the distribution link against one and the same that's easy.<p>Nix and guix sort of move this into the source layer. Within their respective distributions you would update the package definition of xz and all packages depending on it would be rebuild to use the new version.<p>Using shared dependencies is a mostly irrelevant detail that falls out of this in the end. Nix can dedupe at the filesystem layer too, e.g. to reduce duplication between different versions of the same packages.<p>You can of course ship all dependencies for all packages separately, but you have to have a solution for security updates.</p>
]]></description><pubDate>Sun, 08 Mar 2026 10:30:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47296164</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47296164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47296164</guid></item><item><title><![CDATA[New comment by matrss in "A decade of Docker containers"]]></title><description><![CDATA[
<p>> But they’re roughly the same paradigm as docker, right?<p>Absolutely not. Nix and Guix are package managers that (very simplified) model the build process of software as pure functions mapping dependencies and source code as inputs to a resulting build as their output. Docker is something entirely different.<p>> they’re both still throwing in the towel on deploying directly on the underlying OS’s userland<p>The existence of an underlying OS userland _is_ the disaster. You can't build a robust package management system on a shaky foundation, if nix or guix were to use anything from the host OS their packaging model would fundamentally break.<p>> unless you go all the way to nixOS<p>NixOS does not have a "traditional/standard/global" OS userland on which anything could be deployed (excluding /bin/sh for simplicity). A package installed with nix on NixOS is identical to the same package being installed on a non-NixOS system (modulo system architecture).<p>> shipping what amounts to a filesystem in a box<p>No. Docker ships a "filesystem in a box", i.e. an opaque blob, an image. Nix and Guix ship the package definitions from which they derive what they need to have populated in their respective stores, and either build those required packages or download pre-built ones from somewhere else, depending on configuration and availability.<p>With docker two independent images share nothing, except maybe some base layer, if they happen to use the same one. With nix or Guix, packages automatically share their dependencies iff it is the same dependency. The thing is: if one package depends on lib foo compiled with -O2 and the other one depends on lib foo compiled with -O3, then those are two different dependencies. This nuance is something that only the nix model started to capture at all.</p>
]]></description><pubDate>Sun, 08 Mar 2026 00:01:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47292791</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47292791</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47292791</guid></item><item><title><![CDATA[New comment by matrss in "A decade of Docker containers"]]></title><description><![CDATA[
<p>You have to differentiate container images, and "runtime" containers. You can have the former without the latter, and vice versa. They are entirely orthogonal things.<p>E.g. systemd exposes a lot of resource control as well as sandboxing options, to the point that I would argue that systemd services can be very similar to "traditional" runtime containers, without any image involved.</p>
]]></description><pubDate>Sat, 07 Mar 2026 19:59:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47290958</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=47290958</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47290958</guid></item><item><title><![CDATA[New comment by matrss in "The original vi is a product of its time (and its time has passed)"]]></title><description><![CDATA[
<p>> Most people don't want a mental model just to type a sentence.<p>"Just typing a sentence" is what I was referring to with "basic linear text writing", for which modal editing indeed does not bring much of a benefit. That's not text editing though.<p>> Instead of the snark, you could just admit that your preference doesn't align with the median user.<p>? I explicitly wrote that people work differently and have different preferences. What was snarky about that?<p>Besides, the median user does not edit configuration files via ssh, so they are hardly relevant here. The median user does not even know what a terminal is. If this was about the median user, then we would be discussing Word vs. Notepad, or whatever.</p>
]]></description><pubDate>Tue, 10 Feb 2026 12:01:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46958566</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46958566</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46958566</guid></item><item><title><![CDATA[New comment by matrss in "The original vi is a product of its time (and its time has passed)"]]></title><description><![CDATA[
<p>Emacs is a bit special in that the "canonical" way of editing a remote configuration file with it is probably using TRAMP, i.e. connecting your local emacs via ssh to edit the remote file as if it was local.</p>
]]></description><pubDate>Tue, 10 Feb 2026 11:54:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46958509</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46958509</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46958509</guid></item><item><title><![CDATA[New comment by matrss in "The original vi is a product of its time (and its time has passed)"]]></title><description><![CDATA[
<p>> i could never understand why anyone would us vi/m with its bs shortcuts, making BASIC text editing into a complete *.<p>I could never understand why anyone would use nano with its bs shortcuts, making basic text editing (in contrast to basic linear text writing, which even a non-modal editor like nano can do decently) into a complete *.<p>This is dumb. Sure, some people don't get modal editing. Others don't get how you could live without. It is almost as if people work differently and have different preferences.</p>
]]></description><pubDate>Tue, 10 Feb 2026 09:13:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=46957148</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46957148</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46957148</guid></item><item><title><![CDATA[New comment by matrss in "Guix System First Impressions as a Nix User"]]></title><description><![CDATA[
<p>> I deploy using a dedicated user, which has passwordless sudo set up to work.<p>IMO there is no point in doing that over just using root, maybe unless you have multiple administrators and do it for audit purposes.<p>Anyway, what you can do is have a dedicated deployment key that is only allowed to execute a subset of commands (via the command= option in authorized_keys). I've used it to only allow starting the nixos-upgrade.service (and some other not necessarily required things), which then pulls updates from a predefined location.</p>
]]></description><pubDate>Sat, 31 Jan 2026 20:59:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=46840779</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46840779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46840779</guid></item><item><title><![CDATA[New comment by matrss in "Apt-bundle: brew bundle for apt"]]></title><description><![CDATA[
<p>Brew _is_ a linux package manager.<p>There is also conda/mamba/pixi/etc. (anything in the conda-forge ecosystem) that can be used without root. Then there are Guix and nix, which (mostly) require to be set up by someone with root privileges, but which then allow unprivileged users to install packages for themselves. I think I have even used emerge rootless-ly at some point a few years ago.</p>
]]></description><pubDate>Thu, 29 Jan 2026 19:30:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=46815304</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46815304</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46815304</guid></item><item><title><![CDATA[New comment by matrss in "CD Projekt issue DMCA takedown notice against popular Cyberpunk VR mod"]]></title><description><![CDATA[
<p>> “No person shall circumvent a technological measure that effectively controls access to a work protected under this title.”<p>This wording always bothers me. If a person were to circumvent a technological measure that tries to control such access, then the circumvention itself proves that this measure was not effective at doing what it is supposed to be doing. Therefore the person is not circumventing something that _effectively_ controls anything. They just showed that it is ineffective, and therefore the law does not apply to them.<p>Of course, no one who actually has to interpret these laws shares my opinion.</p>
]]></description><pubDate>Mon, 19 Jan 2026 14:46:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=46679575</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46679575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46679575</guid></item><item><title><![CDATA[New comment by matrss in "Provenance Is the New Version Control"]]></title><description><![CDATA[
<p>If you don't want to argue about definitions, then I'd recommend you don't start arguments about definitions.<p>"AI" is not special-sauce. LLMs are transformations that map an input (a prompt) to some output (in this case the implementation of a specification used as a prompt). Likewise, a C compiler is a transformation that maps an input (C code) to some output (an executable program). Currently the big difference between the two is that LLMs are usually probabilistic and non-deterministic. Their output for the same prompt can change wildly in-between invocations. C compilers on the other hand usually have the property that their output is deterministic, or at least functionally equivalent for independent invocation with the same input. This might be the most important property that a compiler has to have, together with "the generated program does what the code told it to do".<p>Now, if multiple invocations of a LLM were to reliably produce functionally equivalent implementations of a specification as long as the specification doesn't change (and assuming that this generated implementation does actually implement the specification), then how does the LLM differ from a compiler? If it does not fundamentally differ from a compiler, then why should the specification not be called code?</p>
]]></description><pubDate>Tue, 13 Jan 2026 12:30:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46600113</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46600113</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46600113</guid></item><item><title><![CDATA[New comment by matrss in "Provenance Is the New Version Control"]]></title><description><![CDATA[
<p>So, Prolog is not code then?<p>> Except you can't run english on your computer.<p>I can't run C on it either, without translating it to machine code first. Is C code?</p>
]]></description><pubDate>Tue, 13 Jan 2026 09:05:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=46598739</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46598739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46598739</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>Well apparently they have been somewhat profitable from 2016 to 2019, and they have been paying a dividend to the state more often than not. I don't think their goal is actively loosing money?</p>
]]></description><pubDate>Mon, 29 Dec 2025 18:15:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=46423494</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46423494</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46423494</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>> The government owns DB AG, it is not a private company. It is a public company.<p>It is a private company, as in it is a legal entity under private law. This is in contrast to a "öffentlich-rechtliches Unternehmen" (I don't know if this even has a proper translation or equivalent in other jurisdictions). There is more than two options here, it can be both privatized and public according to your definition.</p>
]]></description><pubDate>Mon, 29 Dec 2025 18:11:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46423457</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46423457</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46423457</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>Just because it is even more true elsewhere does not mean it is untrue here.</p>
]]></description><pubDate>Mon, 29 Dec 2025 15:53:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=46421871</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46421871</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46421871</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>The DB AG has been specifically founded to be "market-oriented" and  profit-making, so yes, it is true.<p>I am sure the state could try to do _something_ about it, but I am also sure that a very strong car lobby here in Germany is working against that. BTW, the road network, which I would consider to conceptually be the same kind of infrastructure as the rail network, is to my understanding mostly built and maintained by state organizations, so it is possible to do it that way.<p>I guess it is also harder to market "let's subsidize this private company with tax payer money so they can continue to offer mediocre service" to voters, compared to "let's use tax payer money to build and maintain one-of-a-kind critical infrastructure from which everyone (with a car, which due to the less-than-great alternatives is a lot of people) can profit".<p>Again, having it organized as a private company adds indirection, diffuses power and responsibility, and adds a certain more or less implicit expectation of what private companies are supposed to do. That's my main issue with it. Private companies aren't supposed to run critical infrastructure as a monopoly for profit. It's the states job to provide and maintain critical infrastructure in the interest of all.</p>
]]></description><pubDate>Mon, 29 Dec 2025 15:52:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46421860</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46421860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46421860</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>DB has been reorganized as an AG in the 90s, i.e. a corporation under private law. They are forced to (at least try to) make a profit for their shareholders, which is a common trait of private organizations. They consistently do so via short-sighted (mis-)management, another common trait with many private organizations. This privatized corporation is indeed fully owned by the state as its only shareholder, but unfortunately that doesn't manifest in the DB being run as the critical infrastructure that it is. I suspect that the indirections in power over the corporation that the privatized structure imposes is a key reason for why it became such a disaster.</p>
]]></description><pubDate>Mon, 29 Dec 2025 13:52:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=46420759</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46420759</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46420759</guid></item><item><title><![CDATA[New comment by matrss in "Kidnapped by Deutsche Bahn"]]></title><description><![CDATA[
<p>In other words: it's going downhill ever since the DB was privatized.</p>
]]></description><pubDate>Mon, 29 Dec 2025 13:24:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=46420462</link><dc:creator>matrss</dc:creator><comments>https://news.ycombinator.com/item?id=46420462</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46420462</guid></item></channel></rss>