<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: idahoduncan</title><link>https://news.ycombinator.com/user?id=idahoduncan</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 19 Jun 2026 13:20:47 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=idahoduncan" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by idahoduncan in "Emacs appearances in pop culture"]]></title><description><![CDATA[
<p>I guess so - I use built in TypeScript modes, and integrate with tsc via the built-in LSP client, eglot. Works well. Front-end specialists may disagree.</p>
]]></description><pubDate>Fri, 12 Jun 2026 14:59:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48505043</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=48505043</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48505043</guid></item><item><title><![CDATA[New comment by idahoduncan in "The Emacs Widget Library: A Critique and Case Study"]]></title><description><![CDATA[
<p>~M-x eww~ works nicely too.</p>
]]></description><pubDate>Wed, 14 Jan 2026 08:18:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=46613606</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=46613606</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46613606</guid></item><item><title><![CDATA[New comment by idahoduncan in "10 years of personal finances in plain text files"]]></title><description><![CDATA[
<p>Looks like it's four years for me with beancount.<p><pre><code>    $ git log --oneline --reverse | head -n1
    5f72575 Initial commit: January 2022
</code></pre>
My importers take care of reconciling the common transactions, like train fares and groceries, which means my monthly session takes under an hour. The slow bits are exporting CSV statements from my banks, and reconciling transactions from amazon and the local pet supply store (is it useful in practice to track litter and treats separately? probably not).<p>I'm also yet to migrate to beancount v3.</p>
]]></description><pubDate>Fri, 02 Jan 2026 13:57:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=46464772</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=46464772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46464772</guid></item><item><title><![CDATA[New comment by idahoduncan in "I used to know how to write in Japanese"]]></title><description><![CDATA[
<p>I'm following this approach. One of the most interesting things so far has been observing just how separate recall and production are. There are kanji that I can recognise instantly, and recall meanings and pronunciations, but I can't visualise them at all.</p>
]]></description><pubDate>Fri, 15 Aug 2025 08:43:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=44909986</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=44909986</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44909986</guid></item><item><title><![CDATA[New comment by idahoduncan in "Ask HN: Options for One-Handed Typing"]]></title><description><![CDATA[
<p>It's also apparently cross-platform. Great project!</p>
]]></description><pubDate>Wed, 04 Jun 2025 08:13:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=44178371</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=44178371</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44178371</guid></item><item><title><![CDATA[New comment by idahoduncan in "Ask HN: Options for One-Handed Typing"]]></title><description><![CDATA[
<p>I have this set up using kmonad[1], and the following config. Many punctation marks are obviously missing, but I'm sure they could be added with a little thought. The mirrored layout is toggled by holding the space key.<p><pre><code>    (defalias
      lhs (tap-next-release spc (layer-toggle ytrewq)))
    
    (deflayer ytrewq
      _    _    _    _    _    _    _    _    _    _    _    _    _    _    _    _
           bspc 0    9    8    7    6    _    _    _    _    _    _    _    _    _
           _    p    o    i    u    y    _    _    _    _    _    _    _         _
           ret  ;    l    k    j    h    _    _    _    _    _    _    _    _    _
           lsft /    .    ,    m    n    _    _    _    _    _    _         _    _
      _    _    _    _              _              _    _              _    _    _)

</code></pre>
1. <a href="https://github.com/kmonad/kmonad">https://github.com/kmonad/kmonad</a></p>
]]></description><pubDate>Tue, 03 Jun 2025 21:59:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=44175237</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=44175237</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44175237</guid></item><item><title><![CDATA[New comment by idahoduncan in "The Beam"]]></title><description><![CDATA[
<p>The Strand programming book states that an early version of the Erlang runtime was implemented in Strand (see "13.1: History" <a href="http://www.call-with-current-continuation.org/files/strand-book.pdf#page=304" rel="nofollow">http://www.call-with-current-continuation.org/files/strand-b...</a>), which is an interesting tidbit that I haven't seen come up when the history of Erlang is discussed, like in the featured article.</p>
]]></description><pubDate>Tue, 13 May 2025 09:13:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=43971028</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=43971028</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43971028</guid></item><item><title><![CDATA[New comment by idahoduncan in "Parser Combinators Beat Regexes"]]></title><description><![CDATA[
<p>I do this from time to time as well, although I tend to get hung up on error handling. I would say that it's a simple enough exercise if you don't care too much about reporting parse errors in a meaningful way, although I'd be happy for someone to point out an implementation of error handling that fits into one's head.</p>
]]></description><pubDate>Thu, 10 Apr 2025 09:54:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=43642360</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=43642360</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43642360</guid></item><item><title><![CDATA[New comment by idahoduncan in "Ploopy Classic 2 open source trackball"]]></title><description><![CDATA[
<p>I like that Ploopy are designing and building open-source hardware. I have their Classic (1) trackball, which has been great. I recently got their new trackpad, which is better for me. Having multi-finger gestures (pinch to zoom, swipe back) is nice.</p>
]]></description><pubDate>Thu, 03 Apr 2025 08:14:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=43566485</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=43566485</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43566485</guid></item><item><title><![CDATA[New comment by idahoduncan in "What's New in Emacs 30.1?"]]></title><description><![CDATA[
<p>With Emacs 30 I've stopped compiling from the master branch, preferring the tagged releases.<p><pre><code>    GNU Emacs 30.0.92 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2024-12-03
</code></pre>
It seems that most of the features I was eager to try from the master branch at various times (starting from native comp, then tree-sitter, use-package (although I've started using elpaca instead), modus themes, transient, etc.) have been merged. A lot of great features have been added to Emacs in recent years. Kudos to the maintainers!</p>
]]></description><pubDate>Mon, 24 Feb 2025 13:23:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=43159258</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=43159258</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43159258</guid></item><item><title><![CDATA[New comment by idahoduncan in "Fleng 22 (concurrent logic programming)"]]></title><description><![CDATA[
<p>Can anyone shed light on the difference/overlap between Fleng and Strand, for someone who's reading about concurrent logic programming for the first time?</p>
]]></description><pubDate>Tue, 26 Nov 2024 23:16:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=42251209</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=42251209</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42251209</guid></item><item><title><![CDATA[New comment by idahoduncan in "Seer: A GUI front end to GDB for Linux"]]></title><description><![CDATA[
<p>dape ( <a href="https://github.com/svaante/dape#">https://github.com/svaante/dape#</a> ) is a great option for languages with debuggers implementing the Debug Adapter Protocol. Combined with debugpy it's killed M-x pdb for me, and has a very similar UI to M-x gdb.</p>
]]></description><pubDate>Sat, 16 Nov 2024 12:49:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=42156144</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=42156144</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42156144</guid></item><item><title><![CDATA[New comment by idahoduncan in "What's your favorite RSS feed reader?"]]></title><description><![CDATA[
<p>elfeed in emacs (<a href="https://github.com/skeeto/elfeed">https://github.com/skeeto/elfeed</a>)</p>
]]></description><pubDate>Wed, 28 Aug 2024 13:10:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=41379091</link><dc:creator>idahoduncan</dc:creator><comments>https://news.ycombinator.com/item?id=41379091</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41379091</guid></item></channel></rss>