Como funciona a programação de pares remotos e por que isso pode mudar sua vida

Foto de Trust “Tru” Katsande on Unsplash

A bala de prata para lidar com a solidão e as distrações enquanto aprende a codificar

Se você está trabalhando ou aprendendo remotamente, as chances são de que a solidão e as distrações são suas principais dificuldades diárias para se manter feliz e produtivo.

E se você tivesse um amigo para codificar e aprender junto com todos os dias? E se você pudesse enfrentar os desafios de aprender a codificar com a ajuda de alguém tão investido quanto você? E se você fez isso trabalhando no mesmo projeto de software, discutindo todas as etapas e soluções possíveis?

Reserve um momento para pensar sobre esse provérbio sueco e como isso afeta sua jornada de aprendizado:

A alegria compartilhada é uma alegria dupla; tristeza compartilhada é meio pesar.

A boa notícia é que todas essas ideias podem se aplicar a você, mesmo que seu amigo de codificação esteja em outro lugar do mundo. Isso é o que a programação de pares remotos pode oferecer a você. Veja como funciona e por que isso pode mudar sua vida.

Como funciona a programação de pareamento remoto

A programação de pares remotos não é muito diferente da programação tradicional em pares.

Na programação em pares, você e outro desenvolvedor de software (ou aspirante a desenvolvedor de software) sentam-se juntos na frente de um computador e se revezam escrevendo código usando apenas um teclado.

A pessoa que digita no teclado é chamada de Driver . Eles será responsável por pensar nas classes, variáveis, funções e algoritmos que eles precisam codificar para fazer com que o programa atinja seu objetivo. Essa pessoa tentará verbalizar seu processo de pensamento tanto quanto possível.

A outra pessoa é chamada de Navegador . Eles estarão sentados ao lado do Driver, mas não estarão escrevendo nenhum código. Em vez disso, o Navigator estará prestando muita atenção ao código que o Driver está escrevendo e oferecerá orientação e sugestões sempre que possível. O Navigator irá sugerir alternativas, encontrar respostas para as próximas perguntas e desafios, e agir como uma caixa de ressonância para as idéias que o Driver está apresentando.

Regularmente, o Driver e o Navegador irão trocar de funções , então agora o Navigator se tornará o Driver e eles serão os únicos a escrever o código. Você pode alternar as funções a cada 30 a 40 minutos ou sempre que concluir a implementação de um determinado recurso ou função.

Se você e seu parceiro de codificação não estiverem na mesma sala e trabalhando no mesmo computador, ainda será possível fazer a programação em pares. Mas vamos chamá-lo de programação de par remoto.

Na programação de pares remotos, cada desenvolvedor estará trabalhando em um computador diferente . Você estará usando algum tipo de software que permite que você converse entre si e compartilhe sua tela. Por exemplo, você pode usar uma ferramenta de videoconferência, como o Google Hangouts, o Skype ou o Zoom.us. Usando uma dessas ferramentas, o Driver começará compartilhando sua tela para que o Navegador possa ver o que está digitando.

Há também plugins para Atom , Sublime, VS Code e quase todos os outros editores de código que permitem compartilhar seu IDE com o outro desenvolvedor e modificar o código ao mesmo tempo. Você também pode permitir que o outro desenvolvedor tenha acesso remoto ao seu computador.

No entanto, minha recomendação é que você se atenha a uma ferramenta de videoconferência por dois motivos simples:

  1. Apenas o driver deve digitar o código . Se você tiver acesso ao editor de código do Driver através de um plug-in ou acesso remoto, às vezes você se sentirá tentado a ajudar o Driver digitando algo. Isso não é necessariamente contra as regras, mas requer certa maturidade e é algo que você pode introduzir mais tarde no processo.
  2. Ao trabalhar em dois computadores separados, você se forçará a fazer uso adequado do controle de versão para acompanhar as alterações e compartilhar o código umas com as outras sempre que mudar de função.

Para dar um exemplo desse último ponto, vamos ver o que acontece quando você decide trocar de papéis:

Primeiro, o Driver atual irá confirmar suas alterações mais recentes (por exemplo, git commit ) fornecendo um comentário descritivo. Depois disso, eles enviarão essas alterações para o repositório remoto, disponibilizando a versão mais recente do código para o Navegador.

Agora, o Navegador se tornará o Driver , puxando as alterações mais recentes para o computador e abrindo o arquivo correspondente. Eles agora começarão a compartilhar sua tela e escrever o código.

Os benefícios da programação remota de pares

  1. Feedback constante : quando você está escrevendo código como o Driver , o Navegador estará fornecendo feedback sobre a qualidade do seu código. Eles também oferecem diferentes perspectivas que ajudarão você a melhorar.
  2. Frustração reduzida : eles dizem que duas cabeças pensam melhor que uma, e que a dor compartilhada é meio pesar. Se você ficar preso a um problema, a outra pessoa estará lá para ajudá-lo em tempo real.
  3. Maior foco : como você está compartilhando sua tela e seu microfone, é muito difícil se distrair com as mídias sociais. Além disso, as pessoas que estão fisicamente ao seu redor (por exemplo, sua família) terão mais dificuldade em interrompê-lo.
  4. Interação social : O relatório do estado de trabalho remoto para 2018 concluiu que a solidão é a principal luta para as pessoas que trabalham / aprendem remotamente. Seu parceiro de codificação provavelmente se tornará um bom amigo e uma fonte diária de suporte que vai além da codificação.
  5. Prestação de contas : você deve ter um cronograma pré-organizado e recorrente com seu parceiro de codificação. Dessa forma, você se responsabilizará mutuamente e fará com que você apareça todas as vezes.
  6. Habilidades colaborativas : as habilidades técnicas são importantes na busca de um emprego (e depois de encontrar um). Mas a colaboração e a comunicação são as habilidades mais importantes em qualquer trabalho moderno baseado em conhecimento e complexo, como o desenvolvimento de software.
  7. Experiência no mundo real : a programação em par remoto ajudará você a aprender como construir software como parte de uma equipe e forçará você a usar o controle de versão e o gitflow . Isso lhe dará uma vantagem competitiva ao procurar seu primeiro emprego.
  8. Orientação : seu parceiro de codificação e você provavelmente trará diferentes habilidades e níveis de proficiência para a mesa. Ao fazer programação em par remoto, você terá a chance de aprender um com o outro e, ao mesmo tempo, orientar um ao outro.

Será que tudo isso parece bom demais? Isso porque a programação em pares tem o potencial de torná-lo um desenvolvedor muito melhor e de ajudá-lo a aprender em um ritmo muito mais rápido. Vamos falar sobre como encontrar um parceiro de codificação.

Como encontrar um parceiro de codificação remota

Encontrar outras pessoas aprendendo a codificar não é difícil. No entanto, para que a programação em par remota possa ajudá-lo em sua jornada de aprendizado, é extremamente importante que você encontre alguém disposto a se comprometer com um cronograma recorrente.

Como mencionamos anteriormente, para tornar a programação em pares parte dos seus hábitos diários e para usá-la como um mecanismo de responsabilização, é muito importante que você e seu parceiro codificador se encontrem nos mesmos dias, todas as semanas . É como ter um ginásio ou correr amigo, mas para codificação.

Eu corro uma escola para desenvolvedores de software remotos, onde estudantes de todo o mundo aprendem par programando em tempo integral uns com os outros. Fazemos o trabalho duro de selecionar pessoas com um alto nível de motivação que estão dispostas a se comprometer com seus parceiros de codificação em tempo integral. No entanto, existem vários outros lugares onde você pode encontrar pessoas tão motivadas quanto você:

No entanto, não importa onde você procure por parceiros de programação em par remoto, lembre-se: certifique-se de comunicar a quantidade de tempo que deseja dedicar por dia / semana e de concordar com um cronograma recorrente.

E se você estiver pronto para aprender a codificar com um parceiro de programação de pares remotos em tempo integral, vá em frente e inscreva-se para participar do Microverse . Aceitamos estudantes de qualquer país do mundo e não cobramos nada até você conseguir um emprego.