New to game programming, where to begin?

This is a discussion on New to game programming, where to begin? within the Game Programming forums, part of the General Programming Boards category; I've been looking for books to this effect; something for an intermediate level programmer that will show the way to ...

New to game programming, where to begin?

I've been looking for books to this effect; something for an intermediate level programmer that will show the way to the world of game programming. There are quite a few books out there; which ones are the best/recommended?

"Simplicity does not precede complexity, but follows it." -- Alan Perlis
"Testing can only prove the presence of bugs, not their absence." -- Edsger Dijkstra
"The only real mistake is the one from which we learn nothing." -- John Powell

Ok heres the deal. Before you start conjuring up wild ideas like starting to learn programming and game programming at the same time by starting with a project like a "Doom/Quake/Ect" game, i have heard this a million times on the board "Umm......hey all. Well i am kindive new to programming but have read a couple of books", they really have just looked at a couple of titles on amazon, "and i am egar to start game programming and have decided to start with a Quake 2 type game". This is not the approach you want.

First:
Learn C++ before you even think about programming games. I know it sounds boring but in reallity, that is if you are meant to be a programmer, this core level stuff is supposed to be just as fun as learning game specific stuff. I know when ever i learn something new about C++ i jump for joy . One thing i might add, you do not need to be as pro as the people on the C++ board, that meaning you dont have to know every little detail of every little thing, you just need to be pro at the concepts behind them. Then when ever you have some little cyriptic problem just pretend that those people work for you, you post and they awnser in about 1.3 second and in a couple of seconds you will have them yelling back and forth at eachother trying to best solve your problem .

Second:
Buy a book about Game programming using Win32 API. Dont get a book that uses another game engine, this is the fastest way to get very comfortable at doing nothing your self and being ok with that fact.

Next:
Get a Direct X or Open GL Book, it seems like most people on this fourm use Open GL but dont let that make your decision. They are both great and eaither will work just fine.