Executando verificação de segurança...
5

Projeto real ensina mais que qualquer curso, e eu te provo.

Tô fazendo um projetinho em Haskell chamado Frank e basicamente um "Commit Butler".

A ideia surgiu enquanto eu tava codando projetos aleatórios: o projeto basicamente pega as mudanças que tão na área de staging (git add) e gera mensagens de commit automáticas seguindo um padrão. E ainda me zoa pelo meu código.

A intenção era só brincar, fazer algo divertido e fugir desses projetos genéricos de "to-do list com React". Mas aí veio a surpresa: comecei a aprender coisa pra caramba.

  • Comecei a ter que entender mais como o git funciona por baixo dos panos, o seu fluxo e aprender alguns comandos mais avançados
  • Aprendi uma linguagem nova, Haskell (e apanhei demais e ainda estou)
  • E principalmente: aprendi a parar de depender de tutorial pronto

Escolhi Haskell principalmente por não ter tanto tutorial e coisas prontas por aí, fora que em haskell as coisas funcionam bem diferente de um js da vida.

Esqueceu uma indentação?
Toma erro na cara.

Tentou juntar dois valores de tipos diferentes?
Aqui não, irmão, erro na cara.

"Ah quero só pegar esse dado aqui e juntar com aquele outro rapidão..."
Tipos diferentes? Efeito colateral?
Toma mais erro na cara.

E sabe o que é mais doido? Isso é maravilhoso.
Porque aí você tem que entender.
Não tem biblioteca milagrosa. Não tem Stack Overflow resolvendo tudo com um copia-e-cola. Você precisa parar, respirar fundo e descobrir por que caralhos aquilo tá dando erro.

E pela primeira vez eu me senti programador de verdade.
Não tive aquela sensação de que eu só estou pegando um código de um tutorial e basicamente replicando sem nem ao menos entender oq ele tá fazendo.

Então se você quer aprender de verdade, meu conselho é:
Para de fazer projetinho de curso. Cria o seu. Mesmo que pareça bobo. Mesmo que não vá pra produção.

Porque quando o projeto é seu, a dor é sua – e o aprendizado também.

Carregando publicação patrocinada...
4

Só uma coisa legal a incrementar, isso só funciona a partir do momento q vc tem um mínimo de conhecimento da tecnologia para produzir algo útil.

Ou seja, o recomendado para iniciantes é sim iniciar com alguma aprendizagem da tecnologia, seja curso, seja tutorial, seja livro, seja vídeo do youtube, etc... afinal ninguém produz algo com aquela ferramenta se não sabe usar a ferramenta. A pessoa pode até tentar produzir algo, mas a chance de falhar e frustar é alto.

Aí no momento em que já se sente o mínimo ambientado com a tecnologia para criar algo, tenho certeza que sua dica vale muito e recomendo pra todos q façam isso.

1

Sim concordo com tudo oq falou, todo mundo tem que começar de algum lugar, eu mesmo comecei adentrando no mundo da programação por meio de jogos com c# e unity a um bom tempo atrás quando tinham "poucos tutoriais" em comparação a hj em dia, a ideia do post foi tentar dar alguma luz para iniciantes que assim como eu cansaram de video tutoriais que não ensinam nada o cara so sai pegando um monte de coisa pre pronta e jogando na tela, eu mesmo sofria demais com isso reproduzia oq esta sendo ensinado ali mas não entendia absolutamente nada e quando olhava o Github, LinkedIn ou varias outras comunidades de devs tinham trocentos projetos idênticos que muitas vezes nao mudava nem a cor de um botão

1

Estudei Haskell na faculdade e tranquilamente foi a matéria que mais aprendi. É muito confortável estudar estrutura e algoritmo usando python ou até mesmo C, no começo é desafiador mas vc acha conteúdo em tudo que é lugar. Mas quando estudei programação funcional com Haskell o desafio foi muito mais difícil. Tive que criar uma espécie de xadrez em haskell e foi um verdadeiro aprendizado.
Parabéns pelo projeto! Se tiver algum link para o repositório desse projeto, gostaria de dar uma olhada, programação funcional bem crescendo bastante e ter essa stack no currículo irá te diferenciar muito.