Como melhorar a minha lógica?

Olá leitor, tudo bem? Espero que sim!

Gostaria de saber de vocês experientes na área, como eu poderia estar melhorando minha lógica. Estou a um bom tempo tentando aprender programação, como a maioria comecei por cursinhos um tanto duvidosos prometendo aprender algo complexo como a programação em pouco tempo. Mas decidi largar isso e recomeçar, aprender as bases, fundamentos e etc. Escolhi C# para esse recomeço. No momento estou fazendo o curso de Fundamentos do C# do André Baltieri, mas durante o curso estou percebendo a minha dificuldade em acompanhar. Também comprei o livro Entendendo Algoritmos: Um Guia ilustrado para programadores e outros curiosos. Gostaria de dicas de como eu poderia complementar/melhorar meus estudos para me tornar um bom profissional na área.

Fazendo exercícios do Beecrowd

Como esta sua saude? o primeiro passo para aprender melhor qualquer coisa é ter uma vida equilibrada, boa alimentação, exercicios fisicos, noite de sono boa, qualidade de vida da um boost gigantesco na sua capacidade cerebral, apos isso, muita pratica, refaça o mesmo codigo inumeras vezes, de forma igual, diferente, repetição e repetição

Sugiro fazer bastante exercícios do hackerhank (https://www.hackerrank.com/dashboard). E se tiver com dúvidas ou ficar travado procure a solução e tente entender a lógica que foi usada (mas só faça isso em último caso).

Pratique resolvendo desafios do https://neps.academy/ ou https://judge.beecrowd.com/

O Neps Academy tem comunidade bem ativa no Discord e é a plataforma recomendada pela OBI.

Na minha opinião a melhor forma de melhorar a sua lógica é programando a mesma coisa ou coisas parecidas de formas diferentes.

Tente realizar algum dos cursos do canal Curso em Vídeo do Prof. Gustavo Guanabara. Me ajudou bastante a construir meu raciocínio em Lógica de Programação. Comecei pelo curso de Python e não encontrei em nenhum outro lugar didática melhor.

Pra mim o que me ajudeu a entender lógica foi jogando. Existem muito jogos que tem mecanica que envolve lógica, não vai ser programando, mas foi o que funcionou pra porque eu acabava me divertindo no processo.

O jogo que eu joguei é Factorio. Mas eu também recomendo Minecraft usando redstone, no youtube você encontra diversos canais que fazem circuitos de redstone, tanto para ser algo útil no jogo como fams, mas também tem louco que faz computadores no minecraft.

Sugiro que assista este vídeo para entender melhor como o computador interpreta o código. E caso você também queira saber o app que eles usam para ilustrar os circuitos, é Digital Logic Sim.

Acredito que começar aprender lógica de programação a partir do C# não é uma boa ideia, pois C# possui um paradigma de programação um pouco mais avançado para quem está começando. Se você deseja aprender lógica de programação e algoritmos, primeiro recomendo que comece com alguma pseudolinguagem em português como o Portugol Studio, o Portugol Studio é uma pseudolinguagem totalmente em português e o bom é que nele tem muitos exemplos de entrada e saída, operações aritiméticas, condicionais, funções... Toda a base da lógica e algoritmos tem nessa pseudolinguagem. Se você estiver fazendo algum curso ou graduação, recomendo que pegue os exercícios do curso e refaça no portugol, ou senão pode pegar exercícios na web mesmo, pois depois vai perceber que programar com uma linguagem de programação vai ser bem mais fácil por entender a lógica do que está programando.

Link do Portugol Studio Web: https://portugol.dev/

Escolha uma linguagem com curva de aprendizagem menor e não fique se matando em tentar entender linguagens mais complexas como Java por exemplo. Vai pra um JavaScript da vida ou PHP e depois que aprender como funciona a coisa, como é utilizado a orientação a objetos, você se aventura em linguagens mais difíceis que já será mais fácil. Facilite seu aprendizado. Já parou pra pensar onde vai usar C#? Não será na web e nem pra aplicativos, será que vale a pena aprender?