<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: cespare</title><link>https://news.ycombinator.com/user?id=cespare</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 18 Jun 2026 11:38:27 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=cespare" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by cespare in "Kirkland Roundabouts"]]></title><description><![CDATA[
<p>I live a couple of blocks away from this Kirkland roundabout and I drive through it very often -- almost every time I go anywhere. Overall, I like it. My average traversal through the roundabout, for just about any source/destination, seems a bit faster than the pre-roundabout infrastructure and much faster than the temporary so-many-stoplights configuration they had for the past year or two.</p>
]]></description><pubDate>Wed, 17 Jun 2026 04:43:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48565768</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=48565768</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48565768</guid></item><item><title><![CDATA[New comment by cespare in "US Government directive to suspend access to Fable 5 and Mythos 5"]]></title><description><![CDATA[
<p>AFAICT this is not talking about Glasswing stuff. They are saying that they were sent a demonstration of Fable 5 being used/abused in some specific way that led to the "discovery" of some minor, already-known vuln, and that other models can find it too. IOW, they're claiming that the USG's complaint is baseless and dumb.</p>
]]></description><pubDate>Sat, 13 Jun 2026 01:20:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=48511356</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=48511356</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48511356</guid></item><item><title><![CDATA[New comment by cespare in "Efficient String Compression for Modern Database Systems"]]></title><description><![CDATA[
<p>This scheme reminds me of smaz (<a href="https://github.com/antirez/smaz" rel="nofollow">https://github.com/antirez/smaz</a>) but with dynamically generated dictionaries.</p>
]]></description><pubDate>Mon, 02 Feb 2026 05:23:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=46852730</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=46852730</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46852730</guid></item><item><title><![CDATA[New comment by cespare in "Notepad++ hijacked by state-sponsored actors"]]></title><description><![CDATA[
<p>Skirt too short, in other words?<p>I'm going to place the blame on the party committing the crimes, not the person exercising free expression.</p>
]]></description><pubDate>Mon, 02 Feb 2026 04:19:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=46852353</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=46852353</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46852353</guid></item><item><title><![CDATA[New comment by cespare in "Things I don't like in configuration languages"]]></title><description><![CDATA[
<p>Personally, I like configuration languages that don't let you "go nuts" in the first place.</p>
]]></description><pubDate>Mon, 17 Nov 2025 19:34:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=45957273</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=45957273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45957273</guid></item><item><title><![CDATA[New comment by cespare in "Ask HN: How to deal with long vibe-coded PRs?"]]></title><description><![CDATA[
<p>It is 1995. You get an unsolicited email with a dubious business offer. Upon reflection, you decide it's not worth consideration and delete it. No need to wonder how it was sent to you; that doesn't need to influence the way you handle it.<p>No. We need spam filters for this stuff. If it isn't obvious to you yet, it will be soon. (Or else you're one of the spammers.)</p>
]]></description><pubDate>Tue, 04 Nov 2025 06:01:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=45807809</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=45807809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45807809</guid></item><item><title><![CDATA[New comment by cespare in "GitHub Community Discussions: Past year's top 2 requests are to disable Copilot"]]></title><description><![CDATA[
<p>I had to sort by "Top: last year" to see two Copilot-related issues at the top.<p>They are:<p>- <a href="https://github.com/orgs/community/discussions/159749" rel="nofollow">https://github.com/orgs/community/discussions/159749</a><p>- <a href="https://github.com/orgs/community/discussions/169148" rel="nofollow">https://github.com/orgs/community/discussions/169148</a></p>
]]></description><pubDate>Mon, 08 Sep 2025 04:25:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=45164622</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=45164622</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45164622</guid></item><item><title><![CDATA[New comment by cespare in "To be a better programmer, write little proofs in your head"]]></title><description><![CDATA[
<p>I really identify with this way of thinking. One domain where it is especially helpful is writing concurrent code. For example, if you have a data structure that uses a mutex, what are the invariants that you are preserving across the critical sections? Or when you're writing a lock-free algorithm, where a proof seems nearly required to have any hope of being correct.</p>
]]></description><pubDate>Tue, 15 Jul 2025 18:27:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=44574349</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=44574349</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44574349</guid></item><item><title><![CDATA[New comment by cespare in "Student rocket group shatters amateur space record"]]></title><description><![CDATA[
<p>I was trying to understand how an altitude of 470,000 ft compares to other things, so I looked up a few numbers.<p>470k feet is 143 km. The altitude record for an air-breathing aircraft is 38 km. There are some very low earth orbit satellites that orbit in the sub-200 km range (<a href="https://en.wikipedia.org/wiki/Very_low_Earth_orbit" rel="nofollow">https://en.wikipedia.org/wiki/Very_low_Earth_orbit</a>). The ISS orbits at about 400 km and typical LEO is 800 km. ICBMs have an apogee altitude of 1000 km or more.<p>(Of course, the energy required to get up to some altitude is only a small fraction of the energy required to get into orbit at that altitude. <a href="https://what-if.xkcd.com/58/" rel="nofollow">https://what-if.xkcd.com/58/</a> is a relevant read.)</p>
]]></description><pubDate>Tue, 03 Dec 2024 07:46:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=42303862</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=42303862</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42303862</guid></item><item><title><![CDATA[The Tool Cache Manifesto]]></title><description><![CDATA[
<p>Article URL: <a href="https://ctrl-c.us/posts/tool-cache">https://ctrl-c.us/posts/tool-cache</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41443188">https://news.ycombinator.com/item?id=41443188</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 04 Sep 2024 08:25:51 +0000</pubDate><link>https://ctrl-c.us/posts/tool-cache</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=41443188</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41443188</guid></item><item><title><![CDATA[New comment by cespare in "Robots on Lake Michigan beaches to prevent drownings"]]></title><description><![CDATA[
<p><a href="https://archive.is/Kal3q" rel="nofollow">https://archive.is/Kal3q</a></p>
]]></description><pubDate>Mon, 24 Jun 2024 19:31:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=40779736</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=40779736</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40779736</guid></item><item><title><![CDATA[New comment by cespare in "Waymo outperforms comparable human benchmarks over 7M+ miles"]]></title><description><![CDATA[
<p>I guess to me it seems like common sense that a system that has substantially fewer crashes also has substantially fewer deaths. Maybe we can't make definitive statements about the expected number of deaths yet, but I think the most reasonable best guess with the information we have is that waymo deaths will be much lower.<p>The alternative requires a scenario where waymo is especially likely to get into fatal accidents while being very good at avoiding non-fatal ones, right? Seems far-fetched.</p>
]]></description><pubDate>Thu, 21 Dec 2023 21:12:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=38727016</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=38727016</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38727016</guid></item><item><title><![CDATA[New comment by cespare in "Application-specific terminals"]]></title><description><![CDATA[
<p>I've done this for a few years as well. I use a terminal+tmux for most work including quickly editing files here and there but for some reason when I get to "proper" focus-mode programming my brain just wants a separate "application" to look at. And usually the terminal is on my secondary monitor while the "editor" terminal is full-screen on the main monitor.<p>I used to gvim but realized that I was getting almost no benefit (and occasionally the differences between gvim and my terminal caused minor annoyances).<p>Two things I do that help in this regard:<p>I use a tweaked config for the "editor" instance of the terminal that has a slightly different background color from my main terminal. This keeps them separate in my mind.<p>I use dedicated shortcuts for focusing each application I use (browser, terminal, slack, etc) and the "editor" terminal has its own shortcut. (The --class flag that the post mentions kitty has would be pretty helpful in this regard. My terminal doesn't have that so my shortcuts are based on title, which works well enough most of the time.)</p>
]]></description><pubDate>Wed, 20 Sep 2023 17:35:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=37587130</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=37587130</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37587130</guid></item><item><title><![CDATA[New comment by cespare in "Can Dell’s 6K monitor beat their 8K monitor?"]]></title><description><![CDATA[
<p>I don't think I'm in any of those groups.<p>I own a variety of monitors and can easily tell the difference between 60hz and 120hz. All things being equal, I of course prefer 120hz (or 165hz as some of my gaming monitors support).<p>I also own monitors at resolutions from 1440p to 4k.<p>For doing work (programming, where I'm mostly looking at text), resolution makes a <i>huge</i> difference. I only do coding on high DPI screens and I would upgrade to 5k or 6k or 8k displays if I were confident that my hardware and OS would support them well. (TFA was very helpful in that respect.) In these settings, high refresh rate makes only a marginal difference to my experience.<p>For gaming, refresh rate makes a much bigger difference, and resolution makes a somewhat smaller difference -- my hardware can't reasonably drive many of the games I play at 4k or higher anyway. So I just use cheaper, lower-resolution monitors that operate at high refresh rates for gaming.<p>Someday I guess I'll just be able to spend $300 for an 8k monitor at 240hz and then I won't have to make this kind of choice. (In fact, in the several years since I last bought gaming hardware I think the options for high-refresh-rate 4k monitors have gotten much better; I might use 4k for gaming if I were buying today.)<p>But for now, I'll always pick resolution over refresh rate for doing work, and it's not because I can't tell the difference.</p>
]]></description><pubDate>Mon, 03 Jul 2023 23:55:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=36580410</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=36580410</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36580410</guid></item><item><title><![CDATA[New comment by cespare in "European parliament VP taken into custody"]]></title><description><![CDATA[
<p>Seems intentional. "The trick is not [ignoring the bad thing]".</p>
]]></description><pubDate>Sat, 10 Dec 2022 18:10:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=33935002</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=33935002</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33935002</guid></item><item><title><![CDATA[New comment by cespare in "Physical buttons outperform touchscreens in new cars, test finds"]]></title><description><![CDATA[
<p>Well that's partly sampling bias. You're not likely to own a Tesla if you hate the touch controls. My wife and I went through the car buying process this year and test drove a Model Y. I was pretty meh on the touch interface and my wife hated it. We ended up with a non-Tesla EV.</p>
]]></description><pubDate>Wed, 17 Aug 2022 21:29:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=32501959</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=32501959</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32501959</guid></item><item><title><![CDATA[New comment by cespare in "Negative dentries, 20 years later"]]></title><description><![CDATA[
<p>My conclusion at the time was that it was not, strictly speaking, a bug. It seemed to be a sharp edge that was WAI.<p>Considering it again now, I <i>do</i> think it's essentially a bug, but it seems to be a known thing at this point. What I described is the same issue addressed by this unmerged patch: <a href="https://lkml.org/lkml/2017/9/18/739" rel="nofollow">https://lkml.org/lkml/2017/9/18/739</a> (see discussion here: <a href="https://lwn.net/Articles/814535/" rel="nofollow">https://lwn.net/Articles/814535/</a>). And it's mentioned in the article in this HN link:<p>> Those dentries still take up valuable memory, and they can create other problems (such as soft lockups) as well.</p>
]]></description><pubDate>Thu, 14 Apr 2022 01:03:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=31022266</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=31022266</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31022266</guid></item><item><title><![CDATA[New comment by cespare in "Negative dentries, 20 years later"]]></title><description><![CDATA[
<p>Yeah, I also moved the tempfiles to a more appropriate location at the same time.</p>
]]></description><pubDate>Tue, 12 Apr 2022 18:26:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=31006508</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=31006508</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31006508</guid></item><item><title><![CDATA[New comment by cespare in "Negative dentries, 20 years later"]]></title><description><![CDATA[
<p>I became intimately familiar with negative dentries while debugging a slow service deploy a few years ago.<p>A deploy that was normally very fast would sometimes hang for a few minutes during a phase where all it had to do was delete the old application directory and move the new one into place.<p>Turned out that the application was writing a bunch of tempfiles into the cwd and then immediately deleting them. Nothing ever touched that directory while the negative dentries accumulated for weeks or months. When someone finally deployed, the first rmdir that came along bore the cost of deleting all those negative dentries. It hung for seconds or minutes while the kernel essentially cleared out the entire dcache, deleting linked list elements one by one. It showed up in perf as being stuck inside shrink_dcache_parent.<p>This is actually easy to reproduce:<p><pre><code>  $ mkdir /tmp/foo
  $ touch /tmp/nodelete
  # create and delete 100k files
  $ for i in $(seq 1 10); do bash -c 'for i in $(seq 1 10000); do rm $(mktemp /tmp/foo/XXXXXX); done' &; done; wait
  ...
  $ time rmdir /tmp/foo
  rmdir: failed to remove '/tmp/foo': Directory not empty
  rmdir /tmp/foo  0.00s user 0.02s system 91% cpu 0.024 total
  $ time rmdir /tmp/foo
  rmdir: failed to remove '/tmp/foo': Directory not empty
  rmdir /tmp/foo  0.00s user 0.00s system 81% cpu 0.003 total
</code></pre>
Both rmdirs fail, but the first one takes 24ms. If you create and delete more files, it takes longer and longer.<p>At some point we probably would've noticed the memory leak as well (I found an 18 GB slab on one host while this was happening) but the machines in question have huge amounts of ram.<p>I worked around the issue by making the application reuse tempfile names.</p>
]]></description><pubDate>Tue, 12 Apr 2022 09:14:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=31000298</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=31000298</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31000298</guid></item><item><title><![CDATA[New comment by cespare in "Go mod’s lesser known features"]]></title><description><![CDATA[
<p>> Requires a domain name to be the first part of the module identifier<p>This is only true if you want the module to be publicly 'go get'-able. Private modules can be named whatever you want.<p>(Some tools use whether or not the first import path segment contains a '.' as a heuristic for "is this package stdlib", and those won't work correctly on a module that doesn't use a dot. There's a proposal, not yet accepted, to document this as a naming requirement for modules: <a href="https://github.com/golang/go/issues/32819" rel="nofollow">https://github.com/golang/go/issues/32819</a> This is of course a looser requirement than "must be a domain name".)</p>
]]></description><pubDate>Fri, 01 Apr 2022 07:50:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=30876063</link><dc:creator>cespare</dc:creator><comments>https://news.ycombinator.com/item?id=30876063</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30876063</guid></item></channel></rss>