<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: klodolph</title><link>https://news.ycombinator.com/user?id=klodolph</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 15 May 2026 18:26:34 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=klodolph" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by klodolph in "Removing fsync from our local storage engine"]]></title><description><![CDATA[
<p>That definition of durable doesn’t seem useful to me, sorry. I want the failure rates and scenarios.</p>
]]></description><pubDate>Tue, 12 May 2026 16:21:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=48110412</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48110412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48110412</guid></item><item><title><![CDATA[New comment by klodolph in "If AI writes your code, why use Python?"]]></title><description><![CDATA[
<p>I used Claude to generate Haskell and it works really well. Claude struggles sometimes with respecting abstraction boundaries, but Haskell enforces parts of those boundaries in its type system better than a lot of other languages (if a module can’t do IO, for example).<p>Works well, in my experience. Sometimes the agent does weird stuff that you have to rewrite, but I get the sense that this happens in any language.<p>Maybe Haskell’s training set is not large enough, but it seems to work despite the smaller training set.</p>
]]></description><pubDate>Tue, 12 May 2026 13:07:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=48107716</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48107716</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48107716</guid></item><item><title><![CDATA[New comment by klodolph in "Removing fsync from our local storage engine"]]></title><description><![CDATA[
<p>I like to think that the true AFR for data is bounded by something like 10^-3, because maybe that’s close to the rate at which civilizations collapse. You have to use a kind of subtle definition to support 10^-7 or 10^-9 or 10^-11. Or maybe instead of “subtle definition”, you can call it a “whimsical, imaginary definition”. Depends on how cynical you are.<p>The way I would go is by saying that you multiply the number of objects by AFR, and that’s close to the actual losses on <i>most</i> years. You can then exclude WW3 and the late holocene extinction event from your consideration. Or simple bankruptcy, for that matter. If your employer is gone, you don’t care about its data any more.</p>
]]></description><pubDate>Sun, 10 May 2026 04:19:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48080969</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48080969</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48080969</guid></item><item><title><![CDATA[New comment by klodolph in "Removing fsync from our local storage engine"]]></title><description><![CDATA[
<p>The half-remembered storage system I pulled those numbers from had records ~100G in size, so a 10^-7 loss is 1 loss event per year, per exabyte of data. A loss event is just “at least one bit in the record cannot be read within a certain deadline”.<p>Durability is a knob. If you have enough data, or turn the knob too far in the direction of durability, you will simply bankrupt yourself or maybe drown your service in latency. It makes sense that you would have storage services that provide different levels of durability.</p>
]]></description><pubDate>Sun, 10 May 2026 04:07:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48080909</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48080909</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48080909</guid></item><item><title><![CDATA[New comment by klodolph in "Removing fsync from our local storage engine"]]></title><description><![CDATA[
<p>I don’t have any respect for the viewpoint that “durable” is equatable with “stored on disk”, and I don’t want to spend time accommodating that viewpoint. It is just an oversimplification in a very bad way.<p>AFRs and discussions about different failure scenarios are the bare minimum. The bare minimum for scenarios is disk loss, total machine loss, and data center loss. This is just my take on things. I don’t care if something is on disk or not. I do care what happens when a sector on disk goes bad, when a faulty power supply destroys all the disks in a machine, or when a data center floods.<p>That forces you to think about things like whether you want to turn on synchronous replication.</p>
]]></description><pubDate>Sun, 10 May 2026 04:00:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48080882</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48080882</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48080882</guid></item><item><title><![CDATA[New comment by klodolph in "Removing fsync from our local storage engine"]]></title><description><![CDATA[
<p>:-/ it’s a statistical guarantee in the first place. A successful commit in a durable storage engine just needs to achieve some finite level of durability, like “10^-7 probability of loss per year”. The durability is a property of the whole system, and it is possible to achieve durability without fsync, you just may have a hard time explaining what the durability is, how you calculated it, and what the evidence or justifications are for the numbers you give.<p>Even if you just look at hardware failure rates, you get unrecoverable I/O errors (data corruption) at about one in 10^15 bits, disk failures at a rate of about 1% per year, etc. People usually like to have better guarantees than those numbers give you with just a plain fsync anyway; so you are probably forced to do an analysis of the whole system if you want to provide good durability guarantees and be able to explain where the guarantees come from.</p>
]]></description><pubDate>Sat, 09 May 2026 15:53:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48075948</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48075948</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48075948</guid></item><item><title><![CDATA[New comment by klodolph in "BYD overtakes Tesla and Kia as the best-selling EV brand in key overseas markets"]]></title><description><![CDATA[
<p>People are also surprised how rural much of China is.</p>
]]></description><pubDate>Wed, 06 May 2026 19:13:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48040353</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=48040353</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48040353</guid></item><item><title><![CDATA[New comment by klodolph in "AI should elevate your thinking, not replace it"]]></title><description><![CDATA[
<p>Ah, I was thinking of the editorialized HN title.</p>
]]></description><pubDate>Sun, 26 Apr 2026 20:25:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47913945</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47913945</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47913945</guid></item><item><title><![CDATA[New comment by klodolph in "AI should elevate your thinking, not replace it"]]></title><description><![CDATA[
<p>What part do you disagree with? It sounds like you don’t disagree with either the title of the article or its contents.<p>> In talking to engineering management across tech industry heavy-weights, it's apparent that software engineering is starting to split people into two nebulous groups:<p>> The first group will use A.I. to remove drudgery, move faster, and spend more time on the parts of the job that actually matter i.e. framing problems, making tradeoffs, spotting risks, creating clarity, and producing original insight.</p>
]]></description><pubDate>Sun, 26 Apr 2026 20:18:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47913856</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47913856</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47913856</guid></item><item><title><![CDATA[New comment by klodolph in "UK to permanently ban future generations from buying cigarettes"]]></title><description><![CDATA[
<p>> guess how that turned out?<p>My guess is that significantly fewer people use drugs than would have used drugs if they were not banned.<p>> "The Crime Survey for England and Wales (CSEW) estimated that 8.7% of people aged 16 to 59 years (around 2.9 million people) reported using any drug in the last 12 months for the year ending (YE) March 2025; there was no statistically significant change compared with YE March 2024"<p>Are there some significant changes to policy during that time period? I don’t see how this factoid is related to whatever argument you are trying to make.</p>
]]></description><pubDate>Sat, 25 Apr 2026 15:52:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47902343</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47902343</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47902343</guid></item><item><title><![CDATA[New comment by klodolph in "Arch Linux Now Has a Bit-for-Bit Reproducible Docker Image"]]></title><description><![CDATA[
<p>There have got to be a million ways to do this by now. Some of the more principled approaches are tools like Nix (<a href="https://xeiaso.net/talks/2024/nix-docker-build/" rel="nofollow">https://xeiaso.net/talks/2024/nix-docker-build/</a>) and Bazel (<a href="https://github.com/bazel-contrib/rules_oci" rel="nofollow">https://github.com/bazel-contrib/rules_oci</a>). But if you want to use an existing package manager like apt, you can pick it apart. Apt calls dpkg, and dpkg extracts files and runs post-install scripts. Only the post-install script needs to run inside the container.<p>I may be a little out of touch here, because the last time I did this, we used a wholly custom package manager.</p>
]]></description><pubDate>Thu, 23 Apr 2026 18:26:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47879500</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47879500</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47879500</guid></item><item><title><![CDATA[New comment by klodolph in "Arch Linux Now Has a Bit-for-Bit Reproducible Docker Image"]]></title><description><![CDATA[
<p>IMO—package manager outside the container. You just want the packages inside the container; the manager can sit outside and install packages into the container.</p>
]]></description><pubDate>Thu, 23 Apr 2026 15:45:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=47877176</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47877176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47877176</guid></item><item><title><![CDATA[New comment by klodolph in "Arch Linux Now Has a Bit-for-Bit Reproducible Docker Image"]]></title><description><![CDATA[
<p>It’s a variety of different software that just isn’t updated very often.<p>I don’t mind being somewhat behind, but it seems like there are a lot of packages that don’t get regular updates. It’s okay to have packages that aren’t updated, but those packages should be clearly distinguishable.</p>
]]></description><pubDate>Thu, 23 Apr 2026 13:23:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47875477</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47875477</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47875477</guid></item><item><title><![CDATA[New comment by klodolph in "Arch Linux Now Has a Bit-for-Bit Reproducible Docker Image"]]></title><description><![CDATA[
<p>Recently I’ve been noticing that Nix software has been falling behind. So “the software you need is almost certainly there” is less true these days. Recently = April 2026.</p>
]]></description><pubDate>Thu, 23 Apr 2026 12:02:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=47874733</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47874733</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47874733</guid></item><item><title><![CDATA[New comment by klodolph in "Game devs explain the tricks involved with letting you pause a game"]]></title><description><![CDATA[
<p>> The system was deterministic enough that it could record your inputs/the game state and just play them back to get a gameplay video.<p>NOT how demos work in Quake. It’s more like Quake uses a client/server architecture, and the demo is a capture of the messages.<p><a href="https://www.gamers.org/dEngine/quake/Qdem/dem-1.0.2.html" rel="nofollow">https://www.gamers.org/dEngine/quake/Qdem/dem-1.0.2.html</a></p>
]]></description><pubDate>Sun, 19 Apr 2026 12:41:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=47823882</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47823882</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47823882</guid></item><item><title><![CDATA[New comment by klodolph in "Migrating from DigitalOcean to Hetzner"]]></title><description><![CDATA[
<p>“Your own server in a colo” means going to the colo to swap RAM or an SSD when something goes wrong. You rent a server and the benefit is the rentor has spare parts on hand and staff to swap parts out.</p>
]]></description><pubDate>Sat, 18 Apr 2026 14:14:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47816102</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47816102</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47816102</guid></item><item><title><![CDATA[New comment by klodolph in "I just want simple S3"]]></title><description><![CDATA[
<p>NFS in practice is too different from S3 to make this work.<p>I’ve been at a couple companies where somebody tried putting an S3 interface in front of an NFS cluster. In practice, the semantics of S3 and NFS are different enough that I’ve had to then deal with software failures. Software designed to work with S3 is designed to work with S3 semantics and S3 performance. Hook it up to an S3 API on what is otherwise an NFS server and you can get problems.<p>“You can get replication with RAID” is technically true, but it’s just not good enough in most NFS systems. S3 style replication keeps files available in spite of multiple node failures.<p>The problems I’m talking about arise because when you use an S3-compatible API on your NFS system, it’s <i>often</i> true that you’re rolling the dice with three different vendors—you have the storage appliance vendor, you have the vendor for the software talking to S3, and you have Amazon who wrote the S3 client libraries. It’s kind of a nightmare of compatibility problems in my experience. Amazon changes how the S3 client library works, the change wasn’t tested against the storage vendor’s implementation, and boom, things stop working. But your first call is to the application vendor, and they are completely unfamiliar with your storage appliance. :-(</p>
]]></description><pubDate>Tue, 14 Apr 2026 01:42:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47760257</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47760257</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47760257</guid></item><item><title><![CDATA[New comment by klodolph in "Bitcoin miners are losing on every coin produced as difficulty drops"]]></title><description><![CDATA[
<p>> […] why would they sell bitcoin to continue funding their mining operations […]<p>There are usually some fixed costs involved and you need cash flow. Without cash flow, your business can shut down pretty damn fast. With cash flow, your business can stay around longer, maybe long enough for the economics to shift.<p>This sort of thing happens with oil. There are oil producers which sell at a loss. There was even a brief moment when the price of an oil barrel went negative, which meant that if you gave somebody a barrel of oil, you had to pay them for the privilege of taking that oil off your hands. Oil producers did not all shut down when that happened.<p>I am a little doubtful of the $19k figure anyway.<p>> It would actually make more sense to sell all their bitcoin, flood the market with coins to do the price, wait for large miners to collapse and then restart mining at hopefully lower prices.<p>This kind of market manipulation is not so straightforward.</p>
]]></description><pubDate>Sat, 11 Apr 2026 14:32:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=47730977</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47730977</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47730977</guid></item><item><title><![CDATA[New comment by klodolph in "The 667MHz Machine"]]></title><description><![CDATA[
<p>> Disclaimer: I wrote this on a basic text editor which has spell and grammar check, presumably powered by some sort of AI/LLM tech. The ramblings, and run-on sentences, are all mine.<p>I think I want this at the bottom of the article, “Words are my own; spell checking and grammar tools probably had AI.”</p>
]]></description><pubDate>Sun, 29 Mar 2026 05:33:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=47560644</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47560644</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47560644</guid></item><item><title><![CDATA[New comment by klodolph in "OpenBSD on Motorola 88000 Processors"]]></title><description><![CDATA[
<p>Yeah, this is probably closest to the right answer. Apple DID choose the 88K, and then changed. Reportedly they put some 88K systems in a Mac chassis.<p>I do wonder what the exact reasons were. Maybe the PPC (complete systems) could be made cheaper? Maybe Apple was worried about relying on a single vendor? I am kind of skeptical of the “corporate dealmaking” angle, because it seems like there are valid technical reasons to NOT choose the 88K. Namely, that it requires companion chips, and the whole system (board + chips) ends up being complicated and expensive.</p>
]]></description><pubDate>Sun, 29 Mar 2026 05:02:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47560515</link><dc:creator>klodolph</dc:creator><comments>https://news.ycombinator.com/item?id=47560515</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47560515</guid></item></channel></rss>