<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: williamstein</title><link>https://news.ycombinator.com/user?id=williamstein</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 09 Apr 2026 16:44:07 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=williamstein" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by williamstein in "We replaced Node.js with Bun for 5x throughput"]]></title><description><![CDATA[
<p>SEA with node.js "works" for nearly arbitrarily general node code -- pretty much anything you can run with node.  However you may have to put in substantial extra effort, e.g., using [1], and possibly more work (e.g., copying assets out or using a virtual file system).<p>[1] <a href="https://www.npmjs.com/package/@vercel/ncc" rel="nofollow">https://www.npmjs.com/package/@vercel/ncc</a></p>
]]></description><pubDate>Mon, 06 Apr 2026 05:30:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47657306</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47657306</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47657306</guid></item><item><title><![CDATA[New comment by williamstein in "OpenClaw privilege escalation vulnerability"]]></title><description><![CDATA[
<p>The current OpenClaw GitHub repo [1] contains 2.1 million lines of code, according to cloc, with 1.6M being typescript.  It also has almost 26K commits.<p>[1] <a href="https://github.com/openclaw/openclaw" rel="nofollow">https://github.com/openclaw/openclaw</a></p>
]]></description><pubDate>Fri, 03 Apr 2026 18:44:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47630441</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47630441</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47630441</guid></item><item><title><![CDATA[Nteract 2.0: A ground-up rebuild of the notebook app]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.nteract.io/blog/nteract-2.0">https://www.nteract.io/blog/nteract-2.0</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47602615">https://news.ycombinator.com/item?id=47602615</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 01 Apr 2026 15:58:54 +0000</pubDate><link>https://www.nteract.io/blog/nteract-2.0</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47602615</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47602615</guid></item><item><title><![CDATA[New comment by williamstein in "Why mathematicians are boycotting their biggest conference"]]></title><description><![CDATA[
<p>FWIW, the Joint Mathematics Meeting is bigger, based on number of registered attendees [1].<p>[1] <a href="https://jointmathematicsmeetings.org/meetings/national/jmm2026/jmm2026-stats" rel="nofollow">https://jointmathematicsmeetings.org/meetings/national/jmm20...</a></p>
]]></description><pubDate>Sun, 29 Mar 2026 00:28:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=47559325</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47559325</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47559325</guid></item><item><title><![CDATA[New comment by williamstein in "Node.js needs a virtual file system"]]></title><description><![CDATA[
<p>This exact thing solves a huge problem with SEA binaries as he points out in his post.  You can include complicated assets easily and skip an ugly unpack step entirely.  This is very useful.</p>
]]></description><pubDate>Tue, 17 Mar 2026 18:46:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47416572</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47416572</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47416572</guid></item><item><title><![CDATA[New comment by williamstein in "Pyodide: a Python distribution based on WebAssembly"]]></title><description><![CDATA[
<p>I tried to make a version of this using Zig once, but ran out of steam: <a href="https://cowasm.org/" rel="nofollow">https://cowasm.org/</a></p>
]]></description><pubDate>Tue, 17 Mar 2026 06:56:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47409471</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47409471</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47409471</guid></item><item><title><![CDATA[New comment by williamstein in "Show HN: Unfucked - version all changes (by any tool) - local-first/source avail"]]></title><description><![CDATA[
<p>Is this open source or source available?</p>
]]></description><pubDate>Fri, 27 Feb 2026 20:14:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47184958</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47184958</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47184958</guid></item><item><title><![CDATA[New comment by williamstein in "Write-only code"]]></title><description><![CDATA[
<p>He is trying to use a different phrase “write-only code” to define exactly the same thing Karpathy defined last year as “vibe coding”.<p>For what it is worth, in my experience one of the most important skills one should strive to get much better at to be good at using coding agents is <i>reading</i> and understanding code.</p>
]]></description><pubDate>Sun, 22 Feb 2026 21:29:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47114894</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=47114894</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47114894</guid></item><item><title><![CDATA[New comment by williamstein in "Ex-GitHub CEO launches a new developer platform for AI agents"]]></title><description><![CDATA[
<p>> Checkpoints run as a Git-aware CLI. On every commit generated by an agent, it writes a structured checkpoint object and associates it with the commit SHA. The code stays exactly the same, we just add context as first-class metadata. When you push your commit, Checkpoints also pushes this metadata to a separate branch (entire/checkpoints/v1), giving you a complete, append-only audit log inside your repository. As a result, every change can now be traced back not only to a diff, but to the reasoning that produced it.<p>The context for every single turn could in theory be nearly 1MB.  Since this context is being stored in the repo and constantly changing, after a thousand turns, won't it make just doing a "git checkout" start to be really heavy?<p>For example, codex-cli stores every single context for a given session in a jsonl file (in .codex).  I've easily got that file to hit 4 GB in size, just working for a few days; amusingly, codex-cli would then take many GB of RAM at startup.   I ended up writing a script that trims the jsonl history automatically periodically.   The latest codex-cli has an optional sqlite store for context state.<p>My guess is that by "context", Checkpoints doesn't actually mean the contents of the context window, but just distilled reasoning traces, which are more manageable... but still can be pretty large.</p>
]]></description><pubDate>Wed, 11 Feb 2026 00:23:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46969098</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46969098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46969098</guid></item><item><title><![CDATA[New comment by williamstein in "Nobody likes lag: How to make low-latency dev sandboxes"]]></title><description><![CDATA[
<p>It's a reference to <a href="https://news.ycombinator.com/item?id=46723990">https://news.ycombinator.com/item?id=46723990</a></p>
]]></description><pubDate>Sat, 24 Jan 2026 01:17:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=46740142</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46740142</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46740142</guid></item><item><title><![CDATA[New comment by williamstein in "Unrolling the Codex agent loop"]]></title><description><![CDATA[
<p>I strongly agree. The memory and cpu usage
of codex-cli is also extremely good.    That codex-cli is open source is also valuable because you can easily get definitive answers to any questions about its behavior.<p>I also was annoyed by Theo saying that.</p>
]]></description><pubDate>Fri, 23 Jan 2026 21:53:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=46738449</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46738449</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46738449</guid></item><item><title><![CDATA[New comment by williamstein in "2025: The Year in LLMs"]]></title><description><![CDATA[
<p>There's a plugin that evidently supports ChatGPT Pro with Opencode: <a href="https://github.com/sst/opencode/issues/1686#issuecomment-3499864881" rel="nofollow">https://github.com/sst/opencode/issues/1686#issuecomment-349...</a></p>
]]></description><pubDate>Thu, 01 Jan 2026 06:21:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46451785</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46451785</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46451785</guid></item><item><title><![CDATA[New comment by williamstein in "MIRA – An open-source persistent AI entity with memory"]]></title><description><![CDATA[
<p>Title says "open source", but the Business Source License (BSL) is not an Open Source Initiative (OSI) approved open-source license.</p>
]]></description><pubDate>Sat, 20 Dec 2025 22:33:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=46340286</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46340286</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46340286</guid></item><item><title><![CDATA[New comment by williamstein in "Mistral releases Devstral2 and Mistral Vibe CLI"]]></title><description><![CDATA[
<p>Their new CLI agent tool [1] is written in Python unlike similar agents from Anthropic/Google (Typescript/Bun) and OpenAI (Rust).   It also appears to have first class ACP support, where ACP is the new protocol from Zed [2].<p>[1] <a href="https://github.com/mistralai/mistral-vibe" rel="nofollow">https://github.com/mistralai/mistral-vibe</a><p>[2] <a href="https://zed.dev/acp" rel="nofollow">https://zed.dev/acp</a></p>
]]></description><pubDate>Tue, 09 Dec 2025 16:18:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46206714</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46206714</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46206714</guid></item><item><title><![CDATA[New comment by williamstein in "Jepsen: NATS 2.12.1"]]></title><description><![CDATA[
<p>For example, <a href="https://github.com/williamstein/nats-bugs/issues/5" rel="nofollow">https://github.com/williamstein/nats-bugs/issues/5</a> links to a discussion I have with them about data loss, where they fundamentally don't understand that their incorrect defaults lead to data loss on the application side.  It's weird.<p>I got very deep into using NATS last year, and then realized the choices it makes for persistence are really surprising.   Another horrible example if that server startup time is O(number of streams), with a big constant; this is extremely painful to hit in production.<p>I ended up implementing from scratch something with the same functionality (for me as NATS server + Jetstream), but based on socket.io and sqlite.   It works vastly better for my use cases, since socketio and sqlite are so mature.</p>
]]></description><pubDate>Tue, 09 Dec 2025 07:42:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=46202314</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46202314</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46202314</guid></item><item><title><![CDATA[New comment by williamstein in "Jepsen: NATS 2.12.1"]]></title><description><![CDATA[
<p><a href="https://github.com/williamstein/nats-bugs" rel="nofollow">https://github.com/williamstein/nats-bugs</a></p>
]]></description><pubDate>Mon, 08 Dec 2025 22:39:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46198626</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46198626</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46198626</guid></item><item><title><![CDATA[New comment by williamstein in "Zellij: A terminal workspace with batteries included"]]></title><description><![CDATA[
<p>Instead you can use <a href="https://github.com/coder/code-server" rel="nofollow">https://github.com/coder/code-server</a>, which is really vscode running in your browser.  You then get all extensions, etc.</p>
]]></description><pubDate>Fri, 05 Dec 2025 22:32:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=46168256</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46168256</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46168256</guid></item><item><title><![CDATA[New comment by williamstein in "Landlock-Ing Linux"]]></title><description><![CDATA[
<p>codex-cli is a neat example of an open source Rust program that uses Landlock to run commands that an LLM comes up with when writing code (see [1]).  The model is that a user trusts the agent program (codex-cli), but has much more limited trust of the commands the remote LLM asks codex-cli to run.<p>[1] <a href="https://developers.openai.com/codex/security/" rel="nofollow">https://developers.openai.com/codex/security/</a></p>
]]></description><pubDate>Sun, 30 Nov 2025 01:19:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=46092587</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46092587</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46092587</guid></item><item><title><![CDATA[New comment by williamstein in "[dead]"]]></title><description><![CDATA[
<p>- 200 day’s maintenance free operation<p>- water jets to clean vacuum itself<p>- claims that it is much more quiet</p>
]]></description><pubDate>Sat, 29 Nov 2025 00:17:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=46084064</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=46084064</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46084064</guid></item><item><title><![CDATA[New comment by williamstein in "Software development in the time of strange new angels"]]></title><description><![CDATA[
<p>If I hired a software developer a few years ago, I might expect them to do roughly what Claude Code does today on some task (?).  If I hired a dev today I would expect much more from them than what Claude Code can currently do.</p>
]]></description><pubDate>Wed, 12 Nov 2025 21:29:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=45907011</link><dc:creator>williamstein</dc:creator><comments>https://news.ycombinator.com/item?id=45907011</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45907011</guid></item></channel></rss>