It may be obvious that the younger you start programming, the more likely you are to succeed. To be completely realistic, out of every handful of gamers, you'll find someone who has the talent for game development. There are enough people reading this thread to make a handful.
I definitely agree that the said programs ("Rapid Application Development tool" is how you put it; I like that term) are useful for some, but I don't want to limit anyone's design ideas (especially since I haven't heard them yet) by conforming it to one of these programs that aren't fully powered (So don't bother learning Scheme just for games).
C++ is much more than just Object Oriented Programming. Even without classes, C++ adds tons of useful features to C that make certain things simpler. If you know about OpenGL, you probably love C++'s function overloading. Some games are made in C, after all, so since C code works in C++, you don't have to use OOP at all to make games.
Personally, I didn't run into tough math (considering arctan stuff and collision response as tough) until my most recent game. An elementary level math education is good enough for programming some cool things. I just have some problems with the results of most games made without programming. Mainly, they are too similar to one another (RPGMaker as an extreme example).
I choose C++ because at some point, you have to recognize a level of abstraction that has enough power to get the job done while being high enough level so that the job is not too complicated to complete. To put it another way: Assembly language - Too complicated, Specialized Programs - Too weak, C++ - Very close to just right (It's at least in the ballpark when it comes to language quality). It is indeed just zeroes and ones, and that's why modern programming languages exist to fill in the middle ground between tweaking bits and dragging scrollbars.
__________________
|