paint-brush
O desafio do código sem trapaça – como sobrevivi ao projeto Odinpor@codebyblazej
248 leituras

O desafio do código sem trapaça – como sobrevivi ao projeto Odin

por CodeByBlazej5m2024/06/08
Read on Terminal Reader

Muito longo; Para ler

Em minha primeira postagem, mergulho nos altos e baixos do aprendizado de codificação, incluindo a complicada sequência de Fibonacci e a importância da persistência. Meu objetivo é inspirar e entreter colegas programadores, especialmente aqueles que estão começando, compartilhando minhas experiências, dicas e ocasionalmente rindo de minhas próprias dificuldades. Junte-se a mim enquanto navego no emocionante mundo da codificação e documento cada etapa do caminho.
featured image - O desafio do código sem trapaça – como sobrevivi ao projeto Odin
CodeByBlazej HackerNoon profile picture

Olá, é Blazej. No início da minha jornada de aprendizado de codificação, prometi a mim mesmo que não trapacearia.

O que quero dizer com trapaça?

Ao resolver qualquer exercício, prometi a mim mesmo que não procuraria a solução até que meu próprio código estivesse funcionando.

Escolhendo o Projeto Odin

Decidi ir com o Projeto Odin porque estava cansado dos cursos da Udemy e dos vídeos do YouTube, que não eram nada ruins, mas senti que eles não estavam me levando a lugar nenhum.


Achei difícil me concentrar depois de apenas três minutos assistindo a cada vídeo, e meus pensamentos começavam a se dispersar. Mas isso é assunto para outro post no blog.

Mergulhando no Projeto Odin

O currículo do Projeto Odin é baseado na leitura de documentação e resolução de exercícios, na elaboração de projetos, na leitura de mais documentação, na resolução de ainda mais exercícios e na construção de ainda mais projetos que, como você adivinhou, se tornam mais difíceis à medida que avança.


Estava tudo bem até chegar a este ponto:


PRINCIPAIS Tarefas



O Desafio dos Palíndromos e Fibonacci

Lembro que foi um fim de semana prolongado e passei os 4 dias tentando resolver tudo. Os primeiros exercícios correram bem, mas fiquei preso nos Palíndromos (que acabei resolvendo) e no Fibonacci.


Ah, sim... Isso foi um assassino. Mas você pode perguntar, não existem tais exercícios listados na imagem acima, certo? Sim, mas ao acessar o repositório mencionado, você os encontrará nas 8ª e 9ª posições.


Levei tanto tempo para resolver os exercícios anteriores que perdi a noção de onde deveria parar e simplesmente continuei.


Assassinos



A luta com Fibonacci

Eu estava pensando muito, tomando chá após chá. Com o passar do tempo, meus pensamentos começaram a mudar drasticamente de “é tudo simples, eu farei isso” para “provavelmente algo está errado, meu processo de pensamento parece estar certo, deve haver algum erro no exercício em si. Talvez eu deva procurar a solução?


Várias das minhas tentativas


Quando estudo, utilizo a técnica Pomodoro : 25 minutos de concentração seguidos de 5 minutos de intervalo.


Pomodoros estavam passando e eu consegui chegar ao ponto em que consegui algum tipo de sequência de Fibonacci… mas ainda não parecia certo.


Fibonacci quebrado



O momento da tentação

Nesse momento pensei: “OK, cheguei a este ponto, provavelmente há algo que aprenderei mais tarde, para poder dar uma olhada na solução e seguir em frente”.


Eu fiz o que pensei… Claro, eu pensei, “Ah, sim, é muito fácil e logicamente pensado. Ok, vamos em frente então!”

Percebendo o erro

Depois de Fibonacci, havia um exercício de objetos a ser resolvido, e fiquei confuso porque ainda não tínhamos chegado aos objetos naquele ponto do TOP.

E eu estava certo, avancei algumas lições por engano…


Isso apenas me garantiu que trapacear era a coisa certa e que logo aprenderia algo novo que me faria resolver o problema mais tarde ou com mais facilidade. Haha!

Voltando aos Palíndromos e Fibonacci

Algumas aulas foram concluídas, o que levou cerca de uma semana para serem concluídas, e eu estava de volta aos Palíndromos e Fibonacci. Desta vez, um pouco estressado…


Os palíndromos correram bem e sentei-me para fazer Fibonacci. Devo mencionar aqui que quando abri o arquivo com o exercício ele estava, claro, resolvido, então tentei não olhar muito o código.


Acabei de marcar tudo e apaguei. Porém, lembrei que a primeira linha era:


 let fib = [];

A luta final

Comecei a resolver isso. Nada estava funcionando. Resolvi fazer o jantar e dar um passeio. Cada vez que eu estava longe do computador, meu cérebro voltava para Fibonacci.


Eu senti como se tivesse o VSCode rodando na minha cabeça. Juro que, em vez de ver batatas fritas cozinhando na minha fritadeira, só consegui ver linhas do código Fibonacci (especialmente aquele maldito loop e a declaração 'if').


A sensação engraçada foi, claro, imaginar alguma solução só para perceber 5 segundos depois que ou eu já havia tentado isso ou simplesmente percebi que JavaScript não funciona assim de jeito nenhum!!!

Momentos inovadores

Comi e fui passear. 1 hora de caminhada = 1 hora de reflexão profunda. Eu tinha três novas soluções escritas em minhas anotações e tinha 100% de certeza de que funcionariam.


Notas no meu telefone



Adivinhe qual deles funcionou. Sim, você está certo, NENHUM! Eu ainda estava obtendo os mesmos resultados. Naquele momento, pensei em adicionar algo ao array.


Eu sabia que precisava de algo lá. Mas no fundo do meu cérebro, eu estava recebendo a resposta: “Quando você excluiu o exercício resolvido antes, aquela matriz estava vazia”. Eu apenas menti para mim mesmo.

Seguindo meus princípios

Voltei a ler a documentação e alguns artigos, mas sabia que desta vez não poderia trapacear. Eu já tinha aprendido que trapacear não ajuda no longo prazo e enfrentaria o mesmo problema mais tarde se trapaceasse agora.


Três horas se passaram. Eu não estava mais frustrado. Eu queria que isso fosse resolvido e queria entender o que estava fazendo de errado. Também senti como se soubesse como esse loop estava funcionando e parecia que já havia tentado todas as configurações com instruções condicionais.

Pedindo ajuda

A única solução que tive na cabeça foi pedir ajuda no canal Discord.


Implorando por ajuda


Por favor…



Meu cérebro desistiu



Yay!



Obrigado!!!



A solução e as lições aprendidas

Eu resolvi isso!!!! Olha, eu tive que colocar valores naquele array e puxar a condicional antes do loop. Isso é o que meu cérebro estava me dizendo 10 horas ou mais antes.


Mas por ter visto um pouco da solução, continuei mentindo para mim mesmo para não fazer, acreditando que era diferente. Eh.


Solução!



Conclusão

A segunda lição que aprendi neste dia foi, claro, pedir ajuda. Mas encorajo fortemente todos a passarem pelo processo de leitura da documentação e tentarem resolver tudo sozinhos, principalmente quando ainda estão aprendendo.


Aprendi muito durante esse processo e acredito que não cometerei esse erro novamente.


Agora estou muito mais pronto para bater em outra parede com algum outro exercício. Já estou familiarizado com o processo!