<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: johnspurlock</title><link>https://news.ycombinator.com/user?id=johnspurlock</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 08:43:28 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=johnspurlock" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by johnspurlock in "Deno Sandbox"]]></title><description><![CDATA[
<p>"Over the past year, we’ve seen a shift in what Deno Deploy customers are building: platforms where users generate code with LLMs, and that code runs immediately without review. That code frequently calls LLMs itself, which means it needs API keys and network access.<p>This isn’t the traditional “run untrusted plugins” problem. It’s deeper: LLM-generated code, calling external APIs with real credentials, without human review. Sandboxing the compute isn’t enough. You need to control network egress and protect secrets from exfiltration.<p>Deno Sandbox provides both. And when the code is ready, you can deploy it directly to Deno Deploy without rebuilding."</p>
]]></description><pubDate>Tue, 03 Feb 2026 17:33:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=46874098</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=46874098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46874098</guid></item><item><title><![CDATA[Deno Sandbox]]></title><description><![CDATA[
<p>Article URL: <a href="https://deno.com/blog/introducing-deno-sandbox">https://deno.com/blog/introducing-deno-sandbox</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46874097">https://news.ycombinator.com/item?id=46874097</a></p>
<p>Points: 533</p>
<p># Comments: 174</p>
]]></description><pubDate>Tue, 03 Feb 2026 17:33:20 +0000</pubDate><link>https://deno.com/blog/introducing-deno-sandbox</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=46874097</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46874097</guid></item><item><title><![CDATA[tschema – A tiny (<1kb) utility to build JSON schema types]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/lukeed/tschema">https://github.com/lukeed/tschema</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41176266">https://news.ycombinator.com/item?id=41176266</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 06 Aug 2024 22:47:38 +0000</pubDate><link>https://github.com/lukeed/tschema</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=41176266</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41176266</guid></item><item><title><![CDATA[New comment by johnspurlock in "Understanding Open Podcast Prefix Project (OP3) with John Spurlock"]]></title><description><![CDATA[
<p>It's freely available to anyone - the data (after securely hashing IPs) is provided as a service for everyone in the open podcast system.<p>There is a bit about the data api in the privacy policy [1]. Feel free to engage over on the github repo if you are blocked on anything or to chat about it [2].<p>[1] <a href="https://op3.dev/privacy" rel="nofollow">https://op3.dev/privacy</a>
[2] <a href="https://github.com/skymethod/op3/discussions">https://github.com/skymethod/op3/discussions</a></p>
]]></description><pubDate>Sat, 04 May 2024 19:47:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=40259845</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=40259845</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40259845</guid></item><item><title><![CDATA[New comment by johnspurlock in "Understanding Open Podcast Prefix Project (OP3) with John Spurlock"]]></title><description><![CDATA[
<p>Yea that part got lost in translation.<p>The OP3 API is completely free to use: <a href="https://op3.dev/api/docs" rel="nofollow">https://op3.dev/api/docs</a></p>
]]></description><pubDate>Sat, 04 May 2024 19:23:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=40259700</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=40259700</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40259700</guid></item><item><title><![CDATA[New comment by johnspurlock in "Understanding Open Podcast Prefix Project (OP3) with John Spurlock"]]></title><description><![CDATA[
<p>Nothing<p>You stick this prefix in front the audio enclosure file urls inside your rss feed</p>
]]></description><pubDate>Sat, 04 May 2024 17:20:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=40259009</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=40259009</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40259009</guid></item><item><title><![CDATA[New comment by johnspurlock in "Understanding Open Podcast Prefix Project (OP3) with John Spurlock"]]></title><description><![CDATA[
<p>From the homepage [1]<p>> We've been running smoothly since Sept 2022, now measuring over 15 million podcast downloads every month across more than 1600 shows<p>Knock wood, but OP3 podcast redirecting has never had an single outage since it launched in Sept 2022.<p>Turns out Cloudflare Workers do a great job at simple http redirecting via their hundreds of edge locations, even during extended outages of the other parts of their stack.<p>[1] <a href="https://op3.dev" rel="nofollow">https://op3.dev</a></p>
]]></description><pubDate>Sat, 04 May 2024 15:35:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=40258413</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=40258413</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40258413</guid></item><item><title><![CDATA[New comment by johnspurlock in "Understanding Open Podcast Prefix Project (OP3) with John Spurlock"]]></title><description><![CDATA[
<p>Podcasting is open in many ways, but RSS-based podcast apps have no idea what shows are "hot in cleveland" or have related listener bases, etc outside of their own app.<p>When shows start using OP3, they open up these (listener privacy-preserving) stats to _any_ app, and set themselves up for future discovery / inbound opportunities on this basis.</p>
]]></description><pubDate>Sat, 04 May 2024 15:13:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=40258255</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=40258255</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40258255</guid></item><item><title><![CDATA[New comment by johnspurlock in "“Wherever you get your podcasts” is a radical statement"]]></title><description><![CDATA[
<p>> But what is the source? Who is typically hosting these? Audio is easier to distribute than video, but aren’t most podcasts hosted on a handful of large services?<p>Top Podcast Hosting Companies by Episode Share: <a href="https://livewire.io/podcast-hosts-by-episode-share/" rel="nofollow">https://livewire.io/podcast-hosts-by-episode-share/</a><p>Top Podcast CDNs by Episode Share: <a href="https://livewire.io/podcast-cdns-by-episode-share/" rel="nofollow">https://livewire.io/podcast-cdns-by-episode-share/</a></p>
]]></description><pubDate>Thu, 08 Feb 2024 15:10:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=39302800</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=39302800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39302800</guid></item><item><title><![CDATA[New comment by johnspurlock in "Write Once, Run on Cloudflare, Deno Deploy, AWS Lambda, Supabase Edge Functions"]]></title><description><![CDATA[
<p>Denoflare now has experimental support (v0.6.0+) for deploying ESM-based Typescript workers (including Wasm) not only to Cloudflare Workers, but three other edge runtimes - without wrangler, deployctl, the supabase cli, or the aws sdk</p>
]]></description><pubDate>Tue, 23 Jan 2024 23:18:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=39111376</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=39111376</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39111376</guid></item><item><title><![CDATA[Write Once, Run on Cloudflare, Deno Deploy, AWS Lambda, Supabase Edge Functions]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/skymethod/denoflare/tree/master/examples/multiplat-worker">https://github.com/skymethod/denoflare/tree/master/examples/multiplat-worker</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=39111375">https://news.ycombinator.com/item?id=39111375</a></p>
<p>Points: 2</p>
<p># Comments: 1</p>
]]></description><pubDate>Tue, 23 Jan 2024 23:18:58 +0000</pubDate><link>https://github.com/skymethod/denoflare/tree/master/examples/multiplat-worker</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=39111375</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39111375</guid></item><item><title><![CDATA[New comment by johnspurlock in "Deno Queues"]]></title><description><![CDATA[
<p>In this case, they've also documented the remote connection protocol: "KV Connect"
<a href="https://github.com/denoland/deno/tree/main/ext/kv#kv-connect">https://github.com/denoland/deno/tree/main/ext/kv#kv-connect</a><p>I kicked the tires on this with a pure TS implementation of the protocol called kv-connect-kit that gives you the KV client api in any Javascript runtime (including Cloudflare workers, which does not have anything Deno namespace related)<p>- github: <a href="https://github.com/skymethod/kv-connect-kit">https://github.com/skymethod/kv-connect-kit</a><p>- npm: <a href="https://www.npmjs.com/package/kv-connect-kit" rel="nofollow noreferrer">https://www.npmjs.com/package/kv-connect-kit</a><p>- deno/x: <a href="https://deno.land/x/kv_connect_kit" rel="nofollow noreferrer">https://deno.land/x/kv_connect_kit</a><p>- demo: <a href="https://keyspace.deno.dev/" rel="nofollow noreferrer">https://keyspace.deno.dev/</a><p>protocol seems to works as described on the tin, and it would be pretty straightforward to write another backend</p>
]]></description><pubDate>Wed, 27 Sep 2023 18:59:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=37679537</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=37679537</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37679537</guid></item><item><title><![CDATA[New comment by johnspurlock in "Deno KV Is in Open Beta"]]></title><description><![CDATA[
<p>Yes.</p>
]]></description><pubDate>Thu, 07 Sep 2023 00:30:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=37413291</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=37413291</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37413291</guid></item><item><title><![CDATA[New comment by johnspurlock in "Firesky – The Bluesky Firehose"]]></title><description><![CDATA[
<p>firesky.tv dev here - do you have javascript enabled?<p>If so, you should see everything posted to Bluesky in one view, like a massive chatroom.<p>Use the filter button to monitor for keywords/accounts etc. To me, this is probably the more long-term useful and non-brain-destroying use of the site.<p>Very much inspired by Twitter in the early days</p>
]]></description><pubDate>Thu, 04 May 2023 12:40:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=35814341</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=35814341</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35814341</guid></item><item><title><![CDATA[esbuild as an edge service (on Deno Deploy)]]></title><description><![CDATA[
<p>Article URL: <a href="https://esb.deno.dev">https://esb.deno.dev</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=32094171">https://news.ycombinator.com/item?id=32094171</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 14 Jul 2022 10:31:58 +0000</pubDate><link>https://esb.deno.dev</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=32094171</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32094171</guid></item><item><title><![CDATA[New comment by johnspurlock in "Deno raises $21M"]]></title><description><![CDATA[
<p>Agree regarding tooling.<p>So much so that I wrote Denoflare (<a href="https://denoflare.dev/" rel="nofollow">https://denoflare.dev/</a>) to make writing Cloudflare Workers using standard Deno a breeze: no wrangler, toml, webpack, npm etc required</p>
]]></description><pubDate>Wed, 22 Jun 2022 14:49:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=31836724</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=31836724</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31836724</guid></item><item><title><![CDATA[New comment by johnspurlock in "Deno raises $21M"]]></title><description><![CDATA[
<p>Deno has a built-in repl<p><a href="https://deno.land/manual/tools/repl" rel="nofollow">https://deno.land/manual/tools/repl</a></p>
]]></description><pubDate>Wed, 22 Jun 2022 14:37:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=31836566</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=31836566</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31836566</guid></item><item><title><![CDATA[Denoflare ♥ Cloudflare R2]]></title><description><![CDATA[
<p>Article URL: <a href="https://denoflare.dev/r2/">https://denoflare.dev/r2/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=31516746">https://news.ycombinator.com/item?id=31516746</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 26 May 2022 10:36:12 +0000</pubDate><link>https://denoflare.dev/r2/</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=31516746</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31516746</guid></item><item><title><![CDATA[New comment by johnspurlock in "Rich Harris joins Vercel to work on Svelte full time"]]></title><description><![CDATA[
<p>Correct - no affiliation, just a happy customer.<p>Cloudflare seems to be disciplined about releasing solid lower-level platform building blocks first (e.g. durable objects), and leaving the "developer go-to framework for their advanced Worker stuff" to be built on top later.<p>Seems like a smart approach to me, but I agree the space is moving fast and even though they release stuff at a pretty rapid pace, it never seems fast enough for early adopters</p>
]]></description><pubDate>Fri, 12 Nov 2021 19:17:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=29203420</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=29203420</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29203420</guid></item><item><title><![CDATA[New comment by johnspurlock in "Rich Harris joins Vercel to work on Svelte full time"]]></title><description><![CDATA[
<p>Hi there, denoflare is still in early development, thanks for trying it out - that issue you found should be fixed in the latest release 0.3.1</p>
]]></description><pubDate>Fri, 12 Nov 2021 19:12:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=29203361</link><dc:creator>johnspurlock</dc:creator><comments>https://news.ycombinator.com/item?id=29203361</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29203361</guid></item></channel></rss>