<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: cxr</title><link>https://news.ycombinator.com/user?id=cxr</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 06 Nov 2026 16:18:37 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=cxr" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by cxr in "A new Go API for JSON"]]></title><description><![CDATA[
<p>> there should be an easier way to "pin" a dependency, other than vendoring<p>You left out the part that explains why.</p>
]]></description><pubDate>Thu, 05 Nov 2026 10:41:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=50377584</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50377584</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50377584</guid></item><item><title><![CDATA[New comment by cxr in "Death Comes for XSLT"]]></title><description><![CDATA[
<p>> there's just not much reason for it to be in the browser<p>Aside from the fact that it's a widely implemented, mature standard and the reason given in the article which happens to be one of the most important things in world of browsers ("Don't break the Web"), sure, there's no reason.</p>
]]></description><pubDate>Thu, 05 Nov 2026 02:33:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=50374399</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50374399</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50374399</guid></item><item><title><![CDATA[New comment by cxr in "The AI cost of JavaScript frameworks"]]></title><description><![CDATA[
<p>> You're committing a fallacy here: You're assuming that not using the method/framework comes free or cheaper.<p>No, I'm not.  Nowhere in my comment have I made that claim, nor is there any claim that could even be mistaken for trying to argue one way or the other.  It's like you lack the ability see words on a page and understand what's actually being discussed in the remarks you're responding to.  (This also explains why, when challenged on succumbing to the industry tendency to make all-vibes arguments instead of evidence—directly in the comments of the article that calls this out—your direct response to <i>that</i> is to restate your claims and arguments and avoid providing any evidence.  It's always just hunches and attempts at inductive reasoning, all the time.)</p>
]]></description><pubDate>Mon, 02 Nov 2026 11:11:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=50335362</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50335362</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50335362</guid></item><item><title><![CDATA[New comment by cxr in "The AI cost of JavaScript frameworks"]]></title><description><![CDATA[
<p>You're committing the very sin that the original article fingers as the problem with the webdev culture.<p>The evidence-free claim here (that with frameworks you end up spending less) is all "vibes"—or, put more charitably, a hunch plus some inductive reasoning.  It's not a tested hypothesis.<p>The crux of your argument* is essentially "a + b > a for some non-zero b", where b represents what you are "paying for your library code".  The right side of the relation is supposed to represent using a framework, but this neglects c, the cost paid for <i>not</i> using the Nike method ("Just Do It") when it comes to dealing with things yourself (i.e. the framework cost—which, like b, is never zero).<p>* as stated at least; it's possible and probable that you really don't mean to say that c simply doesn't exist but that b > c (either by intuition or experience or both) but that's still just a <i>claim</i>—which is the entire basis for the author's criticism: not whether frameworks are or aren't actually more cost-effective, but the greater meta-level concern described here in this comment, in the original piece, and other comments by the author and people like Alex Russell elsewhere describing how resistant the culture is towards the notion of attempting to prove or falsify these kinds of claims (if you can even manage to get people to agree to formulate them in such a way that they can actually be subjected to the scientific method)</p>
]]></description><pubDate>Sun, 01 Nov 2026 14:49:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=50326231</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50326231</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50326231</guid></item><item><title><![CDATA[Historical www-talk archives made complete]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.w3.org/blog/2026/historical-www-talk-archives-made-complete/">https://www.w3.org/blog/2026/historical-www-talk-archives-made-complete/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50306121">https://news.ycombinator.com/item?id=50306121</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 30 Oct 2026 16:19:53 +0000</pubDate><link>https://www.w3.org/blog/2026/historical-www-talk-archives-made-complete/</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50306121</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50306121</guid></item><item><title><![CDATA[New comment by cxr in "Roku developer repositories moved from GitHub to GitLab"]]></title><description><![CDATA[
<p>HN is weird.  My submission yesterday "Roku SceneGraph 2.0 SDK: Migrating to TypeScript" <<a href="https://news.ycombinator.com/item?id=50212170">https://news.ycombinator.com/item?id=50212170</a>> (which also involves the not-inconsequential news that the new SDK is open source) is at least 10x more interesting but got almost no attention.</p>
]]></description><pubDate>Sat, 24 Oct 2026 19:36:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=50224364</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50224364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50224364</guid></item><item><title><![CDATA[Roku developer repositories moved from GitHub to GitLab]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.roku.com/developer/gitlab-move">https://blog.roku.com/developer/gitlab-move</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50222622">https://news.ycombinator.com/item?id=50222622</a></p>
<p>Points: 310</p>
<p># Comments: 226</p>
]]></description><pubDate>Sat, 24 Oct 2026 16:06:26 +0000</pubDate><link>https://blog.roku.com/developer/gitlab-move</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50222622</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50222622</guid></item><item><title><![CDATA[New comment by cxr in "Roku SceneGraph 2.0 SDK: Migrating to TypeScript"]]></title><description><![CDATA[
<p>More info:<p>- RSG 2.0 SDK overview <<a href="https://gitlab.com/rokudev/rsg-sdk/-/blob/main/documentation/getting-started/overview.md" rel="nofollow">https://gitlab.com/rokudev/rsg-sdk/-/blob/main/documentation...</a>>, which includes the section "Why TypeScript"<p>- Announcement of Roku repositories moved from GitHub to GitLab <<a href="https://blog.roku.com/developer/gitlab-move" rel="nofollow">https://blog.roku.com/developer/gitlab-move</a>></p>
]]></description><pubDate>Fri, 23 Oct 2026 17:19:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=50212379</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50212379</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50212379</guid></item><item><title><![CDATA[Roku SceneGraph 2.0 SDK: Migrating to TypeScript]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.roku.com/developer/rsg-2-0-sdk-beta">https://blog.roku.com/developer/rsg-2-0-sdk-beta</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50212170">https://news.ycombinator.com/item?id=50212170</a></p>
<p>Points: 2</p>
<p># Comments: 1</p>
]]></description><pubDate>Fri, 23 Oct 2026 17:05:20 +0000</pubDate><link>https://blog.roku.com/developer/rsg-2-0-sdk-beta</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50212170</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50212170</guid></item><item><title><![CDATA[The number of monthly active Mastodon users is mostly going down]]></title><description><![CDATA[
<p>Article URL: <a href="https://birchtree.me/blog/why-does-this-chart-just-go-down/">https://birchtree.me/blog/why-does-this-chart-just-go-down/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50168388">https://news.ycombinator.com/item?id=50168388</a></p>
<p>Points: 6</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 20 Oct 2026 16:01:39 +0000</pubDate><link>https://birchtree.me/blog/why-does-this-chart-just-go-down/</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50168388</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50168388</guid></item><item><title><![CDATA[New comment by cxr in "There is no official XScreenSaver GitHub repository"]]></title><description><![CDATA[
<p>> You can still setup the mirror and be done with it, and put the original repo links at the top in the README<p>There is no original repo to link to.  That's why the README says that there isn't one.<p>> Setting up a git mirror that auto syncs takes less than 2mins<p>Prove it.</p>
]]></description><pubDate>Tue, 20 Oct 2026 10:26:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=50163970</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50163970</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50163970</guid></item><item><title><![CDATA[New comment by cxr in "Tsc-ts: TypeScript written in TypeScript"]]></title><description><![CDATA[
<p>The fact that language designers take into account things like efficiency (or ease) of potential implementations doesn't change the fact that performance is a property of the implementation.  Languages don't perform.  There's no such thing as a performant language.</p>
]]></description><pubDate>Sun, 18 Oct 2026 11:55:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=50140289</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50140289</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50140289</guid></item><item><title><![CDATA[New comment by cxr in "Tsc-ts: TypeScript written in TypeScript"]]></title><description><![CDATA[
<p>That's because there's no such thing as a "performant <i>language</i>".  A programming language is inert.  It's notation.  Programming languages don't get run.  Binaries do.<p>The only thing that can be compared are language implementations.  That a given implementation, such as GCC, has an excellent code generator that emits efficient code is saying something about how great that code generator is.  It's not that the input language is inherently "performant"; C programs compiled with GCC and Clang are fast.  The same program compiled with My Toy C Compiler, with none of the work that has gone into LLVM and the GCC backend, is going to have different runtime characteristics.</p>
]]></description><pubDate>Sat, 17 Oct 2026 20:03:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=50134571</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50134571</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50134571</guid></item><item><title><![CDATA[New comment by cxr in "Photopea creator weighs in on Photosuite project"]]></title><description><![CDATA[
<p>When it comes to questions of copyright and the infringement of copyright, the small matter of whether or not infringement occurred is in fact not merely an inconsequential detail.</p>
]]></description><pubDate>Mon, 12 Oct 2026 00:54:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=50049922</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50049922</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50049922</guid></item><item><title><![CDATA[New comment by cxr in "Photopea creator weighs in on Photosuite project"]]></title><description><![CDATA[
<p><<a href="https://en.wikipedia.org/wiki/Motte-and-bailey_doctrine" rel="nofollow">https://en.wikipedia.org/wiki/Motte-and-bailey_doctrine</a>></p>
]]></description><pubDate>Sat, 10 Oct 2026 12:09:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=50032107</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50032107</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50032107</guid></item><item><title><![CDATA[New comment by cxr in "The Slow Formation of Durable Software"]]></title><description><![CDATA[
<p>I'm a big user and advocate of Zotero, but "it just works" is not a description that I'd say applies to it.  It works kind of reasonably okay most of the time, and you get a feel for where and how you have to give a thump the times when it's not working the way it's supposed to, but it has its flaws.  Unfortunately, it's also gotten harder to build, which means more difficult for people to get involved to contribute changes.</p>
]]></description><pubDate>Sat, 10 Oct 2026 02:45:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=50029019</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50029019</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50029019</guid></item><item><title><![CDATA[New comment by cxr in "The Slow Formation of Durable Software"]]></title><description><![CDATA[
<p>> It's baffling actually that Firefox doesn't let you annotate bookmarks, it seems such an obvious feature.<p>There was a financial conflict of interest, since Mozilla Corp was selling Pocket subscriptions where the ability to even just be able to have an unlimited number of highlights was a premium feature.<p>Firefox has an experimental Tab Notes feature now: <<a href="https://support.mozilla.org/en-US/kb/tab-notes-firefox" rel="nofollow">https://support.mozilla.org/en-US/kb/tab-notes-firefox</a>><p>(In the Firefox heyday, the bookmarks manager had a Description field that could be repurposed for adding notes.)</p>
]]></description><pubDate>Sat, 10 Oct 2026 00:36:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=50028273</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=50028273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50028273</guid></item><item><title><![CDATA[New comment by cxr in "Photopea creator weighs in on Photosuite project"]]></title><description><![CDATA[
<p>That's not the rub.  We don't have to figure those things out here.  The Photopea Offline repo that started this whole mess contains literal copies of the Photopea bundles/assets copied from the Photopea website.</p>
]]></description><pubDate>Wed, 07 Oct 2026 03:21:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49987712</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=49987712</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49987712</guid></item><item><title><![CDATA[New comment by cxr in "Photopea creator weighs in on Photosuite project"]]></title><description><![CDATA[
<p>> The vast majority of license violations are just MIT or ASL projects whose license text got stripped in the minified deliverable.<p>"Just"?  The requirement to retain verbatim copies of the license text and copyright notices is pretty much the whole point of those licenses.  A downstream project that isn't following the terms of the license that it was offered under is violating the license, full stop.<p>(Side note: not a fan of the tribalism and reactionary <i>tu quoque</i>-y sentiments coming out in the comments here and in the linked comments on GitHub (which, to be fair, is predictably awful).  If there are folks distributing unauthorized copies or derivative works of Photopea, those need to be taken down (or DMCAed).  If Photopea itself is not in compliance with the licenses of its dependencies, it needs to be brought in compliance.  Neither these things or nor some other acts undertaken by any of the persons involved cancels anything else out.)</p>
]]></description><pubDate>Tue, 06 Oct 2026 20:08:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=49983358</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=49983358</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49983358</guid></item><item><title><![CDATA[New comment by cxr in "Photopea creator weighs in on Photosuite project"]]></title><description><![CDATA[
<p>> It's much simpler to update a webpage than force every user to update their app when something needs to change.<p>The set of capabilities available to native desktop apps is a superset of the capabilities available to browser-based Web apps.*  Ergo, if browser-based app distribution possesses some desirable quality, the same path is available** to a native app not built on W3C/WHATWG APIs.<p>* You can frequently come across people make a similar logical error in the opposite direction when it comes to being more distrusting of browser-based apps than native binaries, especially with an undue focus on the risk of the app exfiltrating your data over the network—even though a native binary can do strictly more damage than a browser-based app, which is at least confined to its sandbox and the associated execution model.<p>** It does require, though, that one actually take that path.</p>
]]></description><pubDate>Tue, 06 Oct 2026 19:29:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49982907</link><dc:creator>cxr</dc:creator><comments>https://news.ycombinator.com/item?id=49982907</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49982907</guid></item></channel></rss>