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

Como Aprender Programação? (Não é uma solução, e sim meu problema...)

COMO APRENDER A PROGRAMAR?

Apresentação

Olá, meu nome é Richard. Sempre fui apaixonado por tecnologia, programação e tudo relacionado a essas áreas. Aos 13 anos, decidi que era hora de começar a programar e tive meu primeiro contato com a linguagem VisuALG 3.0, além de um PDF que encontrei gratuitamente na internet. Essa experiência inicial com a programação foi empolgante, mas logo me frustrei ao tentar resolver um desafio de soma de variáveis, pois acabei concatenando strings ao invés de inteiros. Isso me desanimou e acabei partindo para HTML e CSS (acreditando, na época, que estava programando em HTML e CSS kkkk mau eu sabia que não era linguagem de programação). No entanto, também enfrentei dificuldades nesse campo e acabei desistindo.

Somente em outubro de 2022, aos 17 anos (atualmente tenho 18 anos), encontrei um curso no YouTube sobre Python. Decidi começar a aprender a partir dali e me encantei com a linguagem. Porém, logo surgiram novas dificuldades (afinal, todos nós enfrentamos alguns obstáculos). Acabei desistindo por cerca de três meses, somando todos os períodos de desistência ao longo desse tempo.

Foi somente agora, no início de abril (2023), que comecei a me aventurar no desenvolvimento web (back-end) utilizando Python. Estou nessa área há aproximadamente cinco a seis meses (se eu estiver errado nas contas, perdoe-me, mas está por essa faixa), sem contar os períodos em que me afastei e desisti.

Minhas dificuldades

Durante longos dias, tenho refletido sobre minhas dificuldades em aprender programação e tenho buscado artigos e vídeos na internet que possam me auxiliar nessa jornada. Um dos canais que tem sido de grande ajuda é o do Filipe Deschamps.

1 - Falta de foco

  • Essa é sinceramente a pior de todas... ela é algo que me atormenta. Quando estou estudando algo, em poucas horas ou dias, já estou pesquisando sobre outra área (inteligência artificial? Front-end? Ciência de dados? Python? CSharp? PHP?). Isso é horrível, pois me atrapalha demais e acaba levando-me, às vezes, a procrastinar ou simplesmente fugir da minha tarefa atual (o que nos leva ao outro tópico, Procrastinar). Comecei um projeto com Django, um gerenciador de tarefas. Já o escrevi, reescrevi, joguei na lixeira, refiz novamente, troquei de framework, fui para o Flask, voltei para o Django, desisti por um tempo e finalmente consegui criar a essência dele: um CRUD (Create, Read, Update, Delete). Sinto que as coisas estão horríveis, talvez porque encontro um obstáculo gigantesco à minha frente e me sinto incapaz de superá-lo. É difícil levar um projeto meu até o final; já fiz tantas coisas que acabei descartando e desistindo.

2 - Procastinação, disciplina e motivação

  • Essa é uma luta constante, tanto na programação quanto em tarefas cotidianas. Às vezes, sinto falta de ânimo para realizar as coisas, mesmo sabendo que procrastinar não trará bons resultados a longo prazo e que essa não é a melhor opção a se tomar. Quando falo de disciplina, refiro-me ao fato de ser muito motivado. Se estou motivado para fazer algo, vou fazer sem pensar duas vezes e ficar ansioso por isso. No entanto, quando se trata de disciplina versus motivação, a motivação acaba vencendo no meu caso, embora a disciplina seja essencial para manter uma rotina consistente.

  • Por exemplo, se eu planejar uma rotina de estudos em inglês e programação por uma hora durante uma semana, posso começar bem nos dois primeiros dias, mas acabo perdendo o ânimo para continuar nos dias seguintes. Nesse momento, a disciplina deveria ser a força motriz para me manter na linha.


Desabafo...

O perigo dos cursos

  • Sim, meus queridos amigos, eu caí no papinho de "seu primeiro emprego na programação em 6 meses com meu curso" (Por mais que eu não tenha comprado o curso dessas pessoas, já que minha condição não permite, eu caí nessa...). Tenho estudado sozinho e sem rumo nessa área, era fácil fazer um print("Hello World!") e desviar o fluxo do programa com algumas condições. Entrei nessa realidade de que programar era super fácil e eu teria meu emprego nele em 6 meses, louco para receber aqueles salários que aparecem na thumbnail. Mas acho que não funciona assim. Cada indivíduo tem seu tempo de aprendizado e colocar esse limite de tempo de "full stack em 6 meses" só nos deixa frustrados por não conseguirmos ser assim em 6 meses (e na realidade, acho que nem dá para ser full stack em 6 meses).

  • Não quero dizer que todos sejam assim, longe disso, mas é uma realidade que ocorre com frequência. Tenho observado cada vez mais pessoas, assim como eu, que caíram nessa situação

Navegando Pelos Mares do Conhecimento: Aprendendo por Conta Própria na Internet

  • Isso seria um problema? (eu acho que sim), já que às vezes não encontro muita coisa em ordem certa. O que vocês me aconselham a fazer? (lembrando que não tenho condições para cursos). Outro ponto importante que gostaria de ressaltar é que, na maioria dos casos, esses conteúdos se limitam a uma breve introdução ou visão geral da ferramenta e/ou framework. Às vezes, acabo me beneficiando mais ao ler a documentação oficial, onde encontro informações mais detalhadas.

  • "Navegar pelos mares do conhecimento sem seguir uma ordem é como navegar em alto-mar sem uma bússola: você pode encontrar ilhas de informações valiosas, mas também pode se perder em um oceano de conteúdo desorganizado."


Desfecho

Bom, eu também gostaria de mencionar que me comparo bastante com alguns conhecidos que já trabalham na área. Eles parecem ter nascido para isso e já estão empregados (o que é incrível). A velocidade com que eles aprendem é impressionante (sim, eu já vi aquele vídeo do Filipe sobre esse assunto, mas ainda me preocupa). Eu tento instalar o "software" que ele mencionou no vídeo, acredito que vou conseguir, mas não sei quanto tempo levará. No entanto, pensar no "tempo" me assusta, pois parece estar muito distante.

Como posso superar essas preocupações? Vocês já passaram por isso? Como devo estudar? Como posso criar planos de estudo? Como devo abordar a documentação? O que devo fazer?... Não consigo ver uma luz.

1

Falta de foco, procrastinação, disciplina e motivação pode ser relativamente fácil de resolver porque pode ser algo bobo que a pessoa esteja fazendo, mas pode ser algo mais complicado e ficar fazendo receitinhas disso e daquilo, não vão resolver. É como tratar doença com "simpatia".

Se isso for crônico precisa de ajuda profissional. Pelo menos para entender do que se trata, pode ser só que está forçando algo que não gosta, até ser algo que precisa de tratamento, ou na pior das hipóteses que não tem jeito e precisa repensar a vida. Sim, tem hora que isso é necessário, mesmo que muita gente ache que sempre tem solução.

Em geral as pessoas não gostam de ouvir isso, e não fazem o que precisam fazer, e vão patinando. Se a pessoa não puder contar com essa ajuda é outra questão, não sei como resolver isso no país em que vivemos. Sei que os conselhos que alguns dão não funcionam.

Tenho estudado sozinho e sem rumo nessa área

Isso é um dos maiores erros que quase todo mundo comete. É incentivado fazer assim. E como eu sempre digo, você paga um preço alto, e não percebe que está pagando, porque não parece que tem algum preço. Que bom que percebeu isso.

Eu vivo falando que esses incentivos vazios que as pessoas fazem pela internet só servem para gerar frustração. Eu prefiro ser o chato realista do que o bacaninha falso.

Procure por livros, especialmente os clássicos. Eles é que vão ajudar de verdade.

Vou repetir mais uma vez que o importante são os fundamentos, não as ferramentas que usa. A falta deles pode ser a causa da pessoa não evoluir muito. Ser imediatista não funciona bem nessa área, a não ser por um talento admirável.

E você tem razão que algumas pessoas possuem vocação e vão ter facilidade. Não quer dizer que seja impossível para os que não tem vocação, mas será eterna dificuldade, e isso precisa estar claro, novamente, para não gerar frustração.

A preparação também é importante. Muitas pessoas vão com dificuldade na programação porque a escola não ajudou. Não existe programação no vácuo. É preciso resolver isso primeiro.

Veja. Também.

Então, além de fazer tudo isso, analisar melhor a situação, precisa dar um passo de cada vez.

Eu não posso ajudar mais porque sou de exatas :D

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

Opa, eu agradeço real, as palavras e a lista de livros, e principalmente o artigo sobre ler documentações!

Felizmente não é algo cronico, mas é aquelas incertezas que bate na vida... em outras horas eu me acho o markzuckerberg pq modelei um banco de dados kkkk, ou passo horas na frente dessa cadeira estudando, passando raiva por não entender tal coisa. Mas em geral agradeço mesmo, de coração

1

Minha sugestão é que, primeiro, você responda para si mesmo as seguinte perguntas:

  • Por que eu quero programar?
  • Que coisa eu quero criar com programação?

Escreva essas respostas. Escrever força a agente a organizar mais as ideias. Quando voce estiver escrevendo sobre o que você quer criar com programação, primeiro descreva em linhas gerais, depois separe o problema em problemas menores. Anote esses problemas menores. Tente reduzir eles a problemas ainda menores e mais simples e anote. Então comece a resolver os problemas mais simples.
Por exemplo: quero criar um aplicativo de agendamento para cabelereiros. Problemas:

  • Como vou organizar os dados dos horários e dias em que tem trabalho?
  • como encaixar essas informações em um calendário?
  • Como criar, codificar, um calendário?
  • Como gerar criar um código, uma função, que gera uma matriz de calendário anual a partir do ano informado?
  • como calcular se um ano é ou nao bissexto e como integrar esse calculo na geração do calendário?

E por aí vai ...
Defina o que voce quer criar, reduza a problemas menores, defina a ordem de resolução desses provlemas menores. Quebre a cabeça e pesquise para resolver os provlemas menores e depois integrar as pequenas resolução montando o todo que coce quer criar.
Resumindo. Foque em criar alguma coisa do zero, um jogo, um site, uma aplicação. Reduza isso a problemas do menor tamanho possível e se vire par resolver.
Isso se chama aprendizado por projeto.
Espero que essa sugestão sirva para algo e te ajude.

1

O tempo passa rápido, também estou começando e adoro aprender coisas novas, eu realmente achava que em 6 meses eu estaria num alto patamar e conseguiria programar um site de ponta a ponta com boa segurança e coisas mais complicadas... Na realidade, só agora (depois de mais de 1 ano) tô chegando perto de construir uma aplicação, a cada projeto que eu faço, consigo colocar um tijolo novo no muro de conhecimento que estou construindo!

Acho que, com o que eu aprendi nesse pouquíssimo tempo, diria pra você valorizar mais as pequenas coisas que você aprendeu hoje, aprendendo cada dia um pouquinho, alguma coisinha nova e, quando perceber, já ergueu um novo pilar.

Eu comecei aprendendo com o curso gratuíto da Rocketseat e gostei muito, foi a rapidez em ver as coisas acontecendo que me mantiveram no caminho sem desistir, claro que nunca vai ser o suficiente fazer apenas o curso. Recomendo ver os vídeos do Fábio Akita, em um vídeo você percebe o quão pouco você sabe mas, depois de um tempo estudando o que você descobriu não saber, entender umas 2 ou 3 palavras que ele fala, revendo o vídeo, é muito gratificante! Sem contar que nos vídeos ele já explica vários conceitos importantes sobre as bases da computação e programação.

Em suma, de metro em metro, a gente segue andando e, quando menos esperamos, percebemos que já trilhamos alguns quilômetros!

1

"valorizar mais as pequenas coisas que você aprendeu hoje"

Acho que seria um passo importante tambem, só tenho poucos meses aqui nesse mundo da programação... E sobre o Fabio Akita, ele é brabo! Pena que eu não entendo nada mesmo kkkkkk só vim um video dele dando rage rasgando os certificados dele. Vou procurar esse rocketseat. Obrigado irmão

1

Tchê, li todo teu relato, porém não consegui ler as respostas dos colegas, mas para lhe ajudar na questão de estar perdido em meio a tanto conhecimento disponível, eu lhe recomendaria utilizar um roadmap, que até já foi postado por aqui, para lhe guiar nos estudos.

https://roadmap.sh/backend

Aqui está o de backend, mas no site você encontra n outros.