Nix Documentation | 405 Members | |
| Discussion about documentation improvements around the Nix ecosystem | 78 Servers |
| Sender | Message | Time |
|---|---|---|
| 12 Jan 2024 | ||
| agreed | 01:17:50 | |
| automated backlinks would be great, but why should we compromise on providing clear, understandable information in documentation? | 01:18:18 | |
| Wrong docs are imo worse than missing docs | 01:18:35 | |
e.g. the stdenv.mkDerivation docs don't actually link to builtins.derivation or explain that mkDerivation is a wrapper around builtins.derivation and not a separate thinghttps://nixos.org/manual/nixpkgs/unstable/#sec-using-stdenv | 01:18:48 | |
| And if we write information about Nixpkgs in Nix, that can easily become wrong | 01:18:53 | |
In reply to @9999years:matrix.orgoh wow it doesn't even do that? o.o | 01:19:03 | |
i'm not saying we should have a ton of nixpkgs docs, but we should feel comfortable referring to high-level nixpkgs concepts that are unlikely to change (like mkDerivation, the override and overlay systems, etc.) | 01:19:33 | |
| I'd be okay with that yeah | 01:19:51 | |
| explaining that things like overlays are just implemented as regular nix expressions would help users understand that they're not magical features or hard-coded into nix | 01:20:09 | |
| but right now you basically just have to ask an expert or read the source code, and the nixpkgs source code for the stdenv stuff, overlays, overrides, and so on is gnarly especially for beginners | 01:20:33 | |
In reply to @infinisil:matrix.orgvice versa is also true. certainly what's cross-explained can be limited, but something as simple as " derivation is used to implement higher-level packaging tools like stdenv.mkDerivation in Nixpkgs. See link for more information" | 01:20:38 | |
In reply to @9999years:matrix.orgReminds me of https://github.com/NixOS/nixpkgs/pull/248220 and https://github.com/NixOS/nixpkgs/pull/255132 | 01:20:58 | |
In reply to @9999years:matrix.orgthis would be fantastic | 01:21:54 | |
In reply to @infinisil:matrix.orgthose PRs look great! what's blocking them from being merged? | 01:22:16 | |
| i see this 'perfect is the enemy of the good' stuff a lot with nix docs, where PRs that improve docs are rejected or bikeshed because they're not perfect. but they don't need to be perfect, they just need to be better than they were before | 01:22:46 | |
In reply to @infinisil:matrix.org* vice versa is also true. certainly what's cross-explained can be limited, but something as simple as " derivation is used to implement higher-level packaging tools like stdenv.mkDerivation in Nixpkgs. See link for more information" would help a lot for little overhead | 01:22:47 | |
| especially when the state of the docs is so poor | 01:23:09 | |
| Yeah.. | 01:23:11 | |
| So the first one is indeed ready, I'll just merge. People can make follow-up PRs to improve on it | 01:23:27 | |
| The second one is very incomplete though | 01:23:35 | |
| Needs more work | 01:23:39 | |
| And merged :) https://github.com/NixOS/nixpkgs/pull/248220#issuecomment-1888257490 | 01:26:03 | |
| 02:16:42 | ||
In reply to @9999years:matrix.org (and also, Qyriad) I would have preferred it if you read my response with no hostility, because there frankly wasn't any. There was however, a degree of frustration as I thought your messages were quite hostile, and I struggled to respond cogently to them on my first try (I did not want to produce a wall-of-text, something I fall into easily). As for why I thought your comments were hostile: they seemed entirely out of the blue. I scrolled up to try and find the context but could not find any; if I missed it please link me to it. Anyway, given this lack of context: I was not sure what these messages communicate apart from insinuating that those working on the docs think the docs are close to being done and/or that they aren't working hard enough? Rather hostile, yes? So take my "no." for what it was, if you can (though I appreciate that this is likely not possible given how the situation evolved): a note of disagreement. Frustrated disagreement yes, but not hostile disagreement. Certainly no more hostile than your own message. As for why I disagree: well, I am still not clear if you want to know. I am also not clear on how to not make it a wall of text. I am going to risk trying to put together something regardless. I hope again (though I appreciate that this is likely not possible) that you'll put some effort into reading what I'm sharing, instead of dismissing it outright as a "wall of text". I decided to start contributing to Nix docs a few weeks ago, by doing light review work. I also really wanted to contribute to a working Wiki, and therefore was interested in getting Wiki 2.0 rolling. On the PR review front, I am glad that proofconstruction wrote me a fairly detailed response, and I appreciate that they put in some effort to take me sincerely, even though it was hard and their frustration bled through. They made their doubt of my sincerity clear, and I made my own unhappiness with their doubt clear. Regardless, we gave each other the space to speak, and reached a mutual understanding, as you can see. Far more important however, is what proofconstruction shares. Please read that, even if you cannot summon the motivation to read what I wrote. I learned a lot from it. And it's an excellent introduction to what the actual issues are:
But barring all that, a non-trivial part of it is also due to politics. Nix is being advertised in ways that are unfair to those doing the actual work in the trenches. Frankly, the learning journey becomes much easier if a beginner (speaking also as a fellow beginner!):
Later, once you're more familiar with Nix, you can go back to playing with those (if you still feel the need). But already, by implementing the aboeve two points, the documentation situation for a beginner has improved by cutting down on what they are required to take in at one go.
So, as a consequence of this: should people work doing painful, manual work that might quickly go out of date? Or should they work on getting some of the basic infrastructure that would help with this in place?
To be productive (relatively speaking), I had to follow a sequence like this:
That's enough to cover 80% of my needs. The remainder: I have to ask others for pointers about, and/or searching for PRs in flight for nix docs, and/or I have just discovered something undocumented. Still though, this is 4/5. Not great, but not terrible. As an illustration of the "noise in the channel" issue are you aware of:
| 03:44:20 | |
In reply to @9999years:matrix.org* (and also, Qyriad) I would have preferred it if you read my response with no hostility, because there frankly wasn't any. There was however, a degree of frustration as I thought your messages were quite hostile, and I struggled to respond cogently to them on my first try (I did not want to produce a wall-of-text, something I fall into easily). As for why I thought your comments were hostile: they seemed entirely out of the blue. I scrolled up to try and find the context but could not find any; if I missed it please link me to it. Anyway, given this lack of context: I was not sure what these messages communicate apart from insinuating that those working on the docs think the docs are close to being done and/or that they aren't working hard enough? Rather hostile, yes? So take my "no." for what it was, if you can (though I appreciate that this is likely not possible given how the situation evolved): a note of disagreement. Frustrated disagreement yes, but not hostile disagreement. Certainly no more hostile than your own message. As for why I disagree: well, I am still not clear if you want to know. I am also not clear on how to not make it a wall of text. I am going to risk trying to put together something regardless. I hope again (though I appreciate that this is likely not possible) that you'll put some effort into reading what I'm sharing, instead of dismissing it outright as a "wall of text". I decided to start contributing to Nix docs a few weeks ago, by doing light review work. I also really wanted to contribute to a working Wiki, and therefore was interested in getting Wiki 2.0 rolling. On the PR review front, I am glad that proofconstruction wrote me a very detailed response, and I appreciate that they put in some effort to take me sincerely, even though it was hard and their frustration bled through. They made their doubt of my sincerity clear, and I made my own unhappiness with their doubt clear. Regardless, we gave each other the space to speak, and reached a mutual understanding, as you can see. Far more important however, is what proofconstruction shares. Please read that, even if you cannot summon the motivation to read what I wrote. I learned a lot from it. And it's an excellent introduction to what the actual issues are:
But barring all that, a non-trivial part of it is also due to politics. Nix is being advertised in ways that are unfair to those doing the actual work in the trenches. Frankly, the learning journey becomes much easier if a beginner (speaking also as a fellow beginner!):
Later, once you're more familiar with Nix, you can go back to playing with those (if you still feel the need). But already, by implementing the aboeve two points, the documentation situation for a beginner has improved by cutting down on what they are required to take in at one go.
So, as a consequence of this: should people work doing painful, manual work that might quickly go out of date? Or should they work on getting some of the basic infrastructure that would help with this in place?
To be productive (relatively speaking), I had to follow a sequence like this:
That's enough to cover 80% of my needs. The remainder: I have to ask others for pointers about, and/or searching for PRs in flight for nix docs, and/or I have just discovered something undocumented. Still though, this is 4/5. Not great, but not terrible. As an illustration of the "noise in the channel" issue are you aware of:
| 04:00:49 | |
In reply to @qyriad:matrix.org Chris McDonough's approach to how that conversation went was jarring for me, because I could not understand how they went from "no?", to my response with "precisely." to "<threat>" (this is how I perceived it). First off, I'm not a part of the Nix doc community, and am basically a random internet person. There are no special tags associated with my username. Why should my actions (and I am sorry, but I am not a trained diplomat, and I have struggles of my own that do not make it easy for me to do well socially!) be responsible for whether they participate in the community? Furthermore, why not just ask me for clarification on what I am trying to communicate so that I feel welcome enough to lay them out? It was already a work-in-progress struggle to lay out the information in a non-wall-of-text-format (ultimately, I failed entirely). It took me a long time to write out the wall-of-text you do see above. That's a non-trivial time commitment, and it's worse when one spends that time, but it turns out that the wall-of-text itself is seen as unwelcome. I also believe that asymmetric's response to the situation assumes that my original "no." was written with aggressive hostility, and helps frame my action as such immediately placating Chris McDonough and asking them to share their frustrations in private. As much as Chris McDonough is a contributor, so am I. As much as they are human, so am I. So if there there was a situation to be resolved, it involved both Chris and myself, rather than only Chris in private. Most importantly, if there was an issue, it involved understanding on both my part and Chris'. I will openly accept that I made a mistake today, and I will take responsibility for it, including if moderators deem it necessary, by not participating here further. I will not accept however---and I firmly draw a line there---that I am unfriendly, aggressive or (and most importantly) unkind. | 04:16:03 | |
In reply to @qyriad:matrix.org* Chris McDonough's approach to how that conversation went was jarring for me, because I could not understand how they went from "no?", to my response with "precisely." to "<threat>" (this is how I perceived it). First off, I'm not a part of the Nix doc community, and am basically a random internet person. There are no special tags associated with my username. Why should my actions (and I am sorry, but I am not a trained diplomat, and I have struggles of my own that do not make it easy for me to do well socially!) be responsible for whether they participate in the community? Furthermore, why not just ask me for clarification on what I am trying to communicate so that I feel welcome enough to lay them out? It was already a work-in-progress struggle to lay out the information in a non-wall-of-text-format (ultimately, I failed entirely). It took me a long time to write out the wall-of-text you do see above. That's a non-trivial time commitment, and it's worse when one spends that time, but it turns out that the wall-of-text itself is seen as unwelcome. I also believe that asymmetric's response to the situation assumes that my original "no." was written with aggressive hostility, and helps frame my action as such by immediately working to placate Chris McDonough and asking them to share their frustrations in private. As much as Chris McDonough is a contributor, so am I. As much as they are human, so am I. So if there there was a situation to be resolved, it involved both Chris and myself, rather than only Chris in private. Most importantly, if there was an issue, it involved understanding on both my part and Chris'. I will openly accept that I made a mistake today, and I will take responsibility for it, including if moderators deem it necessary, by not participating here further. I will not accept however---and I firmly draw a line there---that I am unfriendly, aggressive or (and most importantly) unkind. | 04:16:37 | |
| * Chris McDonough's approach to how that conversation went was jarring for me, because I could not understand how they went from "no?", to my response with "precisely." to "<threat>" (this is how I perceived it). First off, I'm not a part of the Nix doc community, and am basically a random internet person. There are no special tags associated with my username. Why should my actions (and I am sorry, but I am not a trained diplomat, and I have struggles of my own that do not make it easy for me to do well socially!) be responsible for whether they participate in the community? Furthermore, why not just ask me for clarification on what I am trying to communicate so that I feel welcome enough to lay them out? It was already a work-in-progress struggle to lay out the information in a non-wall-of-text-format (ultimately, I failed entirely). It took me a long time to write out the wall-of-text you do see above. That's a non-trivial time commitment, and it's worse when one spends that time, but it turns out that the wall-of-text itself is seen as unwelcome. I also believe that asymmetric's response to the situation assumes that my original "no." was written with aggressive hostility, and helps frame my action as such by immediately working to placate Chris McDonough and asking them to share their frustrations in private. As much as Chris McDonough is a contributor, so am I. As much as they are human, so am I. So if there there was a situation to be resolved, it involved both Chris and myself, rather than only Chris in private. Most importantly, if there was an issue, it involved understanding on both my part and Chris'. I will openly accept that I made a mistake today, and I will take responsibility for it, including if moderators deem it necessary, by not participating here further. I will not accept however---and I firmly draw a line there---that I am unfriendly, aggressive or (and most importantly) unkind. | 04:17:30 | |
| That response doesn't seem well suited to this venue | 04:18:32 | |
| * (and also, Qyriad) I would have preferred it if you read my response with no hostility, because there frankly wasn't any. There was however, a degree of frustration as I thought your messages were quite hostile, and I struggled to respond cogently to them on my first try (I did not want to produce a wall-of-text, something I fall into easily). As for why I thought your comments were hostile: they seemed entirely out of the blue. I scrolled up to try and find the context but could not find any; if I missed it please link me to it. Anyway, given this lack of context: I was not sure what these messages communicate apart from insinuating that those working on the docs think the docs are close to being done and/or that they aren't working hard enough? Rather hostile, yes? So take my "no." for what it was, if you can (though I appreciate that this is likely not possible given how the situation evolved): a note of disagreement. Frustrated disagreement yes, but not hostile disagreement. Certainly no more hostile than your own message. As for why I disagree: well, I am still not clear if you want to know. I am also not clear on how to not make it a wall of text. I am going to risk trying to put together something regardless. I hope again (though I appreciate that this is likely not possible) that you'll put some effort into reading what I'm sharing, instead of dismissing it outright as a "wall of text". I decided to start contributing to Nix docs a few weeks ago, by doing light review work. I also really wanted to contribute to a working Wiki, and therefore was interested in getting Wiki 2.0 rolling. On the PR review front, I am glad that proofconstruction wrote me a very detailed response, and I appreciate that they put in some effort to take me sincerely, even though it was hard and their frustration bled through. They made their doubt of my sincerity clear, and I made my own unhappiness with their doubt clear. Regardless, we gave each other the space to speak, and reached a mutual understanding, as you can see. Far more important however, is what proofconstruction shares. Please read that, even if you cannot summon the motivation to read what I wrote. I learned a lot from it. And it's an excellent introduction to what the actual issues are:
But barring all that, a non-trivial part of it is also due to politics. Nix is being advertised in ways that are unfair to those doing the actual work in the trenches. Frankly, the learning journey becomes much easier if a beginner (speaking also as a fellow beginner!):
Later, once you're more familiar with Nix, you can go back to playing with those (if you still feel the need). But already, by implementing the aboeve two points, the documentation situation for a beginner has improved by cutting down on what they are required to take in at one go.
So, as a consequence of this: should people work doing painful, manual work that might quickly go out of date? Or should they work on getting some of the basic infrastructure that would help with this in place?
To be productive (relatively speaking), I had to follow a sequence like this:
That's enough to cover 80% of my needs. The remainder: I have to ask others for pointers about, and/or searching for PRs in flight for nix docs, and/or I have just discovered something undocumented. Still though, this is 4/5. Not great, but not terrible. As an illustration of the "noise in the channel" issue are you aware of:
| 04:27:39 | |