Well, as me:
I started with Pascal, then Game Maker, then C++/OpenGL/SFML
Each middlewares have their own advantages and disadvantages.
Now I don't and will never use Game Maker again.
Game Maker is interpreted and SLOW! It can not handle big games.
However, it is EXCELLENT kickstart for young and newbie programmers. Game Maker especially tries to teach people to object-oriented programming, as it is object oriented. But yes, serious games tends to run very slow! Same as the rest.
Slow, but Game Maker is unlimited. You can make even an antivirus software with it (that will be very slow anyway...)
That is, SLOW, but feature-rich
On the other end, RPG maker...
RPG maker is fast, even more faster than Game Maker, but is feature-limited, and changing default graphics is terrible.
As a experienced game designer I can tell that these tools - RPG Maker and Game Maker, are PERFECT for Game PROTOTYPING!
You develop your prototype in 2 days, test it, then start building it with real, optimized engine or writing your own. So I am and never will be against game maker and such kind of middlewares. Just if they don't get overused!
If somebody wants to make specific kind of game, for example, platform game, why not to use some application that will allow him to concentrate on the game design?
Well, everything have its own disadvantages and advantages...
Now, the truth:
Often when you start writing your own game, you start writing some special tools, like:
image editors, texture/material creators, World and map editors, Physics editors, everything from scratch...
That Game Maker and RPG maker gives you for free of coding...
You will soon see, that you lost about a year with reinventing the wheel,
it took a year to get working Example level...
while some guy created 2-3 very well designed and programmed games with Game Maker, or some other middleware / tool, then got some bucks with them (Because Game Maker allows you to sell and make money with it!)
Yes, sad story.... And these games or looks same, or are good, but run slowly...
What will be the fix?
The fix of this problem will be if we have some GOOD, really good game making SDK/IDE, that makes REAL C++ code for us...
Well, for now, there is NOT any, except for all professional engines there, like Source, id Tech, Epic and proven ones that costs millions to get license for...
And some free, like SFML, that really helps us create the game core, but aren't enough.
Well, my current project is game making software that will compete with all these Game Maker, cickteam, and Construct over here....
I am working of IDE that can help developers make their games faster, easier, and concentrate on the design, but, instead of Game Maker, will generate fast code and most likely, will be open-source.
When you complete the game pototyping, you can export that to C++ and work on it, or, if you are happy enough, just compile it.
That is, you plan and design your classes, then, with them, you design the game levels, maps itself, then, after you are done, your game is optimized, exported as C++ classes and code and compiled under Linux, Windows, Mac or whatever...
And I am VERY HAPPY that SFML will get into such Game creation kit.
Basically, the engine template code will be SFML + Bullet + OpenGL, while the editor will be wxWidgets + OpenGL application.
Finally, blame the noobs, not the game creation kits...
Look, Even Microsoft Visual Studio does non-standard stuff, allowing you just to DRAW your controls into your form...
Application development evolves...
Now there are many ways to develop applications - drawing them, setting actions with mouse, and adding code by hand...
In the future, even natural languages will be used for programming...
That is. IMO.