<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: uasi</title><link>https://news.ycombinator.com/user?id=uasi</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 21 Jun 2026 08:55:05 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=uasi" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by uasi in "Migrating from GNU Stow to Chezmoi"]]></title><description><![CDATA[
<p>You can, but forks or branches need constant merging or rebasing (and sometimes conflict resolution) for each one. Clean/smudge filters are fiddly to set up correctly and almost certainly require shelling out to another program, which could break. The second-to-last thing you need is your hand-rolled solution breaking on a new environment. If and when you need several advanced features that a stable dotfiles manager already covers, why roll your own?</p>
]]></description><pubDate>Fri, 19 Jun 2026 03:58:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48594631</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=48594631</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48594631</guid></item><item><title><![CDATA[New comment by uasi in "Migrating from GNU Stow to Chezmoi"]]></title><description><![CDATA[
<p>Git works until you need conditional logic such as platform-specific files or templating.</p>
]]></description><pubDate>Thu, 18 Jun 2026 20:36:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48591184</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=48591184</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48591184</guid></item><item><title><![CDATA[New comment by uasi in "Upcoming breaking changes for npm v12"]]></title><description><![CDATA[
<p>> pnpm is written in Rust<p>Not just yet. The Rust rewrite of the installation engine is still experimental and available as an opt-in preview[0].<p>[0] <a href="https://github.com/pnpm/pnpm/releases/tag/v11.2.2" rel="nofollow">https://github.com/pnpm/pnpm/releases/tag/v11.2.2</a></p>
]]></description><pubDate>Wed, 10 Jun 2026 08:31:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=48473234</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=48473234</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48473234</guid></item><item><title><![CDATA[New comment by uasi in "Show HN: Context-aware Japanese furigana using Sudachi and ModernBERT"]]></title><description><![CDATA[
<p>Got an incorrect result on my first try. Input was 振り仮名変換器の性能が如何程か試してみよう. It returned 如何(どう)程(ほど) instead of 如何(いか)程(ほど).<p>Regardless, I'm impressed with the tool!</p>
]]></description><pubDate>Fri, 29 May 2026 17:34:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=48326466</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=48326466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48326466</guid></item><item><title><![CDATA[New comment by uasi in "Jujutsu megamerges for fun and profit"]]></title><description><![CDATA[
<p>Even with that workflow jj can help a lot. Haven't you ever been annoyed by situations like, while working on a few features at once, having unrelated changes from different feature branches piling up in the stash? Or wanting to switch to another branch mid-rebase without losing your place? jj's working-copy-as-commit model and its first-class treatment of conflicts address those pain points.</p>
]]></description><pubDate>Tue, 21 Apr 2026 06:11:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47845185</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=47845185</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47845185</guid></item><item><title><![CDATA[New comment by uasi in "Gzip decompression in 250 lines of Rust"]]></title><description><![CDATA[
<p>Those resources were a huge help when I was digging into the DEFLATE algorithm,  thank you!</p>
]]></description><pubDate>Sat, 28 Mar 2026 00:29:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47550201</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=47550201</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47550201</guid></item><item><title><![CDATA[New comment by uasi in "Swift 6.3"]]></title><description><![CDATA[
<p>That number is unfairly exaggerated. The list includes ~40 internal keywords used only by language developers, plus dozens of tokens that would be called preprocessor directives, attributes, or annotations in other languages (e.g. `canImport` as in `#if canImport(...) #endif`; `available` and `deprecated` as in `@available(*, deprecated) func`).</p>
]]></description><pubDate>Thu, 26 Mar 2026 13:30:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47530243</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=47530243</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47530243</guid></item><item><title><![CDATA[New comment by uasi in "Lix – universal version control system for binary files"]]></title><description><![CDATA[
<p>Git can display diff between binary files using custom diff drivers:<p>> Put the following line in your .gitattributes file: *.docx diff=word<p>> This tells Git that any file that matches this pattern (.docx) should use the “word” filter when you try to view a diff that contains changes. What is the “word” filter? You have to set it up [in .gitconfig].<p><a href="https://git-scm.com/book/en/v2/Customizing-Git-Git-Attributes" rel="nofollow">https://git-scm.com/book/en/v2/Customizing-Git-Git-Attribute...</a></p>
]]></description><pubDate>Thu, 22 Jan 2026 05:52:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46715761</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46715761</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46715761</guid></item><item><title><![CDATA[New comment by uasi in "Code and Let Live"]]></title><description><![CDATA[
<p>1.6 *dollars</p>
]]></description><pubDate>Sun, 11 Jan 2026 15:13:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46576396</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46576396</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46576396</guid></item><item><title><![CDATA[New comment by uasi in "Go.sum is not a lockfile"]]></title><description><![CDATA[
<p>I'm not deeply familiar with this, but from reading the `go mod tidy` manual[1], it seems that running `go mod tidy` loads all packages imported from the main module (including transitive dependencies) and records them with their precise versions back to `go.mod`, which should prevent them from being substituted with later versions. Am I understanding this correctly?<p>[1]: <a href="https://go.dev/ref/mod#go-mod-tidy" rel="nofollow">https://go.dev/ref/mod#go-mod-tidy</a></p>
]]></description><pubDate>Thu, 08 Jan 2026 07:39:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=46538370</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46538370</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46538370</guid></item><item><title><![CDATA[New comment by uasi in "Japan to revise romanization rules for first time in 70 years"]]></title><description><![CDATA[
<p>You're right. I looked up 現代仮名遣いの告示 [0] for the first time, and it says 塔（とう） is officially pronounced as "too". I had it backwards - I thought that 塔 is "tou", but due to the varying sounds of う, people could (and often preferred to) pronounce it as "too" in everyday speech.<p>This kind of misconception seems not uncommon. There's an FAQ on NHK's website [1] that addresses the question of whether 言う（いう） is pronounced "iu" or "yuu". The answer is "yuu", and the article make it clear that: "It's not that [iu] is used for polite/careful speech and [yuu] for casual speech - there is no such distinction."<p>I think native speakers learn words by hearing them and seeing them written in hiragana, before learning the underlying rules, so they know "too" is written as とう, but might not realize that とう shouldn't be pronounced as "tou" or いう as "iu". These are at least less obvious than cases like は in こんにちは never being "ha".<p>Personally, if I heard someone say 塔 as "tou" or 言う as "iu", I probably wouldn't count it as incorrect, nor would I even notice the phonetic difference.<p>[0] <a href="https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kijun/naikaku/gendaikana/honbun_dai1.html" rel="nofollow">https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kiju...</a><p>[1] <a href="https://www.nhk.or.jp/bunken/research/kotoba/20160801_2.html" rel="nofollow">https://www.nhk.or.jp/bunken/research/kotoba/20160801_2.html</a></p>
]]></description><pubDate>Wed, 17 Dec 2025 16:45:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=46301888</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46301888</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46301888</guid></item><item><title><![CDATA[New comment by uasi in "Japan to revise romanization rules for first time in 70 years"]]></title><description><![CDATA[
<p>Well, speaking for myself, I internalized how う is pronounced differently in different contexts when I was young, and by now I've almost forgotten there's a difference I need to be conscious of.<p>When I hear /ho:/ in a certain context, "ほう(方)" immediately comes to mind, without noticing that what I heard was a long o. To me it's just the う sound. And if someone pointed to their face while saying /ho:/, I'd think it's the お sound as in "ほお(頬)".</p>
]]></description><pubDate>Wed, 17 Dec 2025 09:06:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=46299752</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46299752</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46299752</guid></item><item><title><![CDATA[New comment by uasi in "Japan to revise romanization rules for first time in 70 years"]]></title><description><![CDATA[
<p>塔 can be pronounced as tou, too, or somewhere between the two. It depends on the speaker, speaking style, and possibly dialect. Either way, Japanese speakers rely more on context and pitch accent than actual pronunciation, so it communicates fine.</p>
]]></description><pubDate>Wed, 17 Dec 2025 05:32:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46298627</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46298627</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46298627</guid></item><item><title><![CDATA[New comment by uasi in "Japan to revise romanization rules for first time in 70 years"]]></title><description><![CDATA[
<p>> 方 and 頬 (hou vs hoo) is a better example.<p>As a native Japanese speaker, this example is eye-opening. I hadn't even realized that the u in 方 is pronounced as /o:/ — I believe most Japanese people haven't either, despite unknowingly pronounce it that way.<p>Also, I have no idea how to Hepburn-romanize 方 vs 頬, 負う vs 王, and 塔 vs 遠. If I had to romanize, I would just write it as whatever the romaji input method understands correctly (hou/hoo, ou/ou, and tou/too, in this case).</p>
]]></description><pubDate>Wed, 17 Dec 2025 05:17:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46298531</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46298531</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46298531</guid></item><item><title><![CDATA[New comment by uasi in "Japanese game devs face font dilemma as license increases from $380 to $20k"]]></title><description><![CDATA[
<p>Although many kanjis can be algorithmically composed, manual adjustment of each character's shape is still necessary for production-grade fonts. For example, if you closely compare the 彳 radical between 徧, 行, and 桁, you'll notice subtle differences in width, stroke length, angle, and margin.</p>
]]></description><pubDate>Wed, 03 Dec 2025 11:44:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=46133382</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=46133382</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46133382</guid></item><item><title><![CDATA[New comment by uasi in "Fastmail desktop app"]]></title><description><![CDATA[
<p>Thunderbird is no different than Electron apps, though. It's built on a browser engine, renders UI written in HTML + CSS (+ XUL partially), consumes ~500MB of RAM on idle, etc.</p>
]]></description><pubDate>Mon, 13 Oct 2025 07:39:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=45565772</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=45565772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45565772</guid></item><item><title><![CDATA[New comment by uasi in "AtomVM, the Erlang virtual machine for IoT devices"]]></title><description><![CDATA[
<p>JVM predates BEAM.</p>
]]></description><pubDate>Sat, 31 May 2025 16:05:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=44145170</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=44145170</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44145170</guid></item><item><title><![CDATA[New comment by uasi in "JavaScript's New Superpower: Explicit Resource Management"]]></title><description><![CDATA[
<p>> create a new global object named "Resource" which has the needed method prototypes that can be overwritten.<p>those methods could conflict with existing methods already used in other ways if you’d want to make an existing class a subclass of Resource.</p>
]]></description><pubDate>Sat, 17 May 2025 09:24:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=44013123</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=44013123</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44013123</guid></item><item><title><![CDATA[New comment by uasi in "Photographs of 19th Century Japan"]]></title><description><![CDATA[
<p>Patchwork robes and non-orange clothes are common in Japanese Buddhism. The styles and colors vary significantly depending on the sect and one’s rank.[1]<p>[1] <a href="https://www2.ntj.jac.go.jp/dglib/contents/learn/edc28/shiru/houe/shurui.html" rel="nofollow">https://www2.ntj.jac.go.jp/dglib/contents/learn/edc28/shiru/...</a></p>
]]></description><pubDate>Thu, 10 Apr 2025 09:31:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=43642253</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=43642253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43642253</guid></item><item><title><![CDATA[New comment by uasi in "Show HN: Nue – Apps lighter than a React button"]]></title><description><![CDATA[
<p>The author uses something like `list.push(...objects)` in his demo code, and I believe this is the culprit. Passing many (~100,000) arguments to a method at once using the spread operator is known to cause a stack overflow, because, in JavaScript, each argument is placed on the call stack.</p>
]]></description><pubDate>Tue, 01 Apr 2025 12:37:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=43546054</link><dc:creator>uasi</dc:creator><comments>https://news.ycombinator.com/item?id=43546054</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43546054</guid></item></channel></rss>