<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: indigo945</title><link>https://news.ycombinator.com/user?id=indigo945</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 25 Jun 2026 05:12:02 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=indigo945" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by indigo945 in "FUTO Swipe – A new swipe typing model"]]></title><description><![CDATA[
<p>In German, it's also extremely annoying that even common compound words will not be suggested. Google Keyboard has somewhat improved here, but FUTO Keyboard still drops the ball on this completely.</p>
]]></description><pubDate>Wed, 24 Jun 2026 07:47:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48656568</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=48656568</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48656568</guid></item><item><title><![CDATA[New comment by indigo945 in "Hetzner Price Adjustment"]]></title><description><![CDATA[
<p>Yes, but Hetzner is not "some low-end provider". They have proper, high-quality datacenters with all the redundancy you want, excellent connectivity, great service, and much better privacy controls than any American company would be legally able to provide. Hetzner also offers instant scalability and has Terraform and Ansible support for infrastructure automation.<p>We have some VMs on Azure and some on Hetzner, and the latter have much better performance (especially since they give you basically infinite IOPS, which matters a lot for your database) and connectivity (especially lower latency).<p>The large hyperscalers were ever only worth it if you need/want all the additional PaaS infrastructure they provide, like Lambda, SQS and so on.</p>
]]></description><pubDate>Tue, 16 Jun 2026 08:42:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48552352</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=48552352</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48552352</guid></item><item><title><![CDATA[New comment by indigo945 in "Everything in C is undefined behavior"]]></title><description><![CDATA[
<p>Not only is "arguments are evaluated left-to-right" less easy to formalize than you think, it would also make all C code run slower, because the compiler would no longer be able to interleave computations for more efficient pipelining. The same goes for "expression is [only evaluated once]/[always evaluated twice]".<p>Of course the developer is navigating a minefield every time they use volatile, that's why it's called "volatile" - an English word otherwise only commonly used in chemistry, where it means "stuff that wants to go boom".</p>
]]></description><pubDate>Wed, 20 May 2026 11:17:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=48205950</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=48205950</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48205950</guid></item><item><title><![CDATA[New comment by indigo945 in "I accidentally made law enforcement shut down their fake honeypot"]]></title><description><![CDATA[
<p>Yes, this surprised me as well. Credit card and Paypal information should give the police everything they need to identify the criminal (in a way that's much more simple and reliable than via IP address, which may be obfuscated via a VPN or similar). Why not take it, it's free?</p>
]]></description><pubDate>Thu, 30 Apr 2026 09:52:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47960247</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47960247</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47960247</guid></item><item><title><![CDATA[New comment by indigo945 in "Alignment whack-a-mole: Finetuning activates recall of copyrighted books in LLMs"]]></title><description><![CDATA[
<p>People are already not using libraries because they'd rather rot their brains on TikTok than read a book. (Also, for information lookup, the internet and search engines exist, and have for a while now.) This has no actual causal relation.</p>
]]></description><pubDate>Thu, 30 Apr 2026 09:01:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47959941</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47959941</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47959941</guid></item><item><title><![CDATA[New comment by indigo945 in "Creating a Color Palette from an Image"]]></title><description><![CDATA[
<p>This is quite amazing. The quality of the created palettes is surprisingly good.<p>For the fourth iteration (guarding against phantom blue from shadow pixels), I wonder if it may help to also take into account how close the pixels in each cluster actually cluster together in the actual photo. (None of the heuristics used here seem to be interested in the position of the pixels at all, only in their values - as-is, it seems one could sort the photo's pixels before running the program and get the same result.) Actual objects usually form connected areas, whereas at least in the fruit image, the phantom shadows are spread across the entire photo in largely disconnected chunks.</p>
]]></description><pubDate>Thu, 30 Apr 2026 08:59:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47959924</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47959924</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47959924</guid></item><item><title><![CDATA[New comment by indigo945 in "Pgbackrest is no longer being maintained"]]></title><description><![CDATA[
<p>You can of course take a SQL dump that is version-independent, but if you're serious about creating backups, you want to take backups of the actual on-disk format of the WAL, because that's more efficient and also the only practical way to get point-in-time recovery. (For the efficiency, you could alternatively also take ZFS snapshots, which will work independently of the Postgres version, but those also don't give you PITR.) The WAL format is a Postgres implementation detail and therefore tools wanting to read and write it need maintenance whenever the format changes (which can happen on major version releases).</p>
]]></description><pubDate>Tue, 28 Apr 2026 11:25:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47932942</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47932942</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47932942</guid></item><item><title><![CDATA[New comment by indigo945 in "Seven countries now generate nearly all their electricity from renewables (2024)"]]></title><description><![CDATA[
<p><p><pre><code>    (I'm kidding, but I'm sure someone has a pie-in-the-sky geoengineering startup 
    about to disrupt topography using either AI, blockchain, or both.)
</code></pre>
Well, there was that plan to use scores of nuclear bombs to alter the geography of Egypt in such a way that the Mediterranean could be drained into the Qattara Basin [1]. I think the story is somewhat well-known now, but it proves, at least, that pie-in-the-sky geoengineering startups are not a phenomenon unique to the 21st century. And given that nuclear bombs essentially were the blockchain of the 1950s, that is altogether unsurprising.<p>[1]: <a href="https://en.wikipedia.org/wiki/Qattara_Depression_Project#Friedrich_Bassler" rel="nofollow">https://en.wikipedia.org/wiki/Qattara_Depression_Project#Fri...</a></p>
]]></description><pubDate>Mon, 13 Apr 2026 07:15:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=47748752</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47748752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47748752</guid></item><item><title><![CDATA[New comment by indigo945 in "DIY Soft Drinks"]]></title><description><![CDATA[
<p>Late capitalism is when a traditional tea recipe is referred to as "homemade ClubMate (R)".</p>
]]></description><pubDate>Mon, 13 Apr 2026 07:07:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47748682</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47748682</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47748682</guid></item><item><title><![CDATA[New comment by indigo945 in "High-Level Rust: Getting 80% of the Benefits with 20% of the Pain"]]></title><description><![CDATA[
<p>For the use cases outlined in the OP, a 36% performance gain for an optimization that complex would be considered a waste of time. OP was explicitly not talking about code that cares about the performance of its hot path that much. Most applications spend 90% of their runtime waiting for IO anyway, so optimizations of this scale don't do anything.</p>
]]></description><pubDate>Sun, 12 Apr 2026 08:37:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=47737374</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47737374</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47737374</guid></item><item><title><![CDATA[New comment by indigo945 in "Who is Satoshi Nakamoto? My quest to unmask Bitcoin's creator"]]></title><description><![CDATA[
<p>Funnily enough, in the blog post you linked Scott Alexander also ruminates about how he never previously questioned journalistic attempts to dox Satoshi Nakamoto.</p>
]]></description><pubDate>Thu, 09 Apr 2026 08:06:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47700613</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=47700613</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47700613</guid></item><item><title><![CDATA[New comment by indigo945 in "FBI is investigating Minnesota Signal chats tracking ICE"]]></title><description><![CDATA[
<p>> Signal insists on using your phone number too, refusing user ids or anything that will make analysis hard.<p>That is no longer true, you can use user IDs now.<p>For the other problem, you can enable self-deleting messages in group chats, limiting the damage when a chat does become compromised. Of course, this doesn't stop any persistent threat, such as law enforcement (is that even the right term anymore?) getting access to an unlocked phone.</p>
]]></description><pubDate>Wed, 28 Jan 2026 07:20:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46792090</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46792090</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46792090</guid></item><item><title><![CDATA[New comment by indigo945 in "Using PostgreSQL as a Dead Letter Queue for Event-Driven Systems"]]></title><description><![CDATA[
<p>Great tool that wrote the blog post in the OP also, so it's quite versatile.</p>
]]></description><pubDate>Sun, 25 Jan 2026 19:39:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46757421</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46757421</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46757421</guid></item><item><title><![CDATA[New comment by indigo945 in "The challenges of soft delete"]]></title><description><![CDATA[
<p>Right, but I think that the Recycle Bin is exactly what is causing the issue here. Users have been taught for decades that if they delete something, it is not really gone, as they can always just go back to their Recycle Bin or Deleted Items folder and restore it. (I have worked with clients that used the Deleted Items folder in Outlook as an archive for certain conversations, and would regularly reference it.)<p>So users have been taught that the term "delete" means "move somewhere out of my sight". If you design a UI and make "delete" mean something completely different from what everyone already understands it to mean, the problem is you, not the user.</p>
]]></description><pubDate>Wed, 21 Jan 2026 12:19:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46704629</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46704629</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46704629</guid></item><item><title><![CDATA[New comment by indigo945 in "The challenges of soft delete"]]></title><description><![CDATA[
<p>Even in MongoDB, you can can index `null` values, so I don't understand in what database system this would be a problem.</p>
]]></description><pubDate>Wed, 21 Jan 2026 12:11:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46704558</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46704558</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46704558</guid></item><item><title><![CDATA[New comment by indigo945 in "The challenges of soft delete"]]></title><description><![CDATA[
<p>What you describe is basically event sourcing, which is definitely popular. However, for OLAP, you will still want a copy of your data that only has the actual dimensions of interest, and not their history - and the easiest way to create that copy and to keep it in sync with your events is via triggers.</p>
]]></description><pubDate>Wed, 21 Jan 2026 12:03:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=46704476</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46704476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46704476</guid></item><item><title><![CDATA[New comment by indigo945 in "The challenges of soft delete"]]></title><description><![CDATA[
<p>Well, Microsoft SQL Server has built-in Temporal Tables [1], which even take this one step further: they track all data changes, such that you can easily query them as if you were viewing them in the past. You can not only query deleted rows, but also the old versions of rows that have been updated.<p>(In my opinion, replicating this via a `validity tstzrange` column is also often a sane approach in PostgreSQL, although OP's blog post doesn't mention it.)<p>[1]: <a href="https://learn.microsoft.com/en-us/sql/relational-databases/tables/temporal-tables?view=sql-server-ver17" rel="nofollow">https://learn.microsoft.com/en-us/sql/relational-databases/t...</a></p>
]]></description><pubDate>Wed, 21 Jan 2026 12:00:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=46704452</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46704452</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46704452</guid></item><item><title><![CDATA[New comment by indigo945 in "Claude Code On-the-Go"]]></title><description><![CDATA[
<p>Claude Code already <i>is</i> the purple unicorn. We're already there - the only problem is that regulatory systems are set up in a way that benefits a small minority of capitalists, rather than the majority.</p>
]]></description><pubDate>Mon, 05 Jan 2026 10:00:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=46497014</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46497014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46497014</guid></item><item><title><![CDATA[New comment by indigo945 in "The unbearable joy of sitting alone in a café"]]></title><description><![CDATA[
<p>I've thought about doing that, but it seems to require multiple Google accounts - one for the "child" and one for the "parent", which is hard to achieve without also having multiple SIM cards with different phone numbers that can be used for the account registration. I assume the process is designed to be full of friction to prevent people from freeing themselves of the addiction.</p>
]]></description><pubDate>Mon, 05 Jan 2026 09:42:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=46496910</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46496910</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46496910</guid></item><item><title><![CDATA[New comment by indigo945 in "The Garbage Collection Handbook"]]></title><description><![CDATA[
<p>I said "a GC", that is, "a garbage collector". Even if you consider reference counting as technically being garbage collection, purely reference counted systems do not have a distinct entity that can be identified as "a" garbage collector. So I'm technically correct here even in face of this pedantry.<p>Not that I think it's a reasonable approach to language to be pedantic on this. RC being GC is, of course, true from an analytic approach to language: a garbage collection system is defined as a system that collects and frees objects that are unreachable and thus dead; a reference counting pointer collects and frees objects that are unreachable and thus dead; therefore, reference counting is garbage collection.<p>One problem with this is the vagueness: now, the use of a call stack is garbage collection; after all, returning from a function collects and frees the objects in the stack frame. Leaking memory all over the place and expecting the operation system to clean up when you call `exit()` likewise is "garbage collection".<p>But more importantly, it's just not how anyone understands the word. You understood perfectly well what I meant when I said "you would be hard-pressed to find a modern AA game that does not already use a GC"; in other words, you yourself don't even understand the word differently. You merely feel an ethical imperative to understand the word differently, and when you failed to do so, used my comment as a stand-in to work through the emotions caused by your own inability to live up to this unfulfilled ethic.</p>
]]></description><pubDate>Tue, 23 Dec 2025 19:11:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46368323</link><dc:creator>indigo945</dc:creator><comments>https://news.ycombinator.com/item?id=46368323</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46368323</guid></item></channel></rss>