I used the fish for 3 or 4 months. It's pretty and friendly. It provides excellent abilities for work with history. But the main disadvantage that it has a different syntax, so, you forced to rewrite all your aliases and helpers, and have got troubles if you want to run bash scripts. Bash and Zsh also has plugins for autocomplete, suggestion, and you can make it stylish, but it is not so easy like with a fish. In summary - fish may be good for newbies, who afraid console and Linux users, who rare works with scripts. But I went back to zsh