I'm on my second year of Computer scientist I have learnt about Java and C++ and now I'm learning Data Structures, Algorithm designs such as Divide and conquer and I'm learning functional programming using Haskell. Also I have seen that on the third year of my career I can chose optional subjects like AI for games and game programming but I want to tackle game programming in my free times. The problem is where do I start? I want to code, I have learnt a little about GUI's using Swing in Java but I have seen that I can use JavaFX for simple 2D games. And what programming languaje should I stick to? My university uses Java a lot so I think I should use Java but I have seen a lot of complains about Java and that C++ or C# is better.
I'm so confused I know that I can make games with engines like Game maker but I don't want to drag and drop things I want to code. Is it recommended to go bottom-up developing a simple game? Or should I use any API?.
Sorry for my bad english, english is not my main languaje.