Blogs e podcasts são seus mentores. Livros são seus mentores. Vídeos são seus mentores. A Internet tornou possível ter essas coisas em abundância. Persiga-os com vigor.
Eu sei que isso vai me fazer soar como um veterano, mas quando eu tinha a sua idade eu não tinha nenhum mentor. Não havia mentores, porque eles não existiam. A Internet não existia. Boas aulas de programação não existiam. Tudo o que estava disponível para mim era meu intelecto e um computador. Eu sabia mais do que qualquer outra pessoa à minha volta na época. Isso não é um orgulho; é apenas o jeito que foi. Os únicos mentores possíveis seriam Bill Gates, Steve Jobs ou Steve Wozniak, mas tenho certeza de que nenhum desses caras viria à minha casa e me ensinaria como programar.
Então aqui está o acordo. Até que você tenha escrito, testado, depurado, refatorado e reescrito, digamos, cem mil linhas de código em um aplicativo real, seu código vai sugar . Você tem que descobrir o que funciona e o que não funciona, no momento em que você está escrevendo código. Dessa forma, não é diferente de aprender um instrumento musical; você tem que colocar na prática.
Certamente, incentivo você a ler livros, ouvir podcasts e assistir a vídeos. Eles ensinarão os princípios básicos. Mas nenhuma dessas ferramentas vai te ensinar como programar até que você pratique programação escrevendo muitos códigos bons. E aqui está o problema: ninguém vai te orientar até que você saiba os fundamentos, que você pode obter sem instruções supervisionadas, se você tiver talento suficiente para ser um programador.
Uma nota de advertência: não fique muito envolvido em regras, "melhores práticas" ou padrões de software até entender os fundamentos da programação bem o suficiente para entender por que essas máximas existem. Se você nunca escreveu nenhum código, é muito cedo para estudar o Princípio da Responsabilidade Única, porque você não vai entender e vai aplicá-lo mal. Não seja sugado para os "padrões de software" muito cedo. Se você tiver que perguntar "qual martelo eu devo usar para consertar este telhado", então você ainda não sabe o suficiente para consertar o telhado.
E, finalmente, um aviso: se você está começando a programar por qualquer motivo que não seja amá-lo e ser o melhor possível (razões como dinheiro, estilo de vida etc.), você será infeliz e você fará todos ao seu redor miseráveis. A programação está agravando o suficiente sem que seja uma chamada, e há muitos programadores marginais por aí. Faça um favor ao mundo e seja bom nisso, ou não faça nada.