Believe it or not, there is a huge difference between if you want to learn programming and make games or want to learn programming to make games. The difference being that in the first situation you are equally passionate about both game dev'ing and programming (separately passionate) and want to pursue them both. In the second situation, you are interested in programming, but this as a means to your goal to make games. I have totally separate advice for whichever one you are. Neither way of thinking is better.
If you want to learn programming and make games, then I would recommend installing GNU/Linux and using C to start making programs using legendary tools like GCC, make, GNU nano, bash, Emacs, GDB, GNU/Linux itself, etc. This is a whole different topic, but there is still something I must address. I will definitely get a lot of flak here for recommending what I just did, but honestly if you learn this stuff, everything else is just easier and not superstitious. You can then learn C++ if you want to fit in with everyone else, once your projects become too big for C (you can judge this based on what is comfortable size for you). You don't have to use C++ for large projects, it's all preference. C code is valid C++ code, but not vice versa (its like C is the inside layer of a C++ onion). Some might recommend you stick with something like Python, Lua, or Java on Windows ($indows), but if you are passionate about programming separate from games, you might as well learn the mainstays and norms of the modern PC.
Overall, you have some very productive times available to you. Kids have lots of energy at your age, and they also have lots of time. Respond if you want me to elaborate on anything I said.