Since programming is more thinking than typing for me, choosing nano or vim is a matter of taste. Vim btw got a higher typing and fixing rate speed when you know how to use it properly.
I'm using Emacs when I have to (SSH) but I'm on Atom most of the time.