JavaRush /Blogue Java /Random-PT /Pausa para café #55. 4 dicas para encontrar uma comunidad...

Pausa para café #55. 4 dicas para encontrar uma comunidade de desenvolvedores. 5 habilidades inesperadas que um programador iniciante precisa dominar

Publicado no grupo Random-PT

4 dicas para encontrar uma comunidade de desenvolvedores

Fonte: Honeypot Um dos fatores que auxilia os desenvolvedores em seu desenvolvimento profissional é a comunidade à qual pertencem. Se você ainda não encontrou o seu, não se preocupe! Neste artigo vou lhe dizer como fazer isso. Os humanos não foram feitos para ficar sozinhos. É através da capacidade de cooperar para alcançar um objetivo comum que a humanidade alcançou o progresso. Um ótimo exemplo dessa colaboração é a comunidade de desenvolvedores. Ao contrário de alguns outros setores profissionais, os desenvolvedores interagem entre si com muita frequência e grande parte de suas vidas está de alguma forma conectada às comunidades que criam ao seu redor. Se você é desenvolvedor, mas ainda não encontrou sua comunidade, não se desespere. Você pode ingressar em um deles em qualquer fase de sua carreira.Pausa para café #55.  4 dicas para encontrar uma comunidade de desenvolvedores.  5 habilidades inesperadas que um programador iniciante precisa dominar - 1

1. Descubra o que você precisa

Antes de mergulhar no abismo on-line para encontrar sua comunidade de desenvolvedores, você deve descobrir exatamente o que precisa e o que procura. Cada etapa da carreira profissional de um desenvolvedor tem seus próprios interesses e diferenças. Se você está aprendendo Java, é improvável que encontre as informações que procura na comunidade Python e vice-versa.

2. Procure comunidades locais

Jessica, membro da equipe de programação do Ember, mora em Berlim. Felizmente para ela, a cidade oferece muitas oportunidades de networking com outros desenvolvedores locais. “Tive muita experiência em reuniões de grupos profissionais e durante muito tempo fiz parte da Open Technology School, que ajuda as pessoas a aprenderem mais sobre tecnologia.” A menina participou de seminários e grupos mistos e achou isso muito útil para um iniciante. “Fui apoiado por outros alunos e recebi orientação gratuita. Pode-se dizer que isso me deu um senso de responsabilidade, me ajudou a ir às reuniões regularmente e me incentivou a estudar por conta própria.” Para encontrar sua comunidade local, Jessica sugere pesquisar no Google. Se você mora em uma cidade grande, provavelmente não terá problemas em encontrar comunidades de codificação locais para ingressar. No entanto, pode acontecer que alguns desses grupos nas redes sociais não estejam mais ativos ou não postem mensagens neles há muito tempo. Nessas situações, não tenha medo de perguntar diretamente se há algo mais acontecendo na comunidade. Mostrar interesse é sempre apreciado.

3. Encontre uma comunidade online

Há vários benefícios em conhecer outros desenvolvedores pessoalmente. Mas se o seu acesso às comunidades locais for limitado, é quase certo que você encontrará uma alternativa online. Você já pode estar trabalhando com vários frameworks ou tecnologias que possuem suas próprias comunidades dedicadas no Discord ou Slack. É adequado tanto para auxiliar no trabalho quanto para encontrar inspiração para novos projetos, ideias e até mesmo para participar de projetos abertos.

Aqui estão alguns lugares para encontrar sua comunidade online

dev.to. _ Em suas próprias palavras, “a indústria de software depende da colaboração e do aprendizado em rede”, e dev.to fornece um espaço para os desenvolvedores se encontrarem e ajudarem uns aos outros, seja em aspectos técnicos de codificação, aconselhamento profissional ou suporte e motivação geral. #desenvolvedores no Slack . Você precisará responder algumas perguntas para obter acesso a este canal, mas assim que entrar, você receberá todo o suporte e conselhos necessários :) Hashnode . Escreva um artigo sobre qualquer tópico de programação que desejar e interaja com a comunidade em geral. Esta é uma ótima maneira de ficar conectado com outros desenvolvedores. Mulheres que codificam . É um lugar de apoio para mulheres na área de tecnologia, onde encontrarão recursos de programação e um espaço aberto para compartilhar ideias. Reddit . Existem muitos subreddits para cada nicho de codificação; confira alguns dos mais ativos: r/programming , r/java , r/python , r/javascript , r/reactjs e r/cscareerquestions . Círculos de desenvolvedores no Facebook . O principal objetivo aqui é criar comunidades organizadas localmente onde os desenvolvedores possam “obter ferramentas gratuitas para desenvolver novas habilidades, ideias e avançar em suas carreiras”. Encontre sua comunidade no Facebook, todas as discussões estão online.

4. Encontre uma comunidade de código aberto

Participar de uma comunidade de código aberto pode ser uma parte importante do seu desenvolvimento profissional. Ser um membro ativo da comunidade de código aberto significa não apenas contribuir, mas também participar de eventos e conferências, conhecer outras pessoas, encontrar mentores e fazer networking. Além das competências adquiridas na comunidade de código aberto (técnicas e não técnicas), a participação nela dá uma sensação de pertencimento aos programadores fora do trabalho diário. Há um sentimento único na comunidade de código aberto de trabalhar em algo grande e, em muitos aspectos, esse trabalho é uma contribuição significativa. Quer saber por onde começar? Pense em quais projetos de código aberto você gosta e comece por aí - pode ser tão simples quanto encontrar e corrigir um erro de digitação no código. Só é importante começar por algum lado.

Conclusão

O nível de apoio e incentivos ao autodesenvolvimento que um desenvolvedor recebe na comunidade profissional é extremamente alto. Felizmente, o acesso às comunidades de desenvolvedores está em todo lugar, seja em um grupo local de mídia social ou em um grande recurso online dedicado a uma linguagem de programação. O principal é encontrar o que mais combina com você.

5 habilidades inesperadas que um programador iniciante precisa dominar

Fonte: Codeburst Meu caminho para me tornar um desenvolvedor autodidata foi longo e difícil. Às vezes, lembrando de todos os obstáculos e decepções que encontrei, me pergunto se valeu a pena começar assim. E agora posso dizer que valeu a pena. Para pessoas como eu, que começaram do zero, a curva de aprendizado foi muito acentuada. Mas estou confiante de que, a longo prazo, os benefícios superam o esforço necessário para conquistar esta montanha. Claro, isso só se aplica se você gostar do que está aprendendo. Levei vários anos para entender que um bom desenvolvedor deve ser capaz de fazer mais do que apenas escrever código de forma rápida e fácil. Muitos iniciantes não percebem que adquirir habilidades de desenvolvimento requer mais do que apenas a habilidade de escrever e executar um programa. Então, aqui estão mais cinco habilidades além da codificação que todo aspirante a desenvolvedor definitivamente precisará!Pausa para café #55.  4 dicas para encontrar uma comunidade de desenvolvedores.  5 habilidades inesperadas que um programador iniciante precisa dominar - 2

1. Use ferramentas de colaboração

Muitas plataformas populares de programação individualizada concentram-se na sintaxe da linguagem e nas estruturas de dados. Alguns permitem que os alunos criem projetos básicos do zero. Digamos que seja um jogo simples ou um aplicativo de lista de tarefas. Essas lições são inestimáveis ​​para começar a aprender habilidades de programação, mas não simulam o ambiente de trabalho da vida real que você encontrará no futuro. Os desenvolvedores trabalham juntos em grandes projetos e, às vezes, um desenvolvedor pode trabalhar em várias bases de código ao mesmo tempo. O trabalho em equipe geralmente envolve o uso de ferramentas como Google Spreadsheets ou Invision. As equipes de desenvolvimento têm seu próprio conjunto padrão de ferramentas de colaboração. Minha empresa, como dezenas de milhares de outras empresas nos Estados Unidos, usa o GitHub. Nunca esquecerei o dia em que meus colegas me apresentaram ao GitHub. Primeiro me disseram para abrir o terminal no meu computador (eu não tinha ideia de que tinha algo assim no meu computador). Então meus colegas começaram a digitar algumas coisas sem sentido nesta janela misteriosa da minha tela. Esse jargão acabou fazendo coisas mágicas, como preencher várias pastas do meu computador com todos os tipos de arquivos cheios de código. Aí falaram sobre “galhos” e “penugens”, algo “remoto”. E parecia que literalmente todas as palavras começavam com o prefixo “git”. Eu sabia que eles falavam inglês, mas o significado de suas palavras não estava claro para mim. Se você é um novato que nunca codificou com outros desenvolvedores antes, terá que aprender a linguagem e as ferramentas de colaboração. Isso pode parecer complicado, especialmente se você nunca abriu o prompt de comando. Mas com o tempo isso se tornará um hábito.

2. Registro e tratamento de erros

Digamos que você já aprendeu a colaborar com outros programadores e seu código foi enviado para produção. Quando algo que você escreveu é usado por milhares ou até milhões de usuários, é uma sensação verdadeiramente emocionante. Mas quando chegar a esse estágio, você aprenderá da maneira mais difícil que erros inesperados no código acontecem o tempo todo. Por exemplo, a variável que você criou nunca recebeu um valor. Agora você está chamando um método com valor nulo e seu programa não sabe o que fazer com ele. Ocorre um erro e agora o usuário não tem mais acesso àquela página incrível que você criou. Ao testar o programa, tudo parece correto, então você pode nem perceber o problema. Esse erro específico pode ocorrer apenas 5% das vezes, mas para 5% dos 100 mil usuários é significativo. Você precisa aprender como registrar, tratar e antecipar erros em seu código: essas são habilidades absolutamente essenciais para um desenvolvedor. Sim, a capacidade de antecipar problemas é um instinto que se desenvolve com o tempo e a experiência. Mas é importante para um iniciante lembrar que os erros são quase parte integrante do desenvolvimento. Saber como proteger seu código usando diferentes tipos de registro de erros pode evitar muitas dores de cabeça no futuro, especialmente quando você tiver a tarefa de depuração. Também pode ajudar a identificar problemas que você nem sabia que tinha. Hoje, temos acesso a várias ferramentas de registro de bugs que facilitam o rastreamento de vulnerabilidades em uma base de código. Um dos meus favoritos é o Sentry, que permite ver quando um problema ocorreu pela primeira vez e com que frequência ele ocorre. Também vale a pena mencionar Logentries, Rollbar e Instabug. Existem programas que monitoram dados e problemas de todo o sistema, como New Relic e Datadog. Você provavelmente encontrará alguma combinação desses programas em sua carreira de desenvolvimento e vale a pena aprender como usá-los.

3. Cobertura de teste

Como eu disse antes, aprimorar suas habilidades de programação envolve mais do que apenas escrever código. Você precisa ter certeza de que seu código é compreensível para outros desenvolvedores e, quando alguém o abrir dois anos depois, essa pessoa poderá pegá-lo rapidamente e começar a fazer alterações. A lógica que você escreve deve ser compreensível e reutilizável nos próximos anos. Mas às vezes a sua lógica será complexa e não pode ser simplificada. Talvez devido à complexidade da lógica de negócios. Talvez por falta de tempo. A realidade é que os prazos às vezes forçam você a tomar decisões técnicas abaixo do ideal. E nem sempre você conseguirá definir claramente todos os casos de uso antes de começar a trabalhar. Uma maneira de manter seu código seguro é escrever testes para acompanhar as alterações. A maioria das linguagens de programação possui pacotes de teste adicionais que você pode instalar. Por exemplo, para Ruby usamos Rspec, e para React geralmente usamos Jasmine. Existem diferentes tipos de testes, incluindo testes unitários (para testar pequenas partes de lógica) e testes de integração (para testes de fluxo ponta a ponta). Muitas vezes, para que seu código seja enviado à base de código comum, ele deve passar por todo o conjunto de testes. Depois de aprender como escrevê-los, você adiciona “seguranças” que evitam que alterações futuras substituam acidentalmente as funções que você escreveu. A cobertura do teste também ajuda a definir o comportamento esperado, uma vez que muitos casos de teste são escritos em inglês simples. Não sei dizer quantas vezes entrei em algum arquivo escrito há vários anos, fiz uma alteração e descobri que isso causou a falha de uma dúzia de testes, embora achasse que tinha um bom entendimento do comportamento esperado. . Uma vez quebrei uma funcionalidade que eu mesmo escrevi há alguns meses. Felizmente, meus testes de unidade revelaram isso imediatamente. Examinando as solicitações pull, percebo que os desenvolvedores muitas vezes não prestam atenção suficiente à cobertura dos testes, e isso se aplica tanto a mudanças simples quanto complexas. Também sou culpado disso, especialmente quando os prazos são apertados. Mas consigo pensar em vários projetos em que fazer alterações num local levou a falhas em outros quatro locais. Isso aumentou nosso nível de estresse e nos agregou mais trabalho, embora já estivéssemos com pressa para cumprir o prazo. Tais situações poderiam ter sido evitadas se tivéssemos reservado um tempo para escrever testes unitários no devido tempo. Aprender a escrevê-los pode ser uma tarefa tediosa, especialmente para um novo desenvolvedor, e escrevê-los definitivamente retarda o processo geral de desenvolvimento. Porém, quanto mais cedo você começar a escrever testes, menos dores de cabeça aguardarão você e sua equipe no futuro.

4. Revisão de código

Este ponto está relacionado ao primeiro - sobre trabalhar em conjunto em bases de código. Freqüentemente, o processo de fazer alterações na base de código é assim. Você está escrevendo algum código localmente. Para enviá-lo para o branch principal de sua base de código, você cria uma solicitação pull (um resumo visual de suas alterações) e outros desenvolvedores de sua equipe revisam seu código antes de dar luz verde para a fusão. Equipes diferentes têm requisitos diferentes para aprovação de uma solicitação pull, mas em geral você deve esperar que suas alterações sejam definitivamente revisadas e implementadas por alguém. É importante notar que você não apenas enviará seu código para revisão, mas também revisará o de outra pessoa. Aprender a ler o código de outras pessoas é uma habilidade importante para um desenvolvedor e deve ser desenvolvida ao longo de sua carreira. Quando comecei e fui solicitado a examinar as solicitações pull de outras pessoas, não entendi muito bem o que procurar. No começo pensei que deveria procurar por bugs. Alguns anos se passaram e agora considero as revisões de código mais uma verificação de integridade do que uma investigação completa. Em última análise, é o desenvolvedor que enviou a solicitação pull o responsável por revisar seu código, adicionar os testes necessários e contribuir com segurança com esse código para o banco de dados comum. Não é função do revisor identificar problemas ocultos. Hoje em dia, quando reviso o código, verifico a legibilidade (por exemplo, se esses nomes de variáveis ​​e métodos são descritivos), organização e estrutura (se o código pode ser melhor organizado para que fique mais claro para quem o vê pela primeira vez) . Obviamente, quanto mais familiarizado você estiver com a base de código, mais fácil será identificar possíveis problemas. Mas você pode começar a adquirir habilidades de revisão de código mesmo sendo um iniciante. Entre outras coisas, esta também é uma boa maneira de se familiarizar com os padrões de código usados ​​por seus colegas mais experientes.

5. Pesquisa Google adequada

Nenhum desenvolvedor sabe tudo sobre programação, sua linguagem de programação ou mesmo sua base de código. Anteriormente, eu tinha certeza de que todos, exceto eu, poderiam entender imediatamente quais métodos, consultas e estratégias deveriam ser utilizadas neste ou naquele caso. Porém, quanto mais pessoas eu me relacionava, mais percebia com que frequência os desenvolvedores pesquisam no Google respostas para suas perguntas. Até os experientes! Há muitos detalhes em nossa linha de trabalho para manter em mente. Logo ficou claro para mim que o que se exigia de mim não era saber tudo de cor, mas aprender a procurar as respostas corretamente. Stackoverflow se tornará seu melhor amigo. Provavelmente, se você está preso em alguma coisa, alguém já esteve preso nisso antes. Quando se trata de solução de problemas, tente descobrir exatamente o que está errado, descreva em palavras e digite essas palavras em um mecanismo de busca. Ser capaz de articular os problemas que você enfrenta ajudará muito mais do que a memorização.

Conclusão

Mais cedo ou mais tarde, em sua jornada de desenvolvimento de software, você certamente encontrará decepções. Não há como escapar disso. Mas quanto mais você usar as ferramentas e estratégias destinadas a aliviar essas frustrações, mais gratificante será sua carreira. Mantenha o rumo e não desista.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION