<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: _jackdk_</title><link>https://news.ycombinator.com/user?id=_jackdk_</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 21 Oct 2026 02:13:46 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=_jackdk_" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by _jackdk_ in "The United Kingdom generates less electricity per person than in the 1970s"]]></title><description><![CDATA[
<p>Thanks. I didn't know about the UK specifically but replacing gas boilers with heat pumps makes a lot of sense.</p>
]]></description><pubDate>Wed, 14 Oct 2026 23:39:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=50097170</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=50097170</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50097170</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Passkeys are not a trap"]]></title><description><![CDATA[
<p><a href="https://github.com/keepassxreboot/keepassxc/issues/10407#issuecomment-1994182200" rel="nofollow">https://github.com/keepassxreboot/keepassxc/issues/10407#iss...</a><p>> To be very honest here, you risk having KeePassXC blocked by relying parties<p>This threat, because someone dared to give users control, is completely unacceptable to me.</p>
]]></description><pubDate>Wed, 14 Oct 2026 23:38:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=50097156</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=50097156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50097156</guid></item><item><title><![CDATA[New comment by _jackdk_ in "The United Kingdom generates less electricity per person than in the 1970s"]]></title><description><![CDATA[
<p>> decarbonizing heating<p>I believe this refers to switching to high-efficiency electric heaters like reverse-cycle AC units (also known as "heat pumps"), rather than oil heaters or ducted gas heating.</p>
]]></description><pubDate>Wed, 14 Oct 2026 00:10:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=50080733</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=50080733</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50080733</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Making a GTK application in Haskell, part 1"]]></title><description><![CDATA[
<p>I haven't seen anyone write about wiring FRP systems to traditional GUI toolkits. Do you have a blog?</p>
]]></description><pubDate>Tue, 06 Oct 2026 03:13:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=49973726</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49973726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49973726</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Making a GTK application in Haskell, part 1"]]></title><description><![CDATA[
<p>It really is funny how you go through learning all these fantastic abstractions, and then at the end your line-of-business code ends up looking a lot like it always did. But expecting your data structures and control-flow functions to behave according to laws makes things so much more predictable and easier to wrangle.</p>
]]></description><pubDate>Tue, 06 Oct 2026 03:10:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=49973712</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49973712</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49973712</guid></item><item><title><![CDATA[New comment by _jackdk_ in "How to save a life without knowing CPR"]]></title><description><![CDATA[
<p>That's fair. They teach it as "Dr's ABCD", which is a reasonable mnemonic.</p>
]]></description><pubDate>Mon, 05 Oct 2026 22:28:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=49971709</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49971709</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49971709</guid></item><item><title><![CDATA[New comment by _jackdk_ in "How to save a life without knowing CPR"]]></title><description><![CDATA[
<p>>  The "ABC" of airway, breathing, circulation they taught us may not be current advice.<p>The version taught in Australian first aid classes is DRSABCD: check for (D)anger, check for patient (R)esponse, (S)end for help, (A)irway, (B)reathing, (C)irculation.</p>
]]></description><pubDate>Mon, 05 Oct 2026 21:48:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=49971331</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49971331</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49971331</guid></item><item><title><![CDATA[New comment by _jackdk_ in "GPT-Synopsys: Frontier Intelligence to Revolutionize Chip Design"]]></title><description><![CDATA[
<p>This argument applies to learning to code in general. What is your estimate of the ratio between "just shipped whatever the clanker spat out" vs "interrogated the LLM about its own output†" vs "deliberately interrogates LLMs to learn"?<p>†Untrustworthy, because it will either double down on its own output in its context, or will flip-flop to whatever the user said .</p>
]]></description><pubDate>Fri, 02 Oct 2026 02:05:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=49929169</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49929169</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49929169</guid></item><item><title><![CDATA[New comment by _jackdk_ in "The Board Game of the Alpha Nerds (2014)"]]></title><description><![CDATA[
<p>As in the Steve Jackson one where you have conspiracies and front groups and fronts for those fronts? I wanted to like it but never could get into it; too many fiddly bits placing megabucks all over the power structure and adding up modifiers. Did you play house rules with friends, or does it get better with more plays, or was I just doing something wrong?</p>
]]></description><pubDate>Fri, 25 Sep 2026 20:32:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49849555</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49849555</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49849555</guid></item><item><title><![CDATA[New comment by _jackdk_ in "CCC invites all model citizens to 40C3"]]></title><description><![CDATA[
<p>Unfortunately that's accurate. From the SNB whitepaper linked at <a href="https://www.taler-systems.com/en/digital-currency.html" rel="nofollow">https://www.taler-systems.com/en/digital-currency.html</a> you get to <a href="https://www.snb.ch/de/publications/research/working-papers/2021/working_paper_2021_03" rel="nofollow">https://www.snb.ch/de/publications/research/working-papers/2...</a> and then to <a href="https://www.snb.ch/public/asset/de/www-snb-ch/publications/research/working-papers/2021/working_paper_2021_03/publications0/working_paper_2021_03.n.pdf" rel="nofollow">https://www.snb.ch/public/asset/de/www-snb-ch/publications/r...</a> :<p>> In addition, charging an exchange fee would allow the central bank to implement negative interest rates, if deemed necessary. The central bank could also impose a conversion limit per customer for AML/CFT (“cash” limits) or financial stability reasons (to prevent hoarding or bank runs), if desired.<p>Well goody.<p>The idea of blind signatures is cool, as is the fact that the merchant doesn't need to identify the customer, as is the fact that you could deploy neat local currencies with something like this, but AFAIK you still can't give 20€ to your friend without the exchange knowing and approving, or it becoming a race to see who spends the tokens corresponding to the 20€. And that's not very privacy-preserving.</p>
]]></description><pubDate>Thu, 17 Sep 2026 21:50:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=49747087</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49747087</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49747087</guid></item><item><title><![CDATA[New comment by _jackdk_ in "google.com/goto: Google's anti-scraping update"]]></title><description><![CDATA[
<p>Speaking of page 3, Google's been asking me to sign in if I try to go beyond page 2 of search results. What a wonderful modern WWW we live in.</p>
]]></description><pubDate>Sat, 12 Sep 2026 04:17:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49668766</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49668766</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49668766</guid></item><item><title><![CDATA[New comment by _jackdk_ in "This Month in Ladybird – August 2026"]]></title><description><![CDATA[
<p>I agree with your concerns but also think that a new viable browser engine will be such a benefit to the health of the open web that I'm willing to overlook such irregularities, at least for now. sqlite doesn't accept contributions either and it's done well for itself, and if Ladybird ends up going sour there's always the possibility of a fork. This is similar to my stance towards Firefox: despite the actions of Mozilla Corp, having at least one non-Blink engine is too important, and for friends and family that I care about, working ad-blockers are essential so there's no practical alternative.</p>
]]></description><pubDate>Mon, 07 Sep 2026 22:08:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=49603501</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49603501</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49603501</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Hang on to Your Firefox"]]></title><description><![CDATA[
<p>Firefox is great, and I use and recommend it as daily driver, but the actions of Mozilla leadership are really hard to differentiate from deliberately managed decline. It will be interesting to see what happens as Ladybird matures.</p>
]]></description><pubDate>Tue, 01 Sep 2026 22:33:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49529177</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49529177</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49529177</guid></item><item><title><![CDATA[New comment by _jackdk_ in "“I just chose words carefully”"]]></title><description><![CDATA[
<p>I did, yes. A but ironic indeed.</p>
]]></description><pubDate>Mon, 31 Aug 2026 04:05:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49505440</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49505440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49505440</guid></item><item><title><![CDATA[New comment by _jackdk_ in "“I just chose words carefully”"]]></title><description><![CDATA[
<p>I wonder if at any point during writing, the heroic author of that Super Metroid guide learned that "missiles" are not spent "missles", and decided to own the mistake rather than reword the entire guide.<p>Also, the font used for the monospace examples in the post is a great kick to the nostalgia. Which one is it? It reminds me of <a href="https://int10h.org/oldschool-pc-fonts/fontlist/font?ibm_vga_9x16" rel="nofollow">https://int10h.org/oldschool-pc-fonts/fontlist/font?ibm_vga_...</a></p>
]]></description><pubDate>Sun, 30 Aug 2026 23:43:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=49503966</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49503966</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49503966</guid></item><item><title><![CDATA[New comment by _jackdk_ in "We found a division by zero bug in FFmpeg with a vibecoded fuzzer"]]></title><description><![CDATA[
<p>The blog link I mentioned avoids this cost with literals, by providing using a required type argument to check the string length at compile time without TH. It requires a relatively recent GHC:<p><pre><code>    make :: forall symbol -> (IsNonEmptySymbol symbol) => NonEmptyText

    type family IsNonEmptySymbol symbol :: Constraint where
      IsNonEmptySymbol "" = Unsatisfiable (Text "Expected a non-empty string")
      IsNonEmptySymbol _ = (()::Constraint) -- empty constraint is always satisfied</code></pre></p>
]]></description><pubDate>Fri, 28 Aug 2026 00:51:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=49473131</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49473131</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49473131</guid></item><item><title><![CDATA[New comment by _jackdk_ in "We found a division by zero bug in FFmpeg with a vibecoded fuzzer"]]></title><description><![CDATA[
<p>Liquid Haskell might require you to prove that the divisor is nonzero, but even in standard Haskell there's common idioms for ensuring that a list is non-empty (data NonEmpty a = a :| [a]) or that text is non-empty (newtype NonEmptyText = NonEmptyText Text, with non-exported constructor, helpers like make :: Text -> NonEmptyText, or more advanced tricks like <a href="https://exploring-better-ways.bellroy.com/haskell-koan-type-checked-non-empty-strings.html" rel="nofollow">https://exploring-better-ways.bellroy.com/haskell-koan-type-...</a> ).<p>The big problem preventing this approach from working for numbers is that it's just so cumbersome there. Most of this is because all the arithmetic operators are bundled into a single Num typeclass, and `fromInteger :: Num a => Integer -> a` has a type that's impossible for a "non-zero number" wrapper to satisfy.</p>
]]></description><pubDate>Thu, 27 Aug 2026 21:02:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=49471222</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49471222</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49471222</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Mold: A Massively Parallel Linker"]]></title><description><![CDATA[
<p>Given the passing of nitter, xcancel, etc., thank you for quoting the relevant text.</p>
]]></description><pubDate>Thu, 27 Aug 2026 03:15:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=49459178</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49459178</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49459178</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Fixing a bricked Framework laptop"]]></title><description><![CDATA[
<p>It helped that Apple had a page for their statutory warranty in AU, so I could point to the sticker price of both machines and say "look, Apple acknowledges the consumer guarantee for at least 24 months after purchase and possibly longer, and I have paid a similar amount of money for a Framework".<p><a href="https://www.apple.com/legal/warranty/docs/statutory_warranty-au.pdf" rel="nofollow">https://www.apple.com/legal/warranty/docs/statutory_warranty...</a> (Page 2):<p>> Without limiting consumers rights, Apple will provide its own remedies equivalent to those remedies in the consumer guarantee provisions of the Australian Consumer Law at any time within 24 months of the date of purchase. For the avoidance of doubt, Apple acknowledges that the Australian Consumer Law may provide for remedies beyond 24 months for a number of its products.</p>
]]></description><pubDate>Wed, 19 Aug 2026 07:13:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=49358014</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49358014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49358014</guid></item><item><title><![CDATA[New comment by _jackdk_ in "Finger: the 1971 social network that never died"]]></title><description><![CDATA[
<p>What fun. War stories like this are what keep me coming back to HN.</p>
]]></description><pubDate>Wed, 19 Aug 2026 07:09:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=49357991</link><dc:creator>_jackdk_</dc:creator><comments>https://news.ycombinator.com/item?id=49357991</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49357991</guid></item></channel></rss>