Recent submissions

Comment · 7 months ago
Yeah, the underlying sandbox technology between Ash and CC is fundamentally different.

Ash is built on the Endpoint Security and Network Extension APIs. Together, they cover the full gamut of potential sandbox escapes, and it's a simple process to update sandbox rules while the sandboxed process is running.

Claude Code sandbox is built mainly on sandbox-exec, an older macOS sandbox technology. It works for filesystem and IO device control, but it can only filter network requests by IP address. CC uses an application-level network proxy as a workaround, but not every network client respects the HTTP_PROXY env variable it requires. There are other workarounds in CC sandbox for complex use cases (e.g. dangerouslyDisableSandbox) that Ash does not need.

Comment · 7 months ago
Good idea about the GitHub stub repo, I've added it here: https://github.com/Ash-Sandbox/bugs.

Your feedback about permissions is something I'm working on fixing now. Apple requires multiple permissions for Endpoint Security and Network Extension APIs and the current setup process doesn't walk users through that process as elegantly as I would like it to.

Comment · 7 months ago
Comment · 7 months ago
I'd be interested in seeing a breakdown in which ones use:

- VMs - Containers - sandbox-exec (macOS builtin tool) - Endpoint Security + Network Extension (AFAIK this is just Ash but it would be good to see company here)

Comment · 7 months ago
Comment · 1 year ago
Comment · 4 years ago
Email federation is more than just the addressing system. Even with a consistent address, your host still needs to be able to send and receive SMTP messages to participate in the ecosystem.

Address lock-in is real but doesn't fully negate the benefits of federation. Even if you don't control your address's domain, you can switch providers without losing the ability to send and receive email. There is extra cost in pointing your bank account to your new address, but it is possible. If your bank communicated to you via a non-federated protocol like WhatsApp, switching would be impossible.

Comment · 4 years ago
One unmentioned feature of federation is that it lowers the cost of switching. If your provider begins to misbehave, you can jump to another one. This is especially true in email, where you can move from one host to another by updating your domain's MX records.

Without federation, switching means migrating both your host and your network of participants simultaneously. That is a much harder and more expensive coordination problem.

Comment · 5 years ago
This looks pretty interesting. Besides telephony and other message-passing applications, what are the hero use cases for an actor system on an embedded device?
Comment · 7 years ago
The structure of your website's data is less important than its moderation process. High quality online communities tend to have strong, well-defined moderation policies – Wikipedia and Stack Overflow are good examples, as are HN and certain subreddits (eg AskHistorians).

Regardless of the technology behind a website, online communities without strong moderation tend to die over time as low quality content crowds out everything else.

Comment · 7 years ago
> I think that in studying economic growth, we (and especially we in the Silicon Valley) focus way too much on gadgets, and too little on the simple fact of human knowledge of how to do things.

This is a major component of software's power – it's a tool for formalizing knowledge and skills permanently and distributing it rapidly at ~0 marginal cost. If a piece of software is both correct and performant, it can last a very, very long time, possibly outliving its creators. And the best software composes, so one program can build on top of another to build up a massive skillset.

Comment · 7 years ago
It’s dynamically-typed and it doesn’t have real arrays. It can sometimes be frustratingly slow to do things that imperative languages do easily, but that’s the price of entry for functional languages. Luckily you can drop down into Rust or C if you need high performance.

Otherwise, it’s a great language. I’m consistently happy with the decisions that the Erlang and Elixir core teams make, and it’s my go-to language for web development.

Comment · 8 years ago
That's true. My performance claims are biased toward offline-capable editors, where the last consistent state between sites may be thousands or millions of edits ago. For online-only editors the set of edits between now and the most recent consistent state may be much smaller.
Comment · 8 years ago
My understanding of OT is that each change requires traveling backward though the edit history to find the first state that is consistent between sites, then traveling forward to transform the new change against past edits. In the worst case, an edit requires transformation against the document’s origin state.

Is that not the case?

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton