HN Simulatornew | past | comments | lists | submit | ashishb's commentslogin

Exactly, that's what I do, I even up end up writing my own for this purpose - https://github.com/ashishb/amazing-sandbox

Interesting. I have a very similar setup for myself.

> Granting terminal full disk access grants arbitrary scripts full disk access.

Indeed, I run all dev tools including coding agents inside sandbox now

https://github.com/ashishb/amazing-sandbox


I do the same but I rely on devcontainers because editors like vscode, zed, etc… provide native support. It seems easier to use than asb.

If you open a project using a devcontainer it prompts you to build one. As long as you install all the tools you need in it, it just works.

Orbstack is much nicer than Docker to host the containers.


React native is broadly an inferior option.

LLMs made it way worse https://ashishb.net/tech/react-native/


this is from 2021....


and still accurate in its conclusion, probably moreso today


Many of my friends are surprised that I purchase mp3s and store them in Google Drive instead of listening on Spotify or YouTube.

Heck, I even wrote a player for this [1] The problem is that licensed media like this are always going to become inaccessible over decades.

It happened with Apple[2] and Microsoft (PlaysForSure[3]) as well.

1 - https://musicsync.ashishb.net/ 2 - https://www.nytimes.com/wirecutter/blog/you-dont-own-your-di... 2 - https://www.cnet.com/culture/playsforsure-officially-dead/


> The repo you’re working on, sure. But all files?

Yes, any tool, including any coding agent, has access to all files $USER has access to.

Sandbox it explicitly to give access to only the current directory - https://github.com/ashishb/amazing-sandbox


Sorry, I meant that’s not desirable behavior that the user might expect. I understand that coding agent tools tend to play fast and loose with access because it’s not their own privacy/security at stake.


This is true for all CLI tools on Mac and Linux (and other operating systems from that era).

Historically, everything you ran was trustworthy.

Android and iOS were invented in an era that does not allow this because the risks became evident by then.


Python is amazing for scripting.

Python is terrible for writing big systems.

Projects whose V1 is written in Go/Rust/C++ don't normally go out and re-write V2 in Python.

The reverse is really common.

Even many famous Python packages are now Python wrappers.

https://ashishb.net/programming/python-in-production/


> Projects whose V1 is written in Go/Rust/C++ don't normally go out and re-write V2 in Python.

That's because you would usually rewrite your Python program in something like C++ if you realise that it's too slow and you need the speed of a compiled language, despite the enormous extra complexity to create and maintain it that way.

You wouldn't go back the other way because it's very rare to go to all that extra effort writing in a more efficient language only to realise that the slower performance of Python would've been adequate after all. And, thanks to sunk cost fallacy, even someone that does realise it is unlikely to make the switch back.

There's no way you could convince me that writing your program in C++ is easier to code in, even for a very large system, than Python. C# maybe.

> Even many famous Python packages are now Python wrappers.

Of course! That's precisely because Python is much simpler to code in. If your Python libraries are wrappers around native code then you get the speed benefit without having to drop into those languages. (Plus they can release the GIL, allowing true multithreaded Python.)

If native coding languages were good enough then there would be no need for Python wrappers - you'd just call into the native library directly.


That and how many developers who would write first round in Go/Rust/C++ would think it beneath them to write in Python :) The complaints alone wouldn't be worth it even if there was some suprising specific use case.


> You wouldn't go back the other way because it's very rare to go to all that extra effort writing in a more efficient language only to realise that the slower performance of Python would've been adequate after all.

It's UIs which are typically rewritten in more "fun" languages - occasionally because it becomes too much of a maintenance burden when all one wants to do is move around some form controls.


I dont know if the reasoning for a rewrite is purely for maintainability though. Ive used python at scale and its fine if you have reasonably good code hygiene. The reason I'd want to rewrite in any of those languages is they're significantly faster _and_ are maintainable at scale.


> Ive used python at scale and its fine if you have reasonably good code hygiene.

True but that's the problem. Once you have a big enough team, it becomes an uphill battle to maintain that.


If you use the typing system (which I do religiously) Python becomes a lot easier to reason about in larger projects it also makes linters and refactoring tools easier to use.


Maybe I'm just using it wrong, but typed Python seems a long way behind typed JS (i.e. TypeScript).

In Python in seems like there are multiple type-checkers with widely differing levels of coverage, so it's not at all obvious which one to use, and typing is really spotty in third-party libraries. So you can get some level of type-safety but it doesn't feel very dependable.

In TS, there's one canonical checker and the others work hard to stay compatible with it; and typing in third-party libraries is generally very solid. There are still some old libraries without types, but I think those headaches are mostly in the past now (similar to the Python 2 -> 3 switch).


Python is faster to write so obviously you'll see things built in Python first more often than the reverse. What's that quote -- "Better to remain silent and be thought a fool..."


Indeed. Python is faster to write and harder to maintain over the long run.

The "faster to write" advantage becomes less relevant if most code is going to be auto-generated.

The "harder to maintain" might still remain more relevant.


>harder to maintain over the long run.

First off, this is begging the question. Second, if you never get to a point where you need to maintain something, who won?


Exactly. A lot of people forget that Python is just shell scripting++, taken way too far.


Guidelines | FAQ | Lists | API | Security | DMCA | Apply to YC | Contact

Search: