Game Maker has two main ways of programming; one that is icon based and one that is text based. The icon based one is basically for new users and part-timers and allows for quite a bit but can get really messy with more complicated programs. The text based one is a kind of pseudo-C++ environment that allows for more complicated coding, but really using that the thing just becomes a down-market version of several other engines you could use to create a game in. In other words it's like the Fisher-Price of coding.