Vale adicionar o freeCodeCamp à lista, que além de ensinar HTML, CSS e bibliotecas front-end por desafios, também de desafia a construir projetos inteiros sozinho e por fim te rescompensa com Certificados de Cursos que você pode colocar até mesmo no seu currículo/LinkedIn!
Blz mano valeu pela dica! eu colocar também alguns sites para aprender programação de graça