Here's the thing: you can read all you want, watch all you want and study all you want about programming. But you're missing one thing: you're not actually doing the coding yourself. How can you really think and understand until you actually confront programming face to face?
Programming is a game and a puzzle. It is also about ideas and how these ideas relate to each other and how you can combine the ideas to make something beautiful: a program.
For collision detection, you can bound a rectangle against your game character. Then bound a rectangle against your enemy monster. Test these rectangle for intersection. When these rectangles intersects happen, you know a character collided with a monster.
Start applying the concepts you learn even the most basic fundamentals are crucial to making the most basic and simple game. Start writing games that you can actually write.