<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: steveklabnik</title><link>https://news.ycombinator.com/user?id=steveklabnik</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 14 Jun 2026 18:01:03 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=steveklabnik" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by steveklabnik in "Swift at Apple: Migrating the TrueType hinting interpreter"]]></title><description><![CDATA[
<p>Rust does not have a ++ operator, so that name would make no sense.</p>
]]></description><pubDate>Sat, 13 Jun 2026 19:44:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48520712</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48520712</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48520712</guid></item><item><title><![CDATA[New comment by steveklabnik in "Twenty One Zero-Days in FFmpeg"]]></title><description><![CDATA[
<p>unsafe never changes the semantics of anything. Unsafe gives you access to additional features, never changes the meaning of a feature.</p>
]]></description><pubDate>Sat, 13 Jun 2026 16:00:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48518515</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48518515</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48518515</guid></item><item><title><![CDATA[New comment by steveklabnik in "Software is made between commits"]]></title><description><![CDATA[
<p>It is called that because it is literally a git commit. jj might change it to “revision”, though, we’ll see.</p>
]]></description><pubDate>Fri, 12 Jun 2026 01:39:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498797</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48498797</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498797</guid></item><item><title><![CDATA[New comment by steveklabnik in "Software is made between commits"]]></title><description><![CDATA[
<p>Value is of course subjective, but many of jj’s popular features, like undo, are based on this.<p>(I actually think it’s tremendously valuable for a number of reasons but it’s fine to simply disagree about that.)</p>
]]></description><pubDate>Fri, 12 Jun 2026 01:38:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498784</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48498784</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498784</guid></item><item><title><![CDATA[New comment by steveklabnik in "Software is made between commits"]]></title><description><![CDATA[
<p>Yes, jj does make this very nice and easy. It’s the same idea as git, except that “the index” is just another anonymous change, not a distinct feature.</p>
]]></description><pubDate>Fri, 12 Jun 2026 01:36:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498773</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48498773</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498773</guid></item><item><title><![CDATA[New comment by steveklabnik in "Software is made between commits"]]></title><description><![CDATA[
<p>That’s a feature of jj’s integration with Piper, and is not relevant outside of Google, as neither Piper nor that jj integration is available to anyone else.</p>
]]></description><pubDate>Fri, 12 Jun 2026 01:35:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498767</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48498767</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498767</guid></item><item><title><![CDATA[New comment by steveklabnik in "Claude Fable 5: mid-tier results on coding tasks"]]></title><description><![CDATA[
<p>I don’t think that’s relevant? The change is that it will no longer silently downgrade, and will instead be honest that it’s doing it in all cases.</p>
]]></description><pubDate>Fri, 12 Jun 2026 01:34:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=48498755</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48498755</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48498755</guid></item><item><title><![CDATA[New comment by steveklabnik in "Claude Fable 5: mid-tier results on coding tasks"]]></title><description><![CDATA[
<p>Anthropic has reversed that decision. (But that just happened so it might have been true during the article's testing.)</p>
]]></description><pubDate>Thu, 11 Jun 2026 21:20:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48496573</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48496573</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48496573</guid></item><item><title><![CDATA[New comment by steveklabnik in "Waymo Premier"]]></title><description><![CDATA[
<p>I can assure you that Austin drivers do all sorts of terrible things on a far more regular basis.</p>
]]></description><pubDate>Thu, 11 Jun 2026 21:15:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48496518</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48496518</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48496518</guid></item><item><title><![CDATA[New comment by steveklabnik in "Waymo Premier"]]></title><description><![CDATA[
<p>I only recent got my driver's license again, at 40, after it expired a decade ago. Having a car just didn't make financial sense to me (and still doesn't, I just want the option to be able to drive one sometimes).<p>I had to learn pretty quick that, if this trivia topic came up, I'd need to mention "I lived in NYC so long that I just never used it and didn't realize it expired" because otherwise people would assume that I lost it because of too many DUIs.</p>
]]></description><pubDate>Thu, 11 Jun 2026 21:04:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=48496398</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48496398</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48496398</guid></item><item><title><![CDATA[New comment by steveklabnik in "Software is made between commits"]]></title><description><![CDATA[
<p>To be clear, while jj does that, it's entirely local on your machine, and not shared.</p>
]]></description><pubDate>Thu, 11 Jun 2026 20:59:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48496319</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48496319</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48496319</guid></item><item><title><![CDATA[New comment by steveklabnik in "Who Runs Your Rust Future? Hands-On Intro to Async Rust"]]></title><description><![CDATA[
<p>I think it's also good that we did not name it Promise because there are a lot of differences in implementation that really matter, and so if Rust had gone with the same name, some people might be confused about some things.</p>
]]></description><pubDate>Wed, 10 Jun 2026 21:58:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48483274</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48483274</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48483274</guid></item><item><title><![CDATA[New comment by steveklabnik in "C++: The Documentary"]]></title><description><![CDATA[
<p>Rust has multiple qualified compilers for several safety standards, with more in progress.</p>
]]></description><pubDate>Sat, 06 Jun 2026 00:11:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=48420009</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48420009</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48420009</guid></item><item><title><![CDATA[New comment by steveklabnik in "Conventional Commits encourages focus on the wrong things"]]></title><description><![CDATA[
<p>Both of these things are discussed in the article. (changelogs and semver)</p>
]]></description><pubDate>Fri, 05 Jun 2026 19:47:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48417277</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48417277</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48417277</guid></item><item><title><![CDATA[New comment by steveklabnik in "Zig: Build System Reworked"]]></title><description><![CDATA[
<p>You can also roll your own strings in Rust just fine. Take the bstr crate, for example.</p>
]]></description><pubDate>Sat, 30 May 2026 18:17:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48339161</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48339161</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48339161</guid></item><item><title><![CDATA[New comment by steveklabnik in "Announcing Rust 1.96"]]></title><description><![CDATA[
<p>> (I don't know if they've considered adding it)<p>The paper you want to look up is “epochs” (the OG name for editions) but there were questions that never got resolved, and so the proposals are dead for now at least.</p>
]]></description><pubDate>Fri, 29 May 2026 17:09:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48326108</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48326108</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48326108</guid></item><item><title><![CDATA[New comment by steveklabnik in "Announcing Rust 1.96"]]></title><description><![CDATA[
<p>Async engines are one of the worst things you could have chosen as an example. They are wide and varied, with a ton of different tradeoffs for different scenarios. Ones for high performance networking are also complex, requiring tremendous engineering effort, and are massive. Putting something in the stdlib doesn’t magically make something better maintained.<p>Interfaces also do not magically become good or useful. There has been suggestions around some async traits, but no suitable one has actually been found yet. Yes, it has been a very long time, but that’s just how it goes sometimes.</p>
]]></description><pubDate>Fri, 29 May 2026 15:26:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=48324374</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48324374</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48324374</guid></item><item><title><![CDATA[New comment by steveklabnik in "Announcing Rust 1.96"]]></title><description><![CDATA[
<p>The Rust language does not currently have an LLM policy, but the one under discussion is not a total ban.</p>
]]></description><pubDate>Fri, 29 May 2026 15:22:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48324308</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48324308</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48324308</guid></item><item><title><![CDATA[New comment by steveklabnik in "Announcing Rust 1.96"]]></title><description><![CDATA[
<p>That would be a reasonable worry, except that this specific issue has been discussed for like, a decade. It’s the only beef people have. It’s unlikely that they’ll find something else any time soon.</p>
]]></description><pubDate>Fri, 29 May 2026 00:43:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48317517</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48317517</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48317517</guid></item><item><title><![CDATA[New comment by steveklabnik in "What color is your function? (2015)"]]></title><description><![CDATA[
<p>The E | F | G could be two different features, "anonymous sum types" or "union types".<p>TypeScript is an example of a language with union types: <a href="https://www.typescriptlang.org/docs/handbook/unions-and-intersections.html" rel="nofollow">https://www.typescriptlang.org/docs/handbook/unions-and-inte...</a></p>
]]></description><pubDate>Wed, 27 May 2026 14:04:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=48294580</link><dc:creator>steveklabnik</dc:creator><comments>https://news.ycombinator.com/item?id=48294580</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48294580</guid></item></channel></rss>