GitHub Copilot: o potencial da ferramenta em jornadas de desenvolvimento

Itaú Tech
ItauTech
Published in
6 min readSep 5, 2023

por Lucas de Faria Polaquini, Especialista em Engenharia de Tecnologia no Itaú

A imagem traz a frase “GitHub Copilot: conheça a ferramenta e seu potencial em jornadas de desenvolvimento de softwares” no lado esquerdo, sobre um fundo azul escuro. No lado direito, há a foto de um homem branco, de cabelos curtos e escuros, trabalhando em frente a um notebook. A foto traz grafismos com códigos de programação.

O desenvolvimento de software e a criação de documentação técnica são tarefas complexas que demandam tempo e conhecimento especializado. Felizmente, a evolução da inteligência artificial tem proporcionado avanços significativos nesse sentido.

Com base na modalidade de IA generativa, foi lançado recentemente o GitHub Copilot: uma ferramenta desenvolvida pela OpenAI, em parceria com a GitHub, capaz de acelerar o processo programação. Neste artigo, exploraremos como ela pode nos ajudar e tornar mais rápido o desenvolvimento e documentação de projetos, fornecendo exemplos práticos e destacando seus benefícios.

O que é o GitHub Copilot?

O GitHub Copilot é um assistente de programação alimentado por inteligência artificial. Ele foi treinado com base em uma grande quantidade de códigos-fonte de código aberto e pode gerar sugestões de código automaticamente, ajudando os desenvolvedores a escreverem de forma mais rápida e eficiente.

Com sua capacidade de sugerir trechos de código completos, ele se torna uma ferramenta poderosa para acelerar o processo de desenvolvimento, com funções preditivas e que oferecem sugestões contextuais em tempo real. Com isso, o resultado é economia de tempo e no esforço para a escrita de códigos repetitivos ou muito complexos.

Benefícios no processo de desenvolvimento

Além da economia de tempo e de esforço cognitivo, o Copilot ainda traz uma série de outros benefícios para o desenvolvimento de software. Um dos principais é o aumento na produtividade: com ele, desenvolvedores podem escrever código mais rapidamente e receber apoio na resolução de problemas, com sugestões de soluções ou abordagens alternativas.

Outro benefício importante é sua capacidade de preencher lacunas de conhecimento. Às vezes, ao desenvolver um projeto, podemos nos deparar com situações em que temos um repertório limitado sobre determinada função ou biblioteca. O Copilot pode ajudar a preencher essas lacunas e sugerir códigos apropriados, já que foi treinado com base em uma ampla variedade de fontes de código aberto.

Apoio na documentação de aplicações

Além de acelerar o desenvolvimento, o Copilot também pode ser uma ferramenta valiosa para auxiliar na documentação de projetos de software. Como já falamos aqui anteriormente, a documentação técnica é essencial para facilitar a compreensão e o uso de um software por parte de outros desenvolvedores.

No entanto, também sabemos que a escrever não é um processo trivial, e que para que esse processo seja efetivo, precisamos dedicar tempo e esforço. O Copilot pode ajudar nesse processo, oferecendo sugestões de exemplos de código e trechos explicativos. Com apenas alguns comandos, é possível gerar trechos de código que ilustram o uso correto de uma função ou biblioteca específica.

Isso simplifica o processo de documentação técnica e permite que desenvolvedores forneçam informações úteis de forma mais rápida e eficiente.

Perplexity e Burstiness: medindo a eficácia do Copilot

O desempenho impressionante do Copilot é resultado de sua base em modelos de linguagem avançados, treinados pela OpenAI. Esses modelos têm como objetivo entender e prever a linguagem humana, incluindo códigos-fonte. Duas métricas importantes para medir a eficácia desses modelos são a perplexity e a burstiness.

Perplexity é uma medida que avalia a capacidade do modelo de prever palavras subsequentes em um texto. Quanto menor a perplexity, maior é a precisão do modelo em gerar sugestões contextualmente relevantes. Como o Copilot foi treinado em uma vasta quantidade de códigos-fonte, sua perplexity muito baixa, o que significa que suas sugestões de código são bastante precisas e coerentes.

Burstiness, por sua vez, refere-se à capacidade do modelo de gerar sugestões em resposta a uma entrada específica. O Copilot se destaca nesse aspecto, pois é capaz de gerar sugestões em tempo real, enquanto você está escrevendo código ou documentação. Essa capacidade de burstiness torna o Copilot uma ferramenta ágil e responsiva, acompanhando o ritmo de trabalho do desenvolvedor.

Considerações sobre segurança e privacidade

Ao utilizar o Copilot, é natural surgirem preocupações sobre segurança e privacidade. Afinal, estamos lidando com um modelo alimentado por uma grande quantidade de códigos-fonte, que incluem informações sensíveis. No entanto, tanto a OpenAI quanto a GitHub estão comprometidas em proteger a integridade dos dados e garantir a segurança dos usuários.

Medidas rigorosas são adotadas para garantir que o treinamento do modelo seja realizado com responsabilidade. Além disso, os dados utilizados no treinamento são anonimizados e tratados com sigilo. A privacidade dos usuários é uma prioridade, e o Copilot foi projetado levando em consideração os mais altos padrões de segurança.

Por onde começar a usar a ferramenta?

Se você se interessou e quer começar a implementar o Copilot, basta seguir os passos abaixo:

  1. Crie uma conta no Github, caso ainda não tenha uma.
  2. Instale o Visual Studio Code, que é um editor de código gratuito e de código aberto.
  3. Instale o Copilot no Visual Studio Code.

A partir dessas três primeiras etapas, você precisará configurar o Copilot no Visual Studio Code. Para fazer isso, siga as orientações abaixo:

  1. Abra o Visual Studio Code e pressione as teclas “Ctrl + Shift + X” para abrir o menu de extensões;
  2. No campo de busca, digite “GitHub Copilot” e pressione Enter (ou baixe pelo marketplace);
  3. Clique em “Instalar” para instalar a extensão;
  4. Depois de instalada, o Copilot vai pedir para você entrar na sua conta do Github e autorizar o uso da extensão. Siga as instruções na tela para fazer isso.

Pronto! Agora você pode começar a utilizar o Copilot no seu desenvolvimento e na criação de documentações.

Custos da ferramenta

Para uso pessoal, a assinatura do GitHub Copilot está disponível em duas opções de ciclo: mensal ou anual. Se você optar pelo ciclo mensal, o valor é de US$10 por mês. Já no ciclo anual, o valor é de US$100 por ano, o que representa uma economia de US$20 em comparação com a opção mensal.

Além disso, para estudantes, professores e mantenedores de repositórios de código aberto populares no GitHub, há uma assinatura gratuita disponível. Se você atender a esses critérios, será notificado ao visitar a página de assinatura do GitHub Copilot. E se você já recebe o Pacote de Desenvolvedor Estudantil do GitHub, também terá direito a uma assinatura gratuita. Caso seja o seu caso, candidate-se para o GitHub Global Campus como aluno.

No Itaú, a licença é disponibilizada gratuitamente para qualquer ituber que atue com desenvolvimento de softwares.

Conclusão e próximos passos

Com base nas considerações nesse artigo, entendemos que o Copilot pode ser uma ferramenta bastante útil para acelerarmos e simplificarmos significativamente o desenvolvimento e a documentação de projetos de software. Sua inteligência, baseada em modelos avançados de linguagem, permite uma experiência de desenvolvimento fluida e personalizada.

Bateu a curiosidade de experimentar como ele funciona na prática? Então siga a nossa página para não perder o nosso próximo artigo, em que compartilharemos um hands-on da ferramenta para demonstrarmos na prática os pontos que abordamos aqui!

--

--