I've used Emacs quite a bit, and I'm comfortable with the most basic commands/shortcuts, but I know Emacs has a lot more to offer than what I'm using. What are some of the lesser known features of emacs that can help me become a more productive programmer?
What are some ways to be more productive with Emacs?
text editor;emacs
Learn elisp.   It allows you to program any shortcut you can think of.  Any time you find yourself performing a multi-step process for something useful, you make a function out of it and bind it to a hotkey combo.It lets you experiment with functional programming - learning a new paradigm is a good way to expand your horizons.