The last two items are definitely achievable. As a saying goes, "vim is my editor, Linux is my IDE." I'd rather learn a handful of tools that will last me my career and be valuable in many different circumstances in and out of work and more formal "programming" than learn a new IDE per language and/or a new Master IDE for multiple languages every few years.