). But language choice isn't even that important, just pick any big high-level language and never look back! Many of the skills you learn (even in MMF) are universal. Languages are just tools and it's what you do with them that matters. Eventually you'll become an excellent programmer as long as you do some kind of programming that is fun
and somewhat challenging
One thing I would strongly recommend is to learn some basic git
(or some other version control system, but git is the shit!).
Among other things, git makes it incredibly easy to make intelligent backups of your projects as you work on them. So if you mess something up or introduce a bug somewhere, you can revert your changes or find the exact commit where the bug was introduced. Git also helps you keep track of the changes you've made since the last commit (backup), so that you get an overview the effects your current changes are having. You can also create different "branches" of the project, so you can have an experimental branch that doesn't mess up the basic project. As the grand finale: Git doesn't add any extra complexity, it just places a hidden folder in the base-directory of your projects.
Git also makes it easy to keep all your code synced between all your computers, using for example github
(which is awesome) or bitbucket
(which has unlimited private repos).
Additionally git (or some version control) is an absolute must when collaborating with other people. You'll easily become the king of your anthill if you are the local git-wizard.
Git is easiest to use from a command line, because most online instructions are written for the command line. But it's also possible to use the (somewhat incomplete) egit plugin for Eclipse
. I started by using a combination of the plugin and command line, but now I only use the command line.
More on git:
Official site: http://git-scm.com/
Online books, pick one and read the first half:http://book.git-scm.com/http://progit.org/book/
Good reference in the form of a tutorial: http://gitref.org/
Github also has lots of goodies at: http://help.github.com/
They have easy-to-follow guides, especially for using git with a remote server. While git works great locally on your computer, it is also nice to use in combination with a server (like github or bitbucket)
A good way to learn Java and git is to get engaged in a social github project (github is designed to be social and interactive). For example Catacomb Snatch (originally by Mojang) has a fork on github that has a big focus on helping new people getting started:https://github.com/Maescool/Catacomb-Snatch/wiki