To tell the truth I would refrain from using a complex game engine to grasp concepts, Game Maker is fine for that, visual scripting and all.
After that, go with language
For starts pick a language and read about it, syntax and do general purposes exercices to learn how to do some basic stuff, after that pick a simple project and try to create your own little text game, and evolve from there. Thats what I did, kinda.
Well, not as advertising or anything but I am writting a small series in Game Programming Basics and Concepts, right now I only explained a Game Loop, I am not actually teaching how to code, but the concepts behind it. I may not be a professional, and some of my ideas might not be very correct, but that's the way I understood and the way I am trying to make people understand this stuff. So you might enjoy reading those light posts on my blog and might learn a few things. Currently there is not much info, but I usually write a article each two to three days. Anyway....