<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: ramchip</title><link>https://news.ycombinator.com/user?id=ramchip</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 03 Jul 2026 13:03:03 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=ramchip" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by ramchip in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>> you don't get bugs related to typing because elixir is somehow magic<p>Really? All the Elixir fans were saying that?</p>
]]></description><pubDate>Wed, 03 Jun 2026 21:15:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48390183</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=48390183</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48390183</guid></item><item><title><![CDATA[New comment by ramchip in "What I've Learned (So Far) Building Online Mini Games with Elixir and Swift"]]></title><description><![CDATA[
<p>I love the BEAM and programmed on it for many years, but it really does not provide anything like durable objects.<p>1) It's very difficult to ensure globally serialized ownership with strong consistency in a distributed Erlang cluster when nodes are allowed to fail. Stuff like Horde will let you do some rough "run an instance of this process somewhere in the cluster", but it's eventually consistent (you may have multiple instances at times) and doesn't deal with netsplits well.<p>2) Mnesia is fine to replicate state within a network switch or very reliable LAN, but not over WLAN/Internet. It can enter split brain conditions and require external reconciliation. RabbitMQ suffered from Mnesia problems for many years and ended up replacing it with their own DB implementation using the Raft protocol.</p>
]]></description><pubDate>Wed, 27 May 2026 09:37:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48291810</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=48291810</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48291810</guid></item><item><title><![CDATA[New comment by ramchip in "Content-defined chunking added to Bazel"]]></title><description><![CDATA[
<p>The same is true without CDC, and you can configure a maximum size.</p>
]]></description><pubDate>Sat, 16 May 2026 23:53:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48164854</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=48164854</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48164854</guid></item><item><title><![CDATA[New comment by ramchip in "Erlang/OTP 29.0"]]></title><description><![CDATA[
<p>It's still referred as such through the official documentation: <a href="https://www.erlang.org/faq/introduction.html#idm24" rel="nofollow">https://www.erlang.org/faq/introduction.html#idm24</a><p>You may be thinking of comments like: <a href="https://erlangforums.com/t/should-otp-be-the-standard-library/957/9" rel="nofollow">https://erlangforums.com/t/should-otp-be-the-standard-librar...</a></p>
]]></description><pubDate>Sat, 16 May 2026 04:51:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48156933</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=48156933</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48156933</guid></item><item><title><![CDATA[New comment by ramchip in "Getting arrested in Japan"]]></title><description><![CDATA[
<p>It'd be a pretty horrible system if it was possible to get anyone you dislike tortured for a month by mailing them CSAM they didn't ask for...</p>
]]></description><pubDate>Mon, 11 May 2026 08:39:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48092526</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=48092526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48092526</guid></item><item><title><![CDATA[New comment by ramchip in "My adventure in designing API keys"]]></title><description><![CDATA[
<p>That second hash is called a Message Authentication Code (MAC), it's what the JWT HS256 algorithm does</p>
]]></description><pubDate>Wed, 15 Apr 2026 22:37:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47786253</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=47786253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47786253</guid></item><item><title><![CDATA[New comment by ramchip in "My adventure in designing API keys"]]></title><description><![CDATA[
<p>The purpose of the checksum is to help secret scanners avoid false positives, not to optimize the (extremely rare) case where an API key has a typo</p>
]]></description><pubDate>Wed, 15 Apr 2026 07:44:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47775885</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=47775885</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47775885</guid></item><item><title><![CDATA[New comment by ramchip in "A cryptography engineer's perspective on quantum computing timelines"]]></title><description><![CDATA[
<p>He's obviously not saying that you can "trust blindly" any PQ algorithm out there, just that there are some that have appeared robust over many years of analysis.</p>
]]></description><pubDate>Tue, 07 Apr 2026 08:36:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47672280</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=47672280</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47672280</guid></item><item><title><![CDATA[New comment by ramchip in "The future of version control"]]></title><description><![CDATA[
<p>Looks like it's "Show Base" under the top-level "..." menu when working on a merge conflict<p><a href="https://github.com/microsoft/vscode/issues/155277#issuecomment-1283623303" rel="nofollow">https://github.com/microsoft/vscode/issues/155277#issuecomme...</a></p>
]]></description><pubDate>Sun, 22 Mar 2026 22:41:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47483031</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=47483031</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47483031</guid></item><item><title><![CDATA[New comment by ramchip in "I wasted years of my life in crypto"]]></title><description><![CDATA[
<p>These kind of things are part of transparency log threat models, for example: <a href="https://www.rfc-editor.org/rfc/rfc6962.html#page-24" rel="nofollow">https://www.rfc-editor.org/rfc/rfc6962.html#page-24</a>.</p>
]]></description><pubDate>Tue, 09 Dec 2025 12:52:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=46204412</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=46204412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46204412</guid></item><item><title><![CDATA[New comment by ramchip in "I wasted years of my life in crypto"]]></title><description><![CDATA[
<p>You're describing a transparency log, which doesn't require a blockchain.</p>
]]></description><pubDate>Mon, 08 Dec 2025 04:44:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=46188440</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=46188440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46188440</guid></item><item><title><![CDATA[New comment by ramchip in "Microsoft's lack of quality control is out of control"]]></title><description><![CDATA[
<p>Sometimes it's impossible even with an account. I can't search in English on my phone in Japan. If I go into options and change the language, the moment I click OK, it switches everything right back to Japanese. I know multiple colleagues who've had the same issue for years.</p>
]]></description><pubDate>Mon, 10 Nov 2025 14:04:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=45876121</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45876121</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45876121</guid></item><item><title><![CDATA[New comment by ramchip in "Becoming a compiler engineer"]]></title><description><![CDATA[
<p>It's incredibly rude, and wrong, to assume that a woman was hired because she "checks off a bunch of HR checkboxes" rather than skill or hard work when you know nothing about her.</p>
]]></description><pubDate>Sat, 08 Nov 2025 06:44:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45854666</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45854666</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45854666</guid></item><item><title><![CDATA[New comment by ramchip in "Frozen String Literals: Past, Present, Future?"]]></title><description><![CDATA[
<p>An iolist isn't a string, you can't pass it to the uppercase function for instance. It's really meant for I/O as the name implies. Regular string concatenation is optimized to avoid copying when possible: <a href="https://www.erlang.org/doc/system/binaryhandling.html#constructing-binaries" rel="nofollow">https://www.erlang.org/doc/system/binaryhandling.html#constr...</a></p>
]]></description><pubDate>Wed, 05 Nov 2025 07:18:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=45820275</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45820275</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45820275</guid></item><item><title><![CDATA[New comment by ramchip in "A worker fell into a nuclear reactor pool"]]></title><description><![CDATA[
<p>> This by itself means that it is not potable<p>Do you mean because it's distilled? Distilled water is perfectly safe to drink.</p>
]]></description><pubDate>Mon, 27 Oct 2025 11:54:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=45719936</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45719936</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45719936</guid></item><item><title><![CDATA[New comment by ramchip in "A worker fell into a nuclear reactor pool"]]></title><description><![CDATA[
<p>From: <a href="https://www.vice.com/en/article/a-nuclear-plant-worker-fell-into-a-reactor-pool-and-somehow-survived/" rel="nofollow">https://www.vice.com/en/article/a-nuclear-plant-worker-fell-...</a><p>> According to federal reports, the contractor ingested some of the reactor water before being yanked out, scrubbed down, and checked for radiation. They walked away with only minor injuries and about 300 counts per minute of radiation detected in their hair.<p>> That sounds like a lot, but apparently it isn't terribly serious. He underwent a decontamination scrubdown and was back on the job by Wednesday.</p>
]]></description><pubDate>Sun, 26 Oct 2025 03:29:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=45708918</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45708918</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45708918</guid></item><item><title><![CDATA[New comment by ramchip in "The working-class hero of Bletchley Park you didn't see in the movies"]]></title><description><![CDATA[
<p>One-time pads are not vulnerable to gardening.</p>
]]></description><pubDate>Sun, 19 Oct 2025 22:46:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=45638724</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45638724</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45638724</guid></item><item><title><![CDATA[New comment by ramchip in "Don't Build Multi-Agents"]]></title><description><![CDATA[
<p>Personally I found the article informative and well-written. I had been wondering for a while why Claude Code didn't more aggressively use sub-agents to split work, and it wasn't obvious to me (I don't build agents for a living).</p>
]]></description><pubDate>Mon, 01 Sep 2025 23:30:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=45097542</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45097542</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45097542</guid></item><item><title><![CDATA[New comment by ramchip in "Don't Build Multi-Agents"]]></title><description><![CDATA[
<p>I've done a lot of Erlang and I don't see the relation? Supervisors are an error isolation tool, they don't perform the work, break it down, combine results, or act as a communication channel. It's kind of the point that supervisors don't do much so they can be trusted to be reliable.</p>
]]></description><pubDate>Mon, 01 Sep 2025 22:52:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=45097320</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45097320</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45097320</guid></item><item><title><![CDATA[New comment by ramchip in "Why tail-recursive functions are loops"]]></title><description><![CDATA[
<p>If you dereference it you get back an integer, not a variable. A variable is a name that identifies a value; the pointer points to the value, not to the name.</p>
]]></description><pubDate>Fri, 29 Aug 2025 14:03:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=45064292</link><dc:creator>ramchip</dc:creator><comments>https://news.ycombinator.com/item?id=45064292</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45064292</guid></item></channel></rss>