The dependency trees have a whole system that's evolved for decades. The same code goes into many computers. Many people read the source, security firms look for vulnerabilities, etc.
Language models are a completely new paradigm. The code it writes on your machine is the only instance of that code. It does far more than anybody could ever keep track of.
It's much harder to detect problems, and nobody to hold accountable for them.
Yeah, we should do this differently. We should probably also eat healthier and get to the gym more.
This is the premise of Qubes OS. It's gotten decently usable, I'd estimate about as good as Linux a decade ago. https://www.qubes-os.org/
Docker was amongst the biggest steps forward on this in a long time.
And when you want the outputs of that user back to your main user?
And when you want that user to access some shared credentials for external services, but not all?
It’s not the account setup that’s hard, it’s the workflow of spreading a single real-world across multiple accounts.
Can't ACLs (Access Control Lists) handle at least some of that?
3: There is no reason for both my main user account and a dev account to share a credential. Main account either has the login or an API key, and dev account has its own API key with minimal permissions.
su [username] ?
Or am I understanding your idea about switching context wrong?
If you want to share specific directories, you can just put the shared directory in a common location, set it to be owned by some group, and make both users a member of that group. I don't see anything not-straightforward in there?
* chmod lets you share with everyone
* addgroup and chown let you share with a specific group of users.
Your private SSH keys? Your browser’s cookie jar? Your tax reports?
Additionally, one can make the main user part of the group of the development user, so that you can read/write easy in the development user account and it is even easier to share stuff.
They mostly differ a bit in how they are configured and what package manager they use and how they roll out updates. (And in what's installed by default.)
You can also start applications as another user so you do not even need multiple sessions.
There are quite a lot of privilege escalation attacks so I am not sure this is sufficiently solid.
You are correct that it should not be seen as a perfect protection, but considering the effort to set it up I see it as worth it. By seeing in this thread how many people do not use anything similar (ex: containers, separate users, etc), I hope attackers will just be lazy and target those people first, why bother with a local privilege escalation when interesting data is just in the same account?
you can connect two sets of mouse, keyboard and monitor to one PC and have two people using it, each running their own X session. The true multi boxing!
You can run each of your virtual desktops as their own user. You can run individual apps on the same desktop as different user accounts. Hundreds of separate users can login to the same computer. My own computer, right now, has 40 different user accounts running stuff in the background.
I can't even think of a scenario where using separate users is difficult.
Literally never have I ever seen any of the desktop environments integrate this conveniently, albeit CLIs are better in that regard. "You can" isn't the same as "it's the idiomatic approach to doing X". Same with installing packages in a per-user way, so a bad package can't harm anything outside of its sandbox (which in practice you achieve with containers, but those can be inconvenient to work with and you'd probably want VMs for more security anyways). You can have many users, sure, but all it takes is one bad system-wide package, one bad script executed as root (e.g. install scripts, compromised packages) or even not being careful enough with file permissions and things go wrong.
Contrast that to Qubes: https://doc.qubes-os.org/en/latest/introduction/intro.html#q...
Now that was literally built for such a use case (it's based on isolated VMs and works well with Linux distros inside those, really cool project).
Linux is a unix, so has always been multi-user and sharing any data between processes is facilitated in all manner of ways. So context could be shared over files or unix-domain sockets or shared memory or tcp or udp sockets or via message passing or … a bunch of other ways. That has been the case since 1996 or so when I started using it certainly.
And also clarify that it's all lie. He just want to tell the anonymous crowd "look, I'm better than you".
"Just 30% of developers say they use containers in any part of their workflow." https://www.docker.com/blog/2025-docker-state-of-app-dev/
So, yea. Large companies, yes, for sure. But that's not 100% - is it.
If I hand them an image for a Dev Container, sure, they might use it, but it becomes "a thing we need to do, to compile our code in our IDE" not a tool they would use for isolation*.
*) OP seemed to imply that containerization would be nice for safety and security compared to bare metal, but containers were never built for isolation in the first place, mind you. They are namespaces and chicken-coop-like-jails at best.
There was some user chroot thing early on that required me to make a library to intercept the setuid calls to pretend the garbage root-only build system was running as root on everyone else's lowly user account.
And that's not even including the myriad of distroboxes I need to do anything at all on my gaming pc.
(And I agree with the GP. I'm fairly cynical about most developers' security stance and threat model. Source: my own usage patterns.)
https://www.docker.com/blog/2025-docker-state-of-app-dev/
I welcome your apology.
No accusations were made.