I think one of the most important things you can do is choose a game that you enjoy playing. This will help keep you interested in it and will make you more familiar with how the code itself translates into the players perspective.
Once you've picked that game, regardless of how big it is, you don't have to try to figure out how every line of code works. Pick a piece of it and look at that. For example, try to figure out how player data is stored or how a menu item is drawn, etc.
The next thing you can do, which goes along with my previous bit, is try to change something. Not something huge (at first), just something simple and noticeable in game. Even something as simple as the text on a button on a menu or adding a menu item or changing damage calculations. Maybe you think they should have done something differently, try to change it yourself.
When I first got interested in developing games, I was really into 2D online RPGs. So I found the source for one online and I started building onto it. Adding my own features and tweaking things, fixing bugs, etc. That was in VB6 a few years ago and now I'm using C# and XNA and writing my own game from scratch. Because I enjoyed the games, it motivated me to want to work on it, to make it better. Coincidentally, this is also how I learned a lot of the programming, debugging and problem-solving techniques I use today in my non-gamedev related day job.
It's also very helpful if the game has a community of modders that you can ask questions and get help and examples from. But then again, even if that doesn't exist, you're already here and we're ready to help.