Shell aliases are a useful way to shorten long or complicated commands or to easily add additional arguments when running commands.
Common aliases are I see are `gs` for `git status`, `a` for `artisan` and `dr` for `drush`.
I've been experimenting with Zellij for the last day or so, and have written aliases like `zl` for `zellij list-sessions`, but have also added extra arguments such as `zellij list-sessions | sort | grep -v EXITED` to sort the sessions and filter any exited sessions.
Running aliases makes it easier and quicker for me to run these commands, and less likely for me to make errors and type incorrectly.
The issue with aliases is that you can forget that the underlying commands are if you only type and see `gs` or `zl`.
It's also not easy when giving demos or pair or mob programming for others to see and understand the commands that are being run.
Instead of aliases, I mostly use abbreviations with zsh-abbr that expand automatically after pressing the space key.
That way, I and others get to see and understand the commands being run.
I still have some aliases that don't expand but now I use abbreviations as my default approach.