Hacker News new | ask | show | jobs
by Zhyl 1940 days ago
I'm surprised that Fish isn't used more for education. I don't know of any distros aimed at new users which have fish as the default. I don't think I've seen any tutorials that use fish to teach shell concepts.

It seems like such a missed opportunity, especially at a time when Linux Gaming is on the rise. There's a whole audience that would have the activation energy of getting into shell scripting lowered by being slightly more friendly and approachable than bash.

I feel like fish is the python of shells, and python has more than proved that a language being 'easy' and approachable makes it much more appealing to a wider audience.

4 comments

This is probably due to the fact that fish isn't 100% POSIX compliant. A lot of commands new users see on the web won't work properly in fish shell.

For example, you couldn't set environment variables for one command in fish like you could in other shells until the last minor version (3.1).

I'm glad fish is becoming more like other more standard shells while maintaining its user-friendliness.

I think the lack of being able to reliably copy in commands from tutorials is the biggest issue there. Needing to translate any bash command that uses command substitution is a pain, and is very newbie-unfriendly if they run into it.
> I feel like fish is the python of shells

There is actually python for shell. Check out https://xon.sh

And Marcel the Shell ⌘ https://www.marceltheshell.org/
Off topic: I came back to Python after a few years and WOW the LSP is fast and helpful. Maybe that's always been the case but after Typescript forced me to turn my vim into an IDE, Python really outshines it on the tooling.

Edit: the point is that I should try fish too. Great user friendly tooling isn't just for beginners.