I've been admiring fish shell for a while, but use too many computers to justify trying to use it. As a result, I use bash, despite its shortcomings for the pure reason of portability. I can rest at night knowing that the next unix machine I use, will almost certainly have bash installed somewhere, and a version that's compatible with the minimal customization I actually do for it.
> I use bash, despite its shortcomings for the pure reason of portability. I can rest at night knowing that the next unix machine I use, will almost certainly have bash installed somewhere
No, bash isn't standard at all. It's usually installed on Linux, but BSDs and other Unices don't have it installed by default, and not all Linux distros have it either. (Off the top of my head: OpenWRT.) The standard is sh, the bourne shell. It's a pet peeve of mine -- it's really annoying to port things that use bash internally for no reason.
That's basically why I use fish after many years of zsh. zsh can probably do more, but I don't need to configure fish to get something useful that works the way I do. (The only config I've done on my current install are a bunch of aliases and a custom prompt)