Digo sempre isso...
Se você aprender a dirigir um carro velho, você vai aprender a dirigir um novo com muito mais facilidade.
Foi assim comigo, comecei com C e fui aprendendo o feijão com arroz, a própria sintaxe em si, variáveis, arrays, bibliotecas, objetos, ponteiros. Toda a parte básica.
Recomendo usar o site da beecrowd para ir treinando o que você for aprendendo, ele tem algumas questões que você responde em código.
De resto é sem segredo, começa a estudar conceitos de estrutura de dados (após entender como funciona a linguagem) que isso vai alavancar ainda mais teu entendimento em relação a lógica de funcionamento de um código.
Pelo menos comigo foi assim e me ajudou muito na carreira hoje em dia...
Obs.: Considerei que você tenha conhecimento em lógica de programação, qualquer coisa se tiver com dúvida, ou precisar de uma explicação mais aprofundada, comenta aqui que no que eu puder eu vou te ajudando!