...or by starting to learn a programming language like C++ (the best one, nearly all games are written in it nowadays)...
I would actually recommend against C++ as a first language. It's a tricky one to use right, and the performance gain over using a more friendly scripting language are probably going to be negligible for your first few programming projects. If you learn another one, most of the tricks are going to carry over fine, and you can figure out pointers and templates then.
If you're looking to learn a programming language, I'd suggest
Python; the extension
PyGame seems to be fairly popular for making simple games. You could also learn some of the tricks by modding Aquaria with lua; I don't know of any specific game libraries designed around lua, but it's often embedded as a scripting language in games.
Don't think I dislike C++; it's my language of choice and I'm currently over 2000 lines into a project written in it. But it was my first language, and I didn't really understand how to use it properly until ~5 years later.