3 ms·
I dont think anyone is being negative at least not the top level comments i read. I like nix but i gave it a test run at my company and no one could figure out
by bogota 4y ago
I dont think anyone is being negative at least not the top level comments i read. I like nix but i gave it a test run at my company and no one could figure out how to make any change that wasn’t a copy and paste of what i had done.
The docs don’t help much unless you really go diving into them and most people who just want the software to run don’t want to spend the time learning it. I don’t blame them.
This is a very valid criticism of any software. Its why things like docker (containerization) win out even when it was technically around for years before. Someone made it easy to use so people used it.
- seqizz 4y agoSame here. Using Nix and Nixos for years, I have prepared nix-shell and packaging files for our internal tools and committed to internal gitlab. No one ever touched it even after multiple presentations from me. No way to find your way out, especially if you don't have functional programming background.
- octoberfranklin 4y ago> most people who just want the software to run don’t want to spend the time learning it these people are not nix's target audience
- bogota 4y agoI personally think that is a bit of a cop out. Most developers should be able to do basic tasks in a system that has been setup by an expert user. I think bazel is an ok example of this. Its a pretty complex build system but expert users can build macros and rules that the average developer can consume without having to know a ton about everything that is happening. IMO the ability to do the above at some level is the sign of well crafted software.
- qudat 4y agoRelegated to a niche subgroup, I see. There's a significant difference between spending time learning a tool and sinking dozens and dozens of hours into a tool in order to perform tasks that are so basic for other package managers.
- rgoulter 4y agoI don't think tasks which are basic for other package managers require dozens and dozens of hours sunk into nix to learn. "Niche subgroup" is about right in its current state. With text editors, VSCode is powerful and accessible to use, but there are power users who prefer to spend time learning Emacs. With package managers, nix is a power tool. It's not as accessible as it could be. But, the idea of "spend time learning a tool" isn't unusual in software development.
- pdimitar 4y agoSpending time to learn a tool is a standard requirement in our profession. Nobody but the laziest ones has a problem with it. Programs like Nix, Emacs, VIM, Git -- they require a lot of time sunk into them to sometimes get even to basic productivity. The latter is not okay. While I think it's unavoidable for Emacs and VIM, I've seen enough Nix and Git recipes and confusing command line aliases to conclude that Nix (and Git) can be much more friendly and have a smoother learning curve. The ugly truth is that its community is not interested in that and even looks down on busy programmers who want to memorize a few shorthands and move on, which is a very valid mindset to have and I'm not okay with people looking down on it. To me it looks like Nix is firmly headed in the direction of a yet another tool with a very good idea whose authors don't want to make it more usable and thus it remained a niche curiosity for people with too much free time... and the occasional corporate programming team that's perfectly served by its niche benefits. I'd hate for Nix to become that. But at the moment everything points at this being its fate.
- rgoulter 4y ago> To me it looks like Nix is firmly headed in the direction of a yet another tool with a very good idea whose authors don't want to make it more usable and thus it remained a niche curiosity for people with too much free time. What gives you the indication things are headed in the wrong way? I think things are heading in the right direction. The last year has seen nix flakes release to the stable nix version. Flakes are a big UX improvement to Nix. The last few releases of nix have added improved support for debugging nix code. (Poor debugging UX was highlighted as a major pain point). Efforts from major contributors are acknowledging the importance of improving documentation. - From the latest community survey, the steep learning curve and poor onboarding experience was noted as a major pain point. etc. > even looks down on busy programmers who want to memorize a few shorthands and move on Ehhh. I don't think it's fair to say "vim is a bad tool because it requires learning to get used to it". -- Fortunately, developers aren't stuck between nano and vi, they've got highly accessible tools like VSCode.. or on the command line, even micro https://github.com/zyedidia/micro https://github.com/zyedidia/micro