O que eu gostaria de saber como um desenvolvedor júnior – Lições aprendidas após 11 anos de codificação

O que eu gostaria de saber como um desenvolvedor júnior – Lições aprendidas após 11 anos de codificação

27 de October, 2020 0 By António César de Andrade


Inicialmente, escrevi este artigo como uma lista de lições para desenvolvedores iniciantes e juniores no Reddit. Em seguida, explodiu com mais de 50 prêmios. Seguiram-se muitas mensagens de aquecimento do coração.

Portanto, decidi atualizar a postagem com base nas reações das pessoas.

Aqui estão as coisas que eu gostaria de saber no início de minha jornada como desenvolvedor de software. Eles teriam me ajudado a me estressar menos, e espero que façam o mesmo por você.

Vamos lá.

Todos os tutoriais não são criados iguais.

Quando você está começando, está apenas tentando coisas diferentes. Ao aprender e experimentar, preste atenção aos tipos de tutoriais que funcionam para você.

Muitos não funcionarão. E tudo bem.

Na verdade, é exatamente assim que os experimentos funcionam até você encontrar uma solução.

Mas no momento em que você encontrar ouro, atenha-se a ele, consuma esse conteúdo vorazmente e, em seguida, encontre tutoriais semelhantes para que possa continuar seu rápido crescimento.

Codificação
foto por Christopher Gower / Unsplash

Quando comecei, costumava bater minha cabeça contra Use o Java primeiro, o livro. Mas depois de estudar por muitas horas, eu simplesmente não estava chegando a lugar nenhum.

Mas todo mundo online disse que era o melhor livro de programação de todos os tempos. Para mim, entretanto, TheNewBoston’s Os tutoriais do YouTube fizeram isso por mim, embora as pessoas não o recomendem mais.

Eu gostaria de poder dizer que isso parou depois do meu primeiro ano.

Avance rapidamente dois anos depois.

Comecei a aprender algoritmos, e TODOS os tutoriais de blog que acompanhei simplesmente não faziam sentido até assistir a vídeos no YouTube sobre algoritmos de ensino de dança folclórica húngara.

E simplesmente clicou.

Vídeo húngaro do YouTube. Eu amo dançar. Eles dançaram. E deu um clique.

Desde então, minha abordagem de aprendizagem tem sido aprenda a mesma coisa em vários lugares até encontrar o instrutor e o estilo que funciona para mim.

Você vai esquecer muitas coisas.

Compreender isso profundamente mudará a forma como você aprende.

Não consigo contar quantas vezes tomei Introdução à programação Python em sites como Udacity, Coursera, e ainda esqueci de tudo.

É tão irritante.

Mas desde então aprendi que você esquecerá tudo o que aprender em exercícios isolados, porque eles estão armazenados na memória de curto prazo. Pesquisas em neurociência mostram que é assim que o cérebro funciona.

Se você não quiser esquecer, teste seus conhecimentos usando repetições espaçadas. Para fazer isso, crie projetos.

Vou te dar um exemplo concreto:

len(myList)

Isso lhe dará o comprimento de uma lista em Python. Você aprenderá isso no curso de introdução ao Python da Udacity.

Volte um mês depois e você pode não se lembrar se é len, length( ) ou myList.size( ).

Mas, com a repetição espaçada em um projeto, o resultado é diferente.

Por exemplo, você trabalha em um aplicativo Django de 2 meses para novos programadores em que precisa:

  • Conte o número de usuários várias vezes.
  • Armazene o número de exercícios realizados.
  • Encontre o número de chats em um dia.

Imagine fazer isso durante todo o projeto – por dois meses. É difícil esquecer o que len( ) faz.

Este é um exemplo trivial, mas espero que você tenha entendido.

Os novos alunos podem começar com exemplos simples e isolados.

Mas se você não estiver praticando dentro do escopo de um projeto e usando e reutilizando o que aprendeu, nada entrará em sua memória de longo prazo. É tudo de curto prazo.

E isso significa que você vai esquecer.

Trabalhe dentro do medo, não contra ele.

Admito que é mais fácil falar do que fazer.

Mas você tem que dominar isso se quiser durar.

Existe a tentação de consertar seu medo antes de continuar a aprender. Infelizmente, não funciona assim.

Na verdade, você passará muito tempo tentando fazer seu medo desaparecer, mas, em vez disso, isso apenas dobrará sua ansiedade. Você tem que encontrar uma maneira – sua maneira – de reconhecer que está com medo.

E, francamente, você continuará com medo por muito tempo. Portanto, trabalhe dentro dessa realização.

Não há necessidade de lutar contra isso.

Às vezes, esse medo desaparece à medida que você se torna mais proficiente.

Outras vezes, ele desaparece por um tempo e volta quando você entra em um novo ambiente, trabalha com desenvolvedores de software inteligentes ou muda para uma pilha completamente nova.

Está bem.

papel higiênico - vírus Corona
foto por Jasmin Sessler / Unsplash

Se você deseja progredir como desenvolvedor de software, deve se lembrar:

Esta É a vida.

É uma onda sinusoidal – continuamente subindo e descendo. Não leve isso muito a sério ou você se perderá.

Consistência> trabalho árduo.

A consistência é rei.

Quando você começa a aprender, estabelece caminhos neurais que facilitam a recuperação de informações.

De acordo com pesquisas da Neurociência, essas vias só se fortalecem com a frequência de uso, não apenas com a intensidade.

Isso significa 30 minutos por dia, 5 dias por semana é muito melhor do que 2,5 horas por dia, apenas uma vez por semana.

Mesmas horas, impacto diferente.

Não se limite a trabalhar duro, aplique sabedoria aqui.

Talento = prática oculta.

É fácil descartar o progresso como talento.

Minha primeira aula de programação foi em C ++ e meus colegas se recusaram a acreditar que eu nunca tinha codificado antes porque eu era muito talentoso.

Mas o que eles também se recusaram a aceitar foi que logo após a aula, eu passaria cinco horas digitando:

cout << “this is my first program”

Então eu percebi que não funcionou porque esqueci um ponto e vírgula ;.

Então, eu redigitava e percebia que não imprimia minha declaração em uma nova linha porque eu não adicionei endl.

Essa prática deliberada construiu talento percebido.

Talento é mais sexy do que agitação então ninguém quer ouvir que você trabalhou muito e chegou aqui. Apenas me diga que você nasceu assim – é mais verossímil.

Talento vs. Hustle – A maioria de nós principalmente se apressa para superar isso.

Mas tornar-se um desenvolvedor de software proficiente é como tocar um instrumento.

Apenas alguns poucos nascem talentosos.

A maioria só pode ser tão boa quanto a quantidade de prática que aplicamos.

E você pode imediatamente dizer que um aluno não tem praticado no momento em que se senta ao teclado.

Você vai conhecer idiotas!

Cada campo tem sua dose de gente horrível.

Sem dúvida.

Mas não tenho certeza do que há no desenvolvimento de software que atrai idiotas em massa.

Talvez porque a codificação lhe dê a sensação de ter um superpoder ou uma habilidade rara. Se você é um programador iniciante, encontrará aqueles que já programam há anos e acham que ninguém mais deveria entrar.

Apenas um desenvolvedor do Windows? Você encontrará fanáticos por Linux que pensam que você é medíocre.

Se você for mulher, será imediatamente demitida por causa de seu gênero. Sei disso por histórias pessoais de colegas ao longo dos anos.

Se você for uma minoria, encontrará pessoas que acham que você só deve buscar café, não códigos.

Se você está vindo de outro campo (particularmente não HASTE), você conhecerá pessoas que se tornam automaticamente guardiões da comunidade de programação.

“Não queremos cientistas sociais aqui – somos puristas!”

foto por Markus Spiske / Unsplash

Eles estão online.

E no trabalho.

E, infelizmente, às vezes em sua família.

Não é E se você vai conhecê-los, é quando.

Aprenda a seguir em frente.

As coisas estão melhorando, mas ainda há muito o que fazer para educar as pessoas.

Mas não deixe isso detê-lo. Desenvolva sua resiliência para não desistir depois de conhecer essas pessoas.

E quando você chegar ao topo, não seja um idiota!

Domine uma coisa.

Novos desenvolvedores tendem a pular aprendendo muitas coisas.

Ok, não se trata apenas de novos desenvolvedores – também são pessoas experientes.

Você aprendeu React por uma semana. Depois, JavaScript por duas semanas. Laravel para três.

Pare.

Você precisa acordar e perceber que está simplesmente estendendo o tempo que levará para realmente aprender qualquer coisa.

“Se alguém é mestre em uma coisa e entende uma coisa bem, tem, ao mesmo tempo, visão e compreensão de muitas coisas.” ~ Vincent Van Gogh

A sessão de fotos foi cancelada hoje, então eu levei meu jogo de xadrez para o estúdio para fotografar várias ideias de xadrez.
foto por Randy Fath / Unsplash

Escolha uma coisa.

Fique com ele por alguns meses – de preferência de 6 a 12 meses antes de mudar para outra coisa.

Isso tem dois benefícios:

  1. Você irá fundo o suficiente e atingirá uma massa crítica que o moverá em direção ao domínio.
  2. Depois de dominar um domínio, você pode transferir conhecimento para outro. Exemplo: aprenda Flask e você poderá facilmente entrar no Django. Aprenda a reagir profundamente e você poderá identificar rapidamente os prós e os contras do Laravel em poucos dias.

Isso não significa aprender HTML sozinho por seis meses. Depois, apenas CSS por 1 ano.

Em vez disso, significa não confundir o aprendizado:

  • Django
  • Com Express
  • Então reaja
  • Algum Desenvolvimento de Jogos
  • E iOS.

Você pode fazer muito em pouco tempo. E talvez se sinta um programador iniciante em rápido crescimento. Mas é uma ilusão.

Você não dominou nada.

O desenvolvimento de software é um campo em constante evolução.

É emocionante.
É frustrante.
É intimidante.

Mas se fosse preciso, faria tudo de novo.

Obrigado por ler!

Ufa! Fiz muita reflexão e muitas horas para fazer isso.

  1. Siga me no twitter: Sou mais ativo no Twitter. Se você gostou disso, compartilhe e retuitar isso para ajudar a espalhar a palavra. Tem perguntas? Meu DM está aberto.
  2. Junte-se à comunidade de e-mail: Estou reunindo recursos para ajudar novos programadores e desenvolvedores juniores a aumentar sua confiança. Se estiver interessado, junte-se a esta lista de e-mail.

Atenção – Amo pesquisa, então tendo a apoiar meus conselhos e abordagem com conceitos da Psicologia Comportamental e Neurociência.





Fonte

Click to rate this post!
[Total: 0 Average: 0]