I am developing a small program for navigating Linux desktop, with ergonomics in mind:
https://github.com/amkhlv/wmjump
The idea is to associate, subconsciously, a color to every type of program.
Obviously, Firefox is orange, GVim is dark green, PDF viewers are reddish etc.
A colored list pops up, with a charhint for every window; pressing a key brings you to that window. I have been using this system for about 10 years now, seems to work for me.