First off, good on you for wanting to get into this! It's pretty daunting to get into game design for the first time.
As to answer your first question, I have always found it best to try and start with small projects to begin. Come up with something you want to create, and look up what you don't know along the way. This will help you build some experiences with how to program and get you familiar with the work flow and language. Then tackle larger and larger projects in this way.
Secondly, if you go into game design knowing the platform in which you want to develop for, this is a good place to start. Familiarize yourself with functionalities and mechanics that pertain to the platform you are developing for. Take for example mobile games, like you stated. Familiarize yourself with the functions necessary to take advantage of the touch screen, the gyroscope, and possibly the camera if you need it. These can then stem into ways to control your game. I would suggest, however, that unless you have found a good way to export your games quickly in order to test them on a mobile device, make everything subject to change during your testing process as far as controls, as when you test on a larger screen with a mouse and such, it may not translate well into the mobile arena.
Good luck to you, and I hope that I have been helpful to you in some way! Remember, its a marathon, not a sprint. Take your time, and enjoy the process. Don't always be focused on what it will be like to be at the finish line, or you will not be able to focus on the steps it takes to get there.