I'm a former GameMaker user but decided to change my game engine to Unity just a couple of weeks ago. I must say its absolutely amazing and I do not plan on going back to GameMaker anytime soon. ;)
However, something I did notice in the very beginning was that it was kind of tricky writing the code (I use C#) because in GameMaker everything is kind of given to you. In Unity C#, you have to be a little more careful of making silly mistakes.
So I have a pretty good hang of it now but I must know, any Unity users out there, how long did it take you to either (1) feel like you've mastered writing the code for the most part (whether you write in C# or JAVA) or (2) how long did it take you to write your first game?