It’s not about the destination, it’s about the journey.

  • @merthyr1831@lemmy.world
    link
    fedilink
    68
    edit-2
    3 months ago

    nix being 20 years old and still lacking decent documentation on the language it’s what hurts me the most, because the people who do know it works so some amazing things with it

    • christ0st
      link
      fedilink
      313 months ago

      Imagine if NixOS had as good a wiki as Arch. Personally, I wouldn’t bother with another distribution again.

      • Johanno
        link
        fedilink
        143 months ago

        They released their wiki apparently on April 1st.

        So now we need just to fill it with the missing content. (which there is a lot). And it will be as good as the arch one… In 20 years.

        Or smb made a bad April’s fool and actually their wiki is older.

        • @ScreaminOctopus@sh.itjust.works
          link
          fedilink
          English
          83 months ago

          The NixOS wiki’s been around for a few years at least, it just doesn’t get as much traffic from search engines since NixOS isn’t super popular.

          • Kirby
            link
            fedilink
            103 months ago

            I think what they are referring to is the official wiki at wiki.nixos.org (there also is / was an unofficial wiki)

              • Johanno
                link
                fedilink
                53 months ago

                Ah this makes sense since I started nixos 3 weeks ago and was sure I already was on a wiki before April. I believe the official one is also mostly copied from the unofficial one for now

          • @ComradeKhoumrag@infosec.pub
            link
            fedilink
            22 months ago

            Software engineering is usually distinct from programming in that it isn’t about the logic behind programming, but about the project management that all software projects typically have in common.

            Besides agile methodology, a lot of software engineering involves creating reproducible environments. While NixOS doesn’t provide anything that much different from tools like Ansible,

            NixOS follows a functional/declarative design paradigm, functional/declarative design paradigms communicate similar logic for solving the same problem. It’s a restrictive paradigm. Consider how javascript is not restrictive, as in, you can code with any design paradigm in javascript, and how it’s ugly for that.

            I also think functional paradigms mirror the natural language closer than imperative paradigms. That’s subjective, but I would still argue Math is a logical language that is a subset of the natural language, and since functions in programming represent a process of doing something, functions make for natural verbs. Meaning, understanding the naming convention for the functions, is a natural naming convention for when I communicate with other software engineers, even when I’m not asking about making configurable/reproducible systems in NixOS

            Or when I look at how to config things like firewall, ssh, vpn servers, user group permissions… it’s a minimalist description that I could communicate to other people configuring even on a debian server

            So, it’s hard because it’s restrictive, but if you’re willing to put up with a learning curve, you get a language agnostic framework for describing computing environments, more or less. Then there’s more advanced stuff with nix flakes, which still doesn’t make sense to me functionally/linguistically, but I’m starting to see the value in parallel package management and the precision in reproducibility they provide by requiring sha256 git commits