Para aprender bien a programar en un lenguaje de programación, no basta con tener conocimientos básicos, sino que hay que practicar mucho y hacer muchos ejercicios para consolidar nuestros conocimientos, y mejorar nuestras destrezas y capacidades en los lenguajes de programación.
Me he encontrado con un vídeo muy interesante en el que un famoso programador y Youtuber (MoureDev), recomienda la siguiente página para aprender a programar con 500 proyectos en un montón de lenguajes de prugramación. Es el siguiente enlace:
https://github.com/practical-tutorials/project-based-learning
Eso sí, el inconveniente es que está todo en inglés. Pero aparte de eso tiene muy buena pinta.