With love: I always felt like fish and even zsh are kind of beautiful OCD-induced bouts of counter productivity in the same vain as Dvorak keyboard layouts and Plan 9. We can't handle things being messy and imperfect so we solve it by building our own parallel universes. What do you do when you have to use a computer without your customization? Perfect is the enemy of good, worse is better, join us on the dark side,…
Take it for a test: go write a project euler problem (or any small programming task--doesn't have to be math) in your shell of choice. It's painful.
There are weird features of shell languages that will never go away (globs and unquoted strings sharply limit the design space), but even given those limitations, it's possible to design nicer languages.
I don't fault someone for saying "right now, I'd rather use the default shell my box comes with, because the pain points of switching are too high". But yes, we really do need something to replace it. I think both zsh and fish make nice steps, but I don't think either really meets my hopes.