<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: diekhans</title><link>https://news.ycombinator.com/user?id=diekhans</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 04 Aug 2026 00:23:20 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=diekhans" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by diekhans in "Prevent cognitive debt by manually retyping LLM-generated code"]]></title><description><![CDATA[
<p>Would one retype assembly language for C generate code?<p>Having LLMs write out their design and reviewing it seems more efficient. Have LLMs, maybe with a different model, check that the implementation meets the design.</p>
]]></description><pubDate>Mon, 03 Aug 2026 11:58:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=49154592</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=49154592</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49154592</guid></item><item><title><![CDATA[New comment by diekhans in "SQLite's documentation about its durability properties is unclear"]]></title><description><![CDATA[
<p>It seems like a bug report on what is not clear in the documentation would be highly useful.</p>
]]></description><pubDate>Fri, 29 Aug 2025 20:00:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=45068720</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=45068720</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45068720</guid></item><item><title><![CDATA[New comment by diekhans in "Show HN: Refine – A Local Alternative to Grammarly"]]></title><description><![CDATA[
<p>No API to hook into one's favorite tools, such as emacs.</p>
]]></description><pubDate>Mon, 14 Jul 2025 15:11:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=44561137</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=44561137</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44561137</guid></item><item><title><![CDATA[New comment by diekhans in "A 37-year-old wanting to learn computer science"]]></title><description><![CDATA[
<p><a href="https://www.norvig.com/21-days.html" rel="nofollow">https://www.norvig.com/21-days.html</a></p>
]]></description><pubDate>Sat, 05 Jul 2025 15:52:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=44473575</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=44473575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44473575</guid></item><item><title><![CDATA[New comment by diekhans in "Jane Street's sneaky retention tactic"]]></title><description><![CDATA[
<p>This is likely true for many companies.  However, it is also a metric for what type of working environment it will be.  I value being able to learn quickly and creativity over pre-training.</p>
]]></description><pubDate>Sat, 28 Jun 2025 19:04:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=44407256</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=44407256</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44407256</guid></item><item><title><![CDATA[New comment by diekhans in "Jane Street's sneaky retention tactic"]]></title><description><![CDATA[
<p>The article doesn't understand programmers.  People will stay because they are passionate about OCaml and there are not a lot of OCaml jobs.<p>When hiring for a permanent position, I have the expectation that a programmer can learn a new language and environment.  An OCaml programmer for a position that is python or C would be looked on very favorably. Far more attention-getting than “full-stack programmer”.</p>
]]></description><pubDate>Sat, 28 Jun 2025 17:41:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=44406601</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=44406601</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44406601</guid></item><item><title><![CDATA[New comment by diekhans in "A love letter to the CSV format"]]></title><description><![CDATA[
<p>Plus the 64-bit integer problem, really 52-bit integers, due to JS not having integers.</p>
]]></description><pubDate>Thu, 27 Mar 2025 03:18:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=43490078</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=43490078</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43490078</guid></item><item><title><![CDATA[New comment by diekhans in "Debugging memory corruption: who the hell writes "2" into my stack? (2016)"]]></title><description><![CDATA[
<p>Nicely written (and executed).  Worse that my worst memory corruption.</p>
]]></description><pubDate>Tue, 31 Dec 2024 18:38:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=42560754</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=42560754</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42560754</guid></item><item><title><![CDATA[New comment by diekhans in "Cognitive load is what matters"]]></title><description><![CDATA[
<p>Hard rules are the problem. There is a lot of "it depends."<p>After over 40 years of programming, I continue to reduce the size of functions and find it easier to write and understand when I return to them. Ten lines are now a personal guideline.<p>However, a linear function with only tiny loops or conditionals can be easily understood when hundreds of lines are long, but not so much with nested conditionals and loops, where there is natural decomposition into functions.<p>I observed that the same guidelines became rules problems when test coverage became popular. They soon became metrics rather than tools to think about code and tests.   People became reluctant to add sanity check code for things that could should never happen because it brought down code coverage.</p>
]]></description><pubDate>Thu, 26 Dec 2024 20:40:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=42517627</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=42517627</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42517627</guid></item><item><title><![CDATA[New comment by diekhans in "Ask HN: What do you use to backup your VMs?"]]></title><description><![CDATA[
<p>I have had good luck with duplicacy for cloud backup: <a href="https://duplicacy.com/" rel="nofollow">https://duplicacy.com/</a></p>
]]></description><pubDate>Sun, 29 Sep 2024 00:14:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=41683807</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=41683807</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41683807</guid></item><item><title><![CDATA[New comment by diekhans in "Circos – Circular Visualization"]]></title><description><![CDATA[
<p>Circos is useful when the data is sparse and quickly becomes extremely time-consuming to near-impossible to interpret.  The most you can say is "wow, there is a lot going on".<p>I know in five seconds if a Circos plot is worth looking at.</p>
]]></description><pubDate>Tue, 09 Jul 2024 21:46:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=40921575</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=40921575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40921575</guid></item><item><title><![CDATA[New comment by diekhans in "Show HN: Brutalist Hacker News – A HN reader inspired by brutalist web design"]]></title><description><![CDATA[
<p>This is awesome!!</p>
]]></description><pubDate>Sun, 07 Apr 2024 03:00:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=39957798</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39957798</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39957798</guid></item><item><title><![CDATA[New comment by diekhans in "Go's Error Handling Is Perfect"]]></title><description><![CDATA[
<p>Thanks for the reply.<p>I try to use exception chaining to create a message that is useful for the user
to actually debug the problem (solution-directed error message).<p>The classic toy case is either getting back "permission denied" or "can not open foo" but not both.  Chaining of error messages gives a straightforward mechanism for this.<p>Then, the high-level text, along with the caused-by messages, is displayed without a stack trace to hopefully give the user enough information to address an issue.<p>Chaining can be done with explicitly returned errors as well as exceptions.  The hard part is actually thinking about "is this use to the end user"</p>
]]></description><pubDate>Sat, 06 Apr 2024 01:37:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=39949254</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39949254</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39949254</guid></item><item><title><![CDATA[New comment by diekhans in "Go's Error Handling Is Perfect"]]></title><description><![CDATA[
<p>The point of chaining exceptions is to add information to an error result.  It prevents one from having to pass down information to produce an error message that makes sense to the user.</p>
]]></description><pubDate>Fri, 05 Apr 2024 18:40:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=39945610</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39945610</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39945610</guid></item><item><title><![CDATA[New comment by diekhans in "Happy birthday APFS, 7 years old today"]]></title><description><![CDATA[
<p>No data checksumming is one of the main reasons not to trust APFS for valuable data.  Maybe it is fine on Apple SSDs, but what about terabytes of data on external disks?<p>Why checksum metadata if the SSD is so safe?</p>
]]></description><pubDate>Thu, 28 Mar 2024 00:03:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=39846171</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39846171</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39846171</guid></item><item><title><![CDATA[New comment by diekhans in "Pipexec – Handling pipe of commands like a single command"]]></title><description><![CDATA[
<p>It's an interesting package, and I have some of the use cases it appears to address.  However, the documentation is inadequate to quickly understand how to robustly build some of the more complex cases.  In particular, how to build bash-style process substitution.  Robust here is the pipeline exits non-zero if any of the substituted processes fail, as demonstrated by this example:<p><pre><code>    #!/bin/bash
    set -beEu -o pipefail
    cat <(date) <(false)
    echo did not exit non-zero
</code></pre>
If this is addressed, it would be worth more time to figure out Pipexec.</p>
]]></description><pubDate>Sun, 10 Mar 2024 19:26:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=39661820</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39661820</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39661820</guid></item><item><title><![CDATA[New comment by diekhans in "Duplicity: Encrypted bandwidth-efficient backup"]]></title><description><![CDATA[
<p>I have been having great luck with incremental backups with the very similar named Duplicacy <a href="https://duplicacy.com/" rel="nofollow">https://duplicacy.com/</a></p>
]]></description><pubDate>Wed, 24 Jan 2024 17:49:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=39120311</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=39120311</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39120311</guid></item><item><title><![CDATA[New comment by diekhans in "Making Software Reliable: The Importance of Testability"]]></title><description><![CDATA[
<p>My view is that automated testing is not a substitute for QA, but an additional tool. It lets QA focus on harder to automated tasks.<p>For unit tests, a developer is going to try something out anyway, so capturing it in a unit test for the future should be just a little extra work.  Also, writing a unit test means the developer has minimally used what they are writing.<p>Higher-level (system) testing, especially with GUIs, can be more work than the value added.  It is a cost trade-off, but ultimately, a human adds value not matter how much automated.<p>AI will help too, but these are also tools.  Drop QA and you are trading off costs for quality.<p>IMHO, not backed up by research.</p>
]]></description><pubDate>Wed, 20 Dec 2023 18:24:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=38711860</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=38711860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38711860</guid></item><item><title><![CDATA[New comment by diekhans in "Darktable: Crashing into the wall in slow-motion"]]></title><description><![CDATA[
<p>Darktable is an interesting project and an impressive effort.  However,  serious photographers tend to use Lightroom.  It is just eons beyond Darktable.<p>Sometimes even those of us who love programing want to use software rather than develop it.</p>
]]></description><pubDate>Sat, 25 Nov 2023 17:17:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=38414811</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=38414811</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38414811</guid></item><item><title><![CDATA[New comment by diekhans in "Bad Emacs defaults"]]></title><description><![CDATA[
<p>Setting backup-directory-alist to ((".*" . ".emacs.bak")) keeps the files local to the actually files, without the cognitive overload of being adjacent to the 
edited files.</p>
]]></description><pubDate>Wed, 11 Oct 2023 15:49:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=37846042</link><dc:creator>diekhans</dc:creator><comments>https://news.ycombinator.com/item?id=37846042</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37846042</guid></item></channel></rss>