Also bash will happily tab complete aliases and any scripts in your path. That requires some skill in naming them, but it's certainly helpful.
Also, if one is not sure what's behind an alias, M-C-e will expand it inline. If it turns out to be not the one you hoped for, C-/ (undo) is one keypress away.