22
TheoFurtado2 min de leitura · 23 dias atrás

⚠️ PAREM DE PROGRAMAR CLONES DA NETFLIX, POR FAVOR! ⚠️

Fala aí, pessoal! Tudo certinho?

Venho com essa headline chamativa e um tanto quanto polêmica entre os programadores iniciantes para compartilhar um pouco da minha pouca experiência e, quem sabe, ajudar pelo menos 1 pessoa com este post.

Vejo muitos colegas iniciantes na área fazendo cursos de programação, nos quais a maioria ensina fazendo você copiar o código deles (isso não é uma crítica aos cursos online, e sim minha visão sobre estudar desenvolvimento de software), e ao final do curso, você tem um "vasto portfólio", porém, sem entender nenhuma linha de código que você mesmo "escreveu".

Esse tipo de ensino não funciona comigo, e acredito que não funcione com outras pessoas também.

É exatamente por isso que estou fazendo este post. Sempre estudei programação fazendo projetos pessoais que possuem alguma finalidade, seja por hobby, seja para ajudar em alguma tarefa ou até mesmo para lançá-los ao mercado para outras pessoas usarem. Hoje, grande parte do meu conhecimento, não só de código mas comercial também, vem desses projetos.

Com isso, pensei em compartilhar algumas ideias que tenho para outros programadores exercitarem suas habilidades técnicas e criei um repositório no GitHub com 10 ideias de projetos para treinar programação e, quem sabe, fazer uma graninha com eles.

A ideia do repositório não é ser uma coisa estática e sim uma comunidade de projetos, que cresce a cada projeto postado por cada participante.

E ai? Vai ficar bom ou prefere ficar copiando código pro resto da vida⁉️

Ps: Deixei 10 ideias iniciais para facilitar o inicio. Ao longo do desenvolvimento desses projetos, vou adicionando mais.

Ps2: Caso queiram adicionar novas ideias, basta criar uma issue contando sobre a ideia.

LINK DO REPO

3

Olá, Theo! Tudo bem contigo? 😊

Seu post é muito interessante, pois aborda um problema comum entre muitos iniciantes: a tendência de copiar projetos sem questionar o porquê de cada trecho de código estar ali.

Na minha visão, muitas pessoas que fazem cursos online estão apressadas em fazer projetos sem entender o que está por trás de cada decisão, apenas para entrar no mercado de trabalho o mais rápido possível. Infelizmente, isso é hiperestimulado pelos próprios criadores de cursos, que prometem coisas como “Faça sites no nível Super Sayajin em x meses” ou “Vire Sênior em 3 meses”.

Essa pressa pode ser prejudicial, pois muitas vezes essas pessoas acabam não entendendo o código que estão escrevendo e, consequentemente, não conseguem solucionar problemas que possam surgir. Além disso, a falta de compreensão do código pode levar a erros graves e até mesmo a problemas de segurança.

Por outro lado, é importante lembrar que a programação é uma habilidade que exige prática e estudo constante. Não há atalhos para se tornar um bom programador. É preciso ter paciência e dedicar tempo para entender cada linha de código que está sendo escrita.

Eu sou uma desenvolvedora iniciante em C e estou fazendo o cursinho “Linguagem C - Começando do absoluto zero” do professor Pietro Martins, que está disponível gratuitamente no YouTube. Na segunda aula, comecei a questionar algumas decisões do professor que não pareciam corretas, como usar System Pause em vez de getchar para pausar o terminal ou não usar return 0 em funções de int.

O curso em si é ótimo, mas algumas decisões me deixaram confusa. Isso é bom, porque quando questionamos a fonte de aprendizagem, somos forçados a aprender mais sobre o conteúdo, o que infelizmente está faltando em outras pessoas.

1

Bom comentário em uma boa postagem (apesar de ter algumas outras iguais aqui, portanto são colone :D)

De fato questionar tudo é fundamental.

Também é fundamental olhar o contexto. Fundamental mesmo, provavelmente tanto quanto questionar, até porque olhar o contexto é uma forma de questionar.

Não conheço o curso e nem a pessoa que o criou. Alguns cursos são mais detalhados do que outros, alguns fazem simplificações, que devem ser questionadas.

Em específico, usar System("pause") não é um problema em um cenário de aprendizado e ele facilita. Talvez o curso deveria deixar isso mais claro. Deixando mais claro mostra que a preocupação é fazer a pessoa entender e não apenas passar receita de bolo.

Não sei o contexto do usp do return 0, novamente, tem casos e casos, e mais uma vez, pode ter faltado a explicação. Ou é erro mesmo.

Mas o lado bom de não ter a informação é que obriga a pesquisar outras fontes e separa quem vai se dar bem na área. Nenhuma fonte de aprendizado é 100% canônica.

Faz sentido para você?

Espero ter ajudado.


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).

1

Boas ideias de projeto Furtado! Pretendo começar algumas assim que a faculdade deixar kkkk

1

O que eu mais vejo são clines das FAANG (facebook, amazon, apple, netflix e google).

Pessoal tem que ser mais criativo mesmo...

1

Vou trazer um outro ponto de vista. A ideia de criar aplicações não é apenas para treinar habilidades técnicas, mas também leva em consideração o propósito delas.

A partir disso compreendo porque muitos iniciantes começam com esses clones "clichês": são projetos de fácil associação. Quando você vai criar um clone da Netflix, por exemplo, é muito claro para iniciantes o que ele deve buscar e criar.

Todo iniciante pode começar com "CTRL+C/CTRL+V", não vejo nenhum problema nisso. Iniciantes precisam começar de algum lugar e, na maioria das vezes, clonar interfaces de sistemas amplamente conhecidos é um excelente ponto de partida.

É claro que concordo que todos devam se desafiar. Por isso a proposta é boa. Acredito que você deva fazer alguns ajustes, simplesmente mostrar para um iniciante "Calculadora de período entre dadas" não diz nada sobre nada e pouco colabora para o crescimento.

Se o propósito é trazer um novo método de ensino, recomendo reformular para algo parecido com o repositório https://github.com/florinpop17/app-ideas. Como está em inglês imagino que pouca gente tenha acesso, talvez vale a pena tomar um tempinho para traduzir ou utilizar uma metodologia parecida.

1

Eu acho que, além de não entender direito o que foi feito, é bem ruim ter um portfólio que é exatamente igual o de outras pessoas, principalmente se vc faz esses grandes cursos. Frequentemente, eu vejo no LinkedIn, muitos iniciantes postando exatamente o mesmo projeto, do mesmo jeito.

O ideal é pegar o que aprendeu nesse curso e desenvolver algo seu, com os mesmos conceitos. Vai ajudar muito a entender melhor o que foi feito e pq funciona e, quem sabe, pode crescer e ser uma aplicação real e que seja usada por outras pessoas

0

Boa iniciativa, bro!