<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: benmccann</title><link>https://news.ycombinator.com/user?id=benmccann</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 19 Apr 2026 09:55:48 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=benmccann" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by benmccann in "The unexpected effectiveness of one-shot decompilation with Claude"]]></title><description><![CDATA[
<p>I used Gemini to compare the minimized output of the Rollup vs Rolldown JavaScript bundlers to find locations where the latter was not yet at the same degree of optimization. It was astoundingly good and I'm not sure how I would have been able to accomplish the task without an LLM as an available tool.</p>
]]></description><pubDate>Sat, 06 Dec 2025 17:54:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=46175194</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=46175194</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46175194</guid></item><item><title><![CDATA[New comment by benmccann in "Shai-Hulud Returns: Over 300 NPM Packages Infected"]]></title><description><![CDATA[
<p>fixed!</p>
]]></description><pubDate>Mon, 24 Nov 2025 17:46:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=46036824</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=46036824</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46036824</guid></item><item><title><![CDATA[New comment by benmccann in "Shai-Hulud Returns: Over 300 NPM Packages Infected"]]></title><description><![CDATA[
<p>Hundreds of people had access to publish the Zapier SDK, so it's little surprise they were eventually compromised! (<a href="https://bsky.app/profile/benmccann.com/post/3m6fdecsbdk2u" rel="nofollow">https://bsky.app/profile/benmccann.com/post/3m6fdecsbdk2u</a>)<p>The e18e community are reducing dependencies in popular libraries and building tools to prevent and reduce the impact of such attacks. Join if you want to help out! <a href="https://e18e.dev/" rel="nofollow">https://e18e.dev/</a><p>Just this morning, after trying to make the case over the past year, we had a change landed to remove more than a dozen dependencies from typescript-eslint! <a href="https://bsky.app/profile/benmccann.com/post/3m6fcjax7ec2h" rel="nofollow">https://bsky.app/profile/benmccann.com/post/3m6fcjax7ec2h</a></p>
]]></description><pubDate>Mon, 24 Nov 2025 17:24:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=46036537</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=46036537</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46036537</guid></item><item><title><![CDATA[New comment by benmccann in "Shai-Hulud malware attack: Tinycolor and over 40 NPM packages compromised"]]></title><description><![CDATA[
<p>Yes, eslint is particularly frustrating: <a href="https://npmgraph.js.org/?q=eslint" rel="nofollow">https://npmgraph.js.org/?q=eslint</a><p>There are plenty of people in the community who would help reduce the number of dependencies, but it really requires the maintainers to make it a priority. Otherwise the only way to address it is to switch to another solution like oxlint.</p>
]]></description><pubDate>Tue, 16 Sep 2025 13:14:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=45261809</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=45261809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45261809</guid></item><item><title><![CDATA[New comment by benmccann in "Next.js is infuriating"]]></title><description><![CDATA[
<p>The number 3, 4, and 5 contributors to SvelteKit in the past year work at Vercel: 
<a href="https://github.com/sveltejs/kit/graphs/contributors?from=8%2F31%2F2024" rel="nofollow">https://github.com/sveltejs/kit/graphs/contributors?from=8%2...</a><p>Rich and Simon are incredibly important, but they're in it for Svelte and the community more so than a paycheck from Vercel. Tee has been doing most of the maintenance on SvelteKit currently funded by community donations. And this isn't counting other infrastructure like vite-plugin-svelte or the Svelte CLI which are entirely maintained by volunteers. I don't think Vercel funds a majority of the work on Svelte even if it might be close to it.</p>
]]></description><pubDate>Tue, 02 Sep 2025 18:34:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45107186</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=45107186</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45107186</guid></item><item><title><![CDATA[New comment by benmccann in "Next.js is infuriating"]]></title><description><![CDATA[
<p>Only 3/40 Svelte maintainers work at Vercel and they mainly finance work on Svelte core. SvelteKit day-to-day is primarily maintained by folks outside Vercel</p>
]]></description><pubDate>Tue, 02 Sep 2025 13:40:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=45102981</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=45102981</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45102981</guid></item><item><title><![CDATA[New comment by benmccann in "Vendors that treat single sign-on as a luxury feature"]]></title><description><![CDATA[
<p>Wouldn't vouch proxy only work with self hosted apps? How would you use it with a SaaS app?</p>
]]></description><pubDate>Tue, 19 Aug 2025 22:56:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=44957010</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=44957010</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44957010</guid></item><item><title><![CDATA[New comment by benmccann in "PlasticList – Plastic Levels in Foods"]]></title><description><![CDATA[
<p>What is the plastic.love you're referring to? That domain doesn't resolve for me. Do you mean PlasticList?</p>
]]></description><pubDate>Wed, 25 Jun 2025 19:32:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=44381054</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=44381054</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44381054</guid></item><item><title><![CDATA[New comment by benmccann in "I like Svelte more than React (it's store management)"]]></title><description><![CDATA[
<p>It's neither true that Svelte has few users or that we can easily break things. Tons of sites are built with Svelte like Yahoo Finance and Apple Music. Svelte 5 was the only big change in syntax in the past five years and we made sure that there's a good migration tool, etc. to minimize the amount of hardship and upgrade might cause. As a result the majority of users have already upgraded to Svelte 5.<p>That being said, Svelte absolutely does continue to innovate. We'll be introducing a new async primitive, RPC mechanism, etc. in the near future: <a href="https://m.youtube.com/watch?v=1dATE70wlHc" rel="nofollow">https://m.youtube.com/watch?v=1dATE70wlHc</a></p>
]]></description><pubDate>Sun, 01 Jun 2025 15:42:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=44151695</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=44151695</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44151695</guid></item><item><title><![CDATA[New comment by benmccann in "Claude 4"]]></title><description><![CDATA[
<p>The updated knowledge cutoff is helping with new technologies such as Svelte 5.</p>
]]></description><pubDate>Thu, 22 May 2025 17:17:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=44064240</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=44064240</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44064240</guid></item><item><title><![CDATA[New comment by benmccann in "Launch HN: Better Auth (YC X25) – Authentication Framework for TypeScript"]]></title><description><![CDATA[
<p>NextAuth certainly needs some competition. However, I wish better-auth didn't have so many dependencies. I feel like it shouldn't be necessary to depend on things like kysley and Typescript.</p>
]]></description><pubDate>Mon, 19 May 2025 19:59:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=44034154</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=44034154</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44034154</guid></item><item><title><![CDATA[New comment by benmccann in "US Judge invalidates blood glucose sensor patent, opens door for Apple Watch"]]></title><description><![CDATA[
<p>Check out <a href="https://www.perceptive.io/">https://www.perceptive.io/</a></p>
]]></description><pubDate>Fri, 21 Feb 2025 14:37:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=43127902</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=43127902</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43127902</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>I believe the reason for that was to enable event forwarding, which was a highly requested feature and makes a lot of things easier.</p>
]]></description><pubDate>Thu, 30 Jan 2025 04:18:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=42874804</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42874804</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42874804</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>The docs for single page apps live at <a href="https://svelte.dev/docs/kit/single-page-apps" rel="nofollow">https://svelte.dev/docs/kit/single-page-apps</a><p>By default, SvelteKit does SSR for the first page and client-side routing thereafter. This is fully configurable. Perhaps it's worth an additional mention on the routing page. I'll take a look later. Thanks for the suggestion.</p>
]]></description><pubDate>Thu, 30 Jan 2025 04:16:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=42874793</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42874793</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42874793</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>You should only access credentials in `.server` files. We have a built-in feature that checks that you only access credentials in `.server` files to try to prevent newcomers from accidentally making any mistake in that regard.</p>
]]></description><pubDate>Thu, 30 Jan 2025 04:04:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=42874724</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42874724</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42874724</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>Actually, I forgot that this landed as an official part of the docs now: <a href="https://svelte.dev/docs/llms" rel="nofollow">https://svelte.dev/docs/llms</a><p>It might still be a bit big, but PRs welcome if folks want to try slimming it down to just the stuff that's new in Svelte 5.</p>
]]></description><pubDate>Wed, 29 Jan 2025 21:08:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=42871164</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42871164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42871164</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>I haven't used Claude much personally, but have seen <a href="https://svelte-llm.khromov.se/" rel="nofollow">https://svelte-llm.khromov.se/</a> built to help on that front, do you might want to check it out.</p>
]]></description><pubDate>Wed, 29 Jan 2025 10:49:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=42863578</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42863578</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42863578</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>Vite does statically replace the `browser` variable with `true` or `false` based on whether you're on the client or server, but this shouldn't affect the correctness of your code. It does allow Vite to remove any unused code, however. E.g. `if (browser)` turns into `if (false)` on the server and any code within that block can be removed. This can avoid shipping unused code to the client.<p>Astro is also built in top of Vite and the same thing happens there. If you reference `import.meta.env.SSR` it is statically replaced during build and unused code is tree-shaken out: <a href="https://vite.dev/guide/env-and-mode#env-variables" rel="nofollow">https://vite.dev/guide/env-and-mode#env-variables</a></p>
]]></description><pubDate>Wed, 29 Jan 2025 10:41:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=42863531</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42863531</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42863531</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>Files with `.server` in the name run only on the server. The remaining files run on the client and server. This is mentioned in the introduction on <a href="https://svelte.dev/docs/kit/routing" rel="nofollow">https://svelte.dev/docs/kit/routing</a><p>What's confusing about this and what could we do to help?</p>
]]></description><pubDate>Wed, 29 Jan 2025 10:24:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=42863438</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42863438</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42863438</guid></item><item><title><![CDATA[New comment by benmccann in "Svelte 5 and the Future of Frameworks: A Chat with Rich Harris"]]></title><description><![CDATA[
<p>Snippets are far more powerful than slots and so the change is not merely cosmetic. Snippets give you a way to create reusable HTML fragments within a component.</p>
]]></description><pubDate>Wed, 29 Jan 2025 10:13:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=42863362</link><dc:creator>benmccann</dc:creator><comments>https://news.ycombinator.com/item?id=42863362</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42863362</guid></item></channel></rss>