My advice is try and work directly with machine code asm once you understand how to decontruct an application .exe
like nopping a registration routine or countdown to registration timer just being able to follow the codes where its going to jump to next or add what and where to memory and where it jumps back to etc etc
try a little rom hacking like add 100 lifes etc or infinite lifes grab an emulator and a game rom find a routine that is updated add a subroutine thats pastes your code into the memorys life counter etc etc
start basic and build it from there.
that would be my advice start with machine code and other coding will come naturally plus gives you a huge advantage on reverse engineering finding flaws overflows etc in code
"Light travels faster than sound. This is why some people appear bright until you hear them speak"