Muitas pessoas dirão que é o caminho certo. E até eu não acho nenhum absurdo, dependendo do seu objetivo.
Eu tenho uma história, e por mais que eu possa querer, e nem quero muito, não consigo falar de algo que eu não vivi e vi de outras pessoas. Em 40 anos na área vi de tudo, vi inclusive exceções, mas vou falar da regra.
Hoje tem vaga para quase todo tipo de profissional, até para alguns pouco qualificados. Mas as melhores vagas e as que são mais difíceis de serem preenchidas, as que pagam melhor e que são famosas principalmente entre os que vendem cursos e serviços que prometem o céu para quem entrar na área, quase sempre estão disponíveis para quem tem qualificação.
Qualificação começa por ter base sólida. Nunca vi um programador bom que era muito ruim em matemática, comunicação e expressão e não entendia nada do que é ciência, do método científico. Quando a pessoa falha nisso não adianta ir por caminho algum sem corrigir isso que o resultado nunca será muito bom.
Quem tem atenção aos detalhes e pelo menos tenta acertar sempre não deveria ser diferencial, mas acaba sendo. O computador adora o detalhe.
Para se inserir rápido no mercado meio que qualquer caminho vale. Para se transformar em profissional de primaira linha eu prefiro o que o Peter Norvig fala, Aprenda programar em 10 anos. Eu nem concordo com tudo o que está lá, mas é melhor do que a maioria do conteúdo que tem por aí.
Se a pessoa tiver pressa mesmo pode aprender algo pra arrumar uma vaga e depois vai consertando para criar uma carreira. Isso é mais difícil, a pessoa começa ficar sem tempo, perde a vontade com o dinheiro entrando, mas é uma forma.
A pressos precisa aprender a computação. Precisa aprender como o computador funciona, como todas as ferramentas que ela usa são. Precisa entender o processo. O bom piloto automobilístico não é o que sabe virar o volante e pisar no pedal, é o que sabe como o carro funciona. Quem você quer ser? Precisa dominar cada aspecto do desenvolvimento.
Não é sobre aprender ferramentas, que são importantes, é sobre aprender os conceitos, as técnicas, saber se comunicar com outras pessoas da área de forma adequada, com fluidez, entender os problemas, saber achar soluções, ser um criador, saber fazer escolhas com base em fatos, separar o que é ruído, dar valor ao que importa, procurar a qualidade, sendo assim precisa começar pelo alicerce.
O alicerce não é pra te dar emprego agora, é pra te preparar. Teve época que eu até gostava de fluxograma, Portugol e coisas do tipo, mas eu não sei mais se é uma boa ideia. Eu acho que o alicerce precisa ser mais prático, ainda que não tanto assim. Não sou contra começar assim, começar com Excel, dar uma passada em JavaScript para ver o resultado, mas pra aprender mesmo eu vou de baixo nível, ou quase.
Baixo nível de verdade é Assembly. Não digo para ir nele, embora eu acho que todo mundo tem que dar uma olhada, tem que ver como vai acontecer de verdade. Eu costumo dizer que é melhor começar com C. É a linguagem de alto nível, sim, é, não vou entrar nisso aqui, pesquise porque já falei em vários lugares, então mais perto do que vai usar, e permite ver tudo mais concretamente como funciona.Com ela dá para entender como é uma linguagem de programação e seus mecanismos básicos, e pode dar uma olhada como vira Assembly.
Não é para dominar C. É pra aprender programar, só. Depois vai para outra linguagem para aprender algo para trabalhar. Poucas pessoas continuarão em C. Entenda ela como o Portugol mais real.
Se a pessoa acha que fazer a mesma coisa em C é mais difícil que fazer em Portugol, então essa pessoa terá um futuro complicado na área. Ela pode conseguir algum resultado, mas se não mudar a atitude e corrigir o rumo, ela nunca terá muito destaque. Lamento por isso.
Atitude é muito importante. Resiliência, capacidade de adaptação, força de vontade, e entender a ciência e o funcionamento da sociedade são coisas que ajudam muito. Ou atrapalha se a atitude não for boa.
Não se preocupe tanto com o resultado e sim com a jornada. O processo bem feito importa mais. Ir passo por passo sem pular etapas, sem deixar algo não entendido para trás e ir para o próximo conceito. Se faz com algo mais estruturado.
Uma boa jornada se faz com boas referências, que se preocupa com sua formação e não com você gostar da pessoa ou comprar algo dela. As consequências sempre serão suas. Você pode escolher.
Sem isso você vai muito na intuição ou o que empurram para você até mesmo implicitamente. Isso não costuma funcionar bem porque no começo você não sabe separar bem o joio do trigo. E tem muita referência ruim na internet. Até para ensinar C tem muita coisa ruim, e assusta mesmo as pessoas. Assustar um pouco é bom, separa os homens dos meninos (mulheres das meninas também, claro).
Eu vi as pessoas que escolheram este caminho, e quando fizeram tudo certo se deram muito bem. Quem não fez isso pode ter alcançado algum sucesso, mas sempre faltando alguma coisa, algumas conseguiram até mais pela habilidade política dela, que tem mérito também, do que pela capacidade técnica. Eu costumo ter respeito pelos programadores que têm essa capacidade global de desenvolver software, não importa em que linguagem ela trabalhe depois, mas ela entende o que está fazendo, e pode justificar até escolhas ruins que em certos momentos precisa.
O que importa são os conceitos, tecnologia em geral, engenharia. Esquece tecnologia em específico. Não ligue pra modinhas.
Se você treinar o erro é ele que fará para sempre. A internet está cheia de erros. Tome cuidado com tudo. Com as respostas aqui, até esta. Seja questionador, tenha criticidade. Isso é que fará diferença.
As pessoas estão querendo cada vez mais as coisas prontas, fáceis, recoreendo até ao estúpido ChatGPT. E é o oposto que trará resultados de mais qualidade. É pesquisar muito, várias fontes, fazer resumos próprios, exercitando com linhas diferentes, escutando vozes diferentes. As facilidades estão alijando as pessoas. É preciso aprender a aprender.
Se a pessoa fizer certo os passos seguintes vão aparecendo. Sem pressa em saber tudo, sem dominar o que não é tão relevante no começo. Ninguém será sênior indo para o que é mais avançado. Enquanto a pessoa nem conseguir classificar o que é importante ela tem que ir devagar.
É uma questão da pessoa querer ser nutella ou raiz. As duas são válidas.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).