<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: amitp</title><link>https://news.ycombinator.com/user?id=amitp</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 30 Oct 2026 04:15:02 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=amitp" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by amitp in "Emacs Turns 50"]]></title><description><![CDATA[
<p>And with llm-buddy [1] everything I type in emacs gets sent to an LLM, which makes it even <i>more</i> valuable to do more things in emacs.<p>[1] <a href="https://github.com/ahyatt/llm-buddy" rel="nofollow">https://github.com/ahyatt/llm-buddy</a></p>
]]></description><pubDate>Wed, 28 Oct 2026 17:19:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=50277138</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=50277138</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50277138</guid></item><item><title><![CDATA[New comment by amitp in "US agency approves Amazon Leo’s $11.5B acquisition of Globalstar"]]></title><description><![CDATA[
<p>:-)<p>Tangent: SRE was very color-heavy and that led to some long ANSI sequences. From the recently decompiled source [1] you can see that I tried to pick shorter ANSI sequences when I could. In particular, going from color 0x0* to 0x1* we could save 1 byte, and going back to the default white on black we could save between 1 and 4 bytes. But if you're bandwidth limited there's also an option to turn off color entirely.<p>[1] <a href="https://github.com/joeshaw/sre-reconstructed/blob/main/src/stream.cpp#L185" rel="nofollow">https://github.com/joeshaw/sre-reconstructed/blob/main/src/s...</a></p>
]]></description><pubDate>Wed, 28 Oct 2026 17:10:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=50276938</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=50276938</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50276938</guid></item><item><title><![CDATA[New comment by amitp in "English: A vs. An"]]></title><description><![CDATA[
<p>I think it'd be reasonable to keep uber, but I had dropped it because it wasn't in /usr/share/dict/words on Linux or Mac. That was a quick&dirty way to filter out proper names, but it misses some other words too.</p>
]]></description><pubDate>Sun, 20 Sep 2026 18:56:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=49778817</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49778817</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49778817</guid></item><item><title><![CDATA[New comment by amitp in "English: A vs. An"]]></title><description><![CDATA[
<p>I added the word list to the main article. The rule is for two words, ubiquitous and ubiquity, so maybe the rule should be tightened to word.startswith("ubiqu").<p>Uber and Ubuntu are not in my word list (which attempts to exclude proper nouns), but maybe I should add uber, uberant, uberous, uberously, uberousness, uberty, uberties.<p>I had a self-imposed time limit of 1 day for this side quest, but there are lots of ideas in the comments here so someday I may come back to this project and give it another day.</p>
]]></description><pubDate>Sun, 20 Sep 2026 18:51:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=49778765</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49778765</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49778765</guid></item><item><title><![CDATA[New comment by amitp in "English: A vs. An"]]></title><description><![CDATA[
<p>*hones</p>
]]></description><pubDate>Sun, 20 Sep 2026 15:09:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49776628</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49776628</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49776628</guid></item><item><title><![CDATA[New comment by amitp in "English: A vs. An"]]></title><description><![CDATA[
<p>Good catch — "homes" wasn't in my /usr/share/dict/words for some reason so I missed this case!</p>
]]></description><pubDate>Sun, 20 Sep 2026 11:43:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=49774831</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49774831</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49774831</guid></item><item><title><![CDATA[New comment by amitp in "English: A vs. An"]]></title><description><![CDATA[
<p>That is my favorite podcast of all time!</p>
]]></description><pubDate>Sun, 20 Sep 2026 11:38:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=49774808</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49774808</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49774808</guid></item><item><title><![CDATA[New comment by amitp in "Show HN: Rotation via Double Reflection"]]></title><description><![CDATA[
<p>Bookmarked! I love the interactive diagrams! I love that you have a touch-point larger than the drag handle. And I'm impressed that the label placement takes care to avoid the axes. Some feedback:<p>You have vector s in blue, and then vector u in teal, and then vector v in orange.<p>In the diagram, it's "Subject", "First Reflector", "Second Reflector". I think it'd be better if these labels were "Subject s", "First Reflector u", "Second Reflector v" so that we can match up the text to the diagram even without color.<p>Later you have "The pair of vector u and v is called a rotor". But these colors do not match the earlier colors, and it makes it hard to connect to the diagram.<p>In the 3D diagram, I think it would be better if you used the same color scheme as for the 2D diagram. Same for the circular reflection diagram.<p>Suggested colors:<p>- subject s - orange in every diagram (currently blue, blue, blue)<p>- first reflector - teal in every diagram (currently teal, magenta, pink)<p>- second reflector - blue in every diagram (currently orange, teal, orange)<p>This makes the rotor colors more similar to each other than to the subject.</p>
]]></description><pubDate>Sun, 23 Aug 2026 16:03:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=49409901</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49409901</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49409901</guid></item><item><title><![CDATA[New comment by amitp in "Differential Heuristics"]]></title><description><![CDATA[
<p>Thanks — yes, I'm still struggling to find a good way to explain the colors. The landmark is green. The blue tiles are the savings — the difference between using the landmark and not using it. I'll work on a different wording or maybe a visualization.<p>Changing the graph is another optimization that's commonly used. A graph of rooms is far smaller than a graph of tiles, and you can precompute paths on the small graph. The landmark heuristic can work on that graph too, although with the small examples on the page you probably wouldn't need to.</p>
]]></description><pubDate>Fri, 14 Aug 2026 16:31:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=49301051</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49301051</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49301051</guid></item><item><title><![CDATA[New comment by amitp in "Differential Heuristics"]]></title><description><![CDATA[
<p>Yes, it's a bit weird! There are <i>also</i> optimizations that do what you describe, with landmarks along the way, but at least at the time I learned about it, road map pathfinding was using landmarks behind the target.</p>
]]></description><pubDate>Fri, 14 Aug 2026 16:28:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49301014</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49301014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49301014</guid></item><item><title><![CDATA[New comment by amitp in "Improving Heuristics for A* Pathfinding"]]></title><description><![CDATA[
<p>Good catch. I was thinking people would read that after they have moved the green L but I should handle both before and after moving L.</p>
]]></description><pubDate>Sun, 09 Aug 2026 03:46:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=49228259</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49228259</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49228259</guid></item><item><title><![CDATA[New comment by amitp in "Improving Heuristics for A* Pathfinding"]]></title><description><![CDATA[
<p>The landmark data can be calculated in a background thread. For DF I imagine you'd have a background thread running all the time, updating one landmark every so often. But what happens if you look for a path before the landmark data is updated? I haven't tested this yet but I believe this is how it'd work:<p>1. If the cost of a tile decreases, the precalculated heuristic will be too high, so A* might find a non-shortest but ok path. In game, you can think of the dorf as following the path they already know about, because they don't yet know that there's a shorter way.<p>2. If the cost of a tile increases, the precalculated heuristic will be too low, so A* will find the optimal path but it will take a little bit longer (still not as long as if we weren't using this heuristic). In game, you can think of the dorf as following the path they already know about, but running into a wall, so then they find a path around it.</p>
]]></description><pubDate>Sun, 09 Aug 2026 03:43:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=49228247</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=49228247</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49228247</guid></item><item><title><![CDATA[New comment by amitp in "Anker made its own chip to bring AI to all its products"]]></title><description><![CDATA[
<p>I found <a href="https://www.youtube.com/watch?v=a_rAXF_btvE" rel="nofollow">https://www.youtube.com/watch?v=a_rAXF_btvE</a>  to be more balanced than the LTT video, but I think it mostly depends on your expectations of the cameras. The videos themselves are stored locally, not in the cloud. But if you have thumbnails turned on in the notifications, then the thumbnails have to be stored somewhere temporarily (I think this is an Apple/Google requirement), and they're being stored on a cloud server rather than in your home network (which would require opening up a port).</p>
]]></description><pubDate>Thu, 23 Apr 2026 02:09:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47871581</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=47871581</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47871581</guid></item><item><title><![CDATA[New comment by amitp in "HarfBuzz Slug Support with WebGL"]]></title><description><![CDATA[
<p>Slug preserves the vector shapes. MSDF first converts to a texture, which can lose small details. How much depends on the size of your texture <i>and</i> the complexity of the font. I expect MSDF will never look better than Slug.<p>However,  MSDF can handle lots of distance-based effects (glow, shadow, outline, gradient, etc.)[1], and I don't think Slug does that. And MSDF is constant time whereas (I think) Slug is going to vary depending on the complexity of the font.<p>The Slug paper [2] says:<p><pre><code>  All of the techniques that store data in a texture atlas are inherently using a discrete
  sampling of what is actually an infinitely precise description of a glyph outline. This
  inescapably leads to limitations that can be mitigated by increasing the resolution of
  the texture atlas, but that can never be completely removed. For applications that
  need to render a wide range of characters at potentially large font sizes, a texture atlas
  capable of producing glyphs at an acceptable level of quality may have prohibitively
  large storage requirements.
</code></pre>
[1] <a href="https://www.redblobgames.com/articles/sdf-fonts/#demo" rel="nofollow">https://www.redblobgames.com/articles/sdf-fonts/#demo</a><p>[2] <a href="https://jcgt.org/published/0006/02/02/" rel="nofollow">https://jcgt.org/published/0006/02/02/</a></p>
]]></description><pubDate>Sat, 11 Apr 2026 18:21:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47732806</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=47732806</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47732806</guid></item><item><title><![CDATA[New comment by amitp in "Writing a Guide to SDF Fonts"]]></title><description><![CDATA[
<p>Thanks!</p>
]]></description><pubDate>Fri, 27 Feb 2026 21:41:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47186045</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=47186045</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47186045</guid></item><item><title><![CDATA[New comment by amitp in "Writing a Guide to SDF Fonts"]]></title><description><![CDATA[
<p>I originally had that near the top but in one of the rewrites I moved the papers to the end — <a href="https://www.redblobgames.com/articles/sdf-fonts/#appendix" rel="nofollow">https://www.redblobgames.com/articles/sdf-fonts/#appendix</a></p>
]]></description><pubDate>Fri, 27 Feb 2026 20:51:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47185419</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=47185419</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47185419</guid></item><item><title><![CDATA[New comment by amitp in "Never buy a .online domain"]]></title><description><![CDATA[
<p>Some of these banks are ridiculous. HDFC bank insists that I send them my photo id, address, phone number, and my Indian id number to prove that I'm not their customer. I tried explaining that I don't have an Indian id number because I don't live in India but they insisted they can't help me unless I provide all of this. Then they sent me legal notices threatening me for not paying "my" bills. I send all their stuff to spam now.</p>
]]></description><pubDate>Fri, 27 Feb 2026 16:37:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47182528</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=47182528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47182528</guid></item><item><title><![CDATA[New comment by amitp in "Command K Bars"]]></title><description><![CDATA[
<p>Also, emacs M-x from 1980 or maybe TECO's extended command from 1978 (learned these from Bobbie Chen who wrote <a href="https://digitalseams.com/blog/why-do-sublime-text-and-vs-code-use-ctrl-shift-p-for-the-command-bar" rel="nofollow">https://digitalseams.com/blog/why-do-sublime-text-and-vs-cod...</a>)</p>
]]></description><pubDate>Tue, 13 Jan 2026 16:10:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=46602923</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=46602923</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46602923</guid></item><item><title><![CDATA[New comment by amitp in "Interview with RollerCoaster Tycoon's Creator, Chris Sawyer (2024)"]]></title><description><![CDATA[
<p>Nice interview! I didn't realize there was inspiration from <i>Theme Park</i> [1], a game from Demis Hassabis (DeepMind).<p>[1] <a href="https://en.wikipedia.org/wiki/Theme_Park_(video_game)" rel="nofollow">https://en.wikipedia.org/wiki/Theme_Park_(video_game)</a></p>
]]></description><pubDate>Wed, 03 Dec 2025 18:29:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=46138082</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=46138082</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46138082</guid></item><item><title><![CDATA[New comment by amitp in "Procedural Island Generation (III)"]]></title><description><![CDATA[
<p>BTW in the next article the author goes into wind, evaporation, orographic rainfall, rivers, biomes. But not ocean current or tectonic activity.<p>There's a different blog series that does go into plate tectonics: <a href="https://frozenfractal.com/blog/2023/11/13/around-the-world-2-plate-tectonics/" rel="nofollow">https://frozenfractal.com/blog/2023/11/13/around-the-world-2...</a><p>Coincidentally Civ 7 just announced they're using plates with voronoi for their new map generator.</p>
]]></description><pubDate>Sun, 28 Sep 2025 00:24:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=45400632</link><dc:creator>amitp</dc:creator><comments>https://news.ycombinator.com/item?id=45400632</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45400632</guid></item></channel></rss>