Since I took up programming and fell on my face with studying ( failed the third class after being away from computers for three years ) here is my input.
ASM ( assembler ) the most popular language close to machine code. There are other languages ten times better ten ASM but this is used most often.
C is shorthand for Assembler but requires more processing power because it is a high level language. C++ is a low level language ( like ASM ) but with high moves. C++ acts like C but get better results. This is why it is used a lot.
Java ( Sun Systems ) is an operating system that is cross platform and requires little power. This is why you have phone systems with Java games. Java is C programming for the web.
You can insert ASM moves inside C, C++, or even Java ( in some cases ).
Pearl is another programming language usually found in UNIX programming.
UNIX is a low-level operating system similar to DOS. OSX, Linux, Ubunto Mint, Debian, and most of these Linux clones are all really GUI for UNIX with there own specialty.
Mysql is a database enviorment that was great until people found ways of walking around it. People still use in databases and lexicons.
usenext/ newsgroups is a text command-line info line that came before GUI web browsers. Many are still in high use today.
Terminal is the Command-line of UNIX. Command-line is the Terminal of DOS.
Windows uses something called Visual Basic ( which is not pearl ) dedicated for Windows programming. BASIC is the operating system that was before Windows and ran on C64 mostly. You can program in forms of BASIC for Windows 1, 2, 3, 95, Winter95 (97), and 98, and 98se, NT, XP and so forth as well.
Actionscript is the Shockwave Flash version of programming language. With Action Script you are able to do everything with low-level languages and high levels for SWF. Action Script 3.0 is 3d oriented. However you can use Action Script 2 and 1 moves in 3.0 ( from my understanding ). It just makes life a lot easier when making flash games or movies.
Unity is web based model that could run offline as long as Unity is installed and the programmer allows the game to run without being online. It is amazing. Like flash but you need to know programming. .............................................................................................................................................................
Being the novice we are you should install Windows for video-games but research about Running Linux/OSX/Ubunto from within Windows. However this could work vice versa. However you want to play games.
As a starter programming lessons you should focus on JavaScript as it is used in wireless devices.
You need to know math period no matter which way you go, you will need math. If you could mast physics, Geometry, and Algebra programming should follow easy. A great programmer will enjoy ANSI numbers to Hexidecimal translations.
If you plan to go to college you need to keep your grade above a 3.5 in most cases depending on the level of college.
I am not a great programmer but a flunk out.
If your like me I would stick to flash as getting a 2d game out. Otherwise I would checkout Unity as well. There is no such thing as a programmer who only masters one kind of language. Your getting to know all languages a little bit but you need to know math.
There is also programming style as well. Keep your code clean and readable. Before in the past ( the stone age, everything would need to be written down in a notebook and then typed in over and over. It was crazy and insane.
Another thing. If your going to use UNIX your going to be mastering the terminal. As you can open any window in a terminal and load the compiler and text editor ( which most UNIX OS have built in )
Again Linux ( like the cheaply popular Ubuntu ) or ( the expensive OSX ) is just a GUI front-end of UNIX to make things simpler. In UNIX you could load the necessary files in order to run any other operating system programs. However that is a lot of work to do.
Unlike wndows Linux is cleaner and simplier and made for programmers.
I would get a windows machine and just run Ubuntu when I need to use a Linux type world. It is faster ( not better) then Debian and less expensive then OSX.
Android OS is using a variant of Linux as well ( from my understanding ). This is why you can't access these phones as with the iOS phones so easy.
Another thing is the Leopard for Intel machines can install on any PC along with necessary files included. However Apple does not want you to install Leopard on non-OSX machines. It is the only cross platform version of OSX that is able to install on all machines. Meaning it can read from USB as with any OSX install. However I do not know how many people are successful with loading it on both kinds, but makes the only worlds real univesal OS. However Leopard is 32-bit on Intel.