3 ms·
NixOS is high-level declarative, so you're reading high-level config diffs when the AI agent is pitching changes. Unless you're brand new to Linux or computing
by hombre_fatal 7mo ago
NixOS is high-level declarative, so you're reading high-level config diffs when the AI agent is pitching changes.
Unless you're brand new to Linux or computing, it's not a mystery what a given nix config change is ever doing.
You can probably guess what this does:
networking.firewall.allowedTCPPorts = [ 8080, 9000 ];
The things to know about the OS are high level things. The rest of its idiosyncrasies you learn just in time through daily exposure like anything else.
- shevy-java 7mo ago> Unless you're brand new to Linux or computing, it's not a mystery what a given nix config change is ever doing. I am not brand new - and I don't know what the heck the config is doing. That is why I rely on documentation. The "code is self-explanatory" is always an attempt to not have useful documentation and try to rationalise that problem away.
- hombre_fatal 7mo agoNothing about this changes with Nix nor AI agents. You can read documentation on an as-needed basis or to your heart's content. The point is that the majority of the day to day changes I make to my desktop environment aren't so critical that I need to do more than read an AI agent's proposed changes to my config and accept them when they look reasonable. And I don't think looking up the exact config options to NixOS' networking system does anything to increase my knowledge of the OS. It's just a triviality.
- sally_glance 7mo agoComing from Ansible with hand-written config templates this was honestly a friction point for me - I felt like NixOS is trying to actively hide what it's actually going to configure. It's gotten better now that I read some nixpkg service sources but from time to time I still feel the urge to just directly manage my systemd units, sshd configs and whatnot. Like, sure it simplifies the setup but at the same time also puts another abstraction between me and the software I'm using.
- frantathefranta 7mo agoI agree with the many levels of abstraction, but at the same time, directly managing systemd units is also so much easier with Nix then any other distro I've tried.
- hombre_fatal 7mo agoYou always have the option to do your own custom thing like use nix config to manage /etc/iptables.rules. NixOS does you one thing better by giving you the option to configure things without caring about the underlying implementation, like whether the firewall uses iptables or nftables or something else.
- afishhh 7mo ago> [ 8080, 9000 ] Fails to parse is what it does... Are we really living in times where people can't write a single (syntactically) well-formed line of code in a programming language they use? I understand this doesn't really matter when just using NixOS Slop Edition™ but man I hate it.
- hombre_fatal 7mo agoYou hate that I couldn't remember whether nix has array delimiters on the spot? Jeez, tough crowd. Though it also kinda represents this pride over triviality that some people latch on to in the AI world which is odd since it's also only a mistake a human would make. Had I run my hand-written comment through a proofreading clanker, I would have spared you the negative emotional reaction. In the pre-AI world, you would have probably not been so harsh since it's understandable that someone make that mistake with such an idiosyncratic language like nix that almost nobody writes full-time. Yet in the AI world, you demand more from humans. Something interesting, there.
- ofkwidjwus 7mo agoThe other poster is being a jerk, but your point doesn’t really refute theirs: if you can’t even be bothered to check for an array delimiter, instead passing that on to an AI, how will you ever learn? People are being more demanding of humans because humans are taking knowledge and learning for granted. All this abstraction has a cost, and the cost is you.
- hombre_fatal 7mo agoThings are falling out of your memory all the time as a function of how often or seldom you do something, how trivial or superficial the information is, and how minor the difference between other tools you use regularly. Despite many years of experience, I still sometimes get this wrong in Python or its equivalent in the other languages I regularly switch between: from math import sqrt as s import sqrt as s from math import sqrt from sqrt as s The difference here is that, because I admitted to using AI, I don't get the grace of making the most trivial mistake in a forum comment. And suddenly we pretend that had I just written it by hand a few more times, I would never err again in forum comments, despite making similar errors this week in languages I've used to write millions of lines of code across decades.