Github Copilot: Vale a pena?

Github Copilot: Vale a pena?

Imagine se você pudesse contar com uma inteligência artificial que lhe ajudasse a redigir códigos para projetos e aplicações de forma simples e instantânea. Para muitos, isso ainda parece um tipo de tecnologia que só será acessível para todos quando chegarmos em uma fase da humanidade em que carros voarem e que viajar para Marte será como ir ali na esquina de casa comprar pão.

Todavia, quem acompanha de perto o mundo da tecnologia sabe que muitas dessas ferramentas são cada vez mais disponibilizadas para o programador facilitar sua vida e, neste artigo, trazemos direto do forno criativo do Github o GitHub Copilot.

Sendo assim, estacione o seu carro voador, desça na primeira estação de Marte e se conecte conosco o mais rápido possível, porque há muito o que conversar sobre esta ferramenta!

Você sabe o que é Pair Programming?


Quanto mais tecnologias e especializações surgem no mundo, maiores são as áreas de abordagem e de ação do mundo da programação, bem como a competitividade para uma vaga no mercado. Por consequẽncia, maior também é a necessidade de um código com uma grande qualidade em um menor espaço de tempo.

Dada esta necessidade, o Pair Programming ganha cada vez mais força. Este se trata de uma metodologia que utiliza duas pessoas agindo em um único programa, visando prever erros e reduzi-los de forma eficiente, resultando em uma maior qualidade do código. No nosso caso, o “segundo desenvolvedor” envolvido será o GitHub Copilot!


O que é o GitHub Copilot?

O GitHub Copilot é uma ferramenta Pair Programming que te ajuda a escrever códigos com o mínimo de trabalho possível. Pertencente ao GitHub, uma das plataformas de controle de versões e hospedagem de código mais queridas do mundo da programação, é possível com a ferramenta escrever comentários e receber como resposta instantânea linhas de código e até mesmo funções inteiras!

A extensão do GitHub Copilot está disponível atualmente para o Visual Studio e Visual Studio Code, além do Neovim e do JetBrains para ambientes de desenvolvimento integrados (IDEs).


“GitHub Copilot vai tomar meu lugar no mercado?”

Achamos importante destacar este ponto, visto que há uma constante discussão no mundo da programação sobre este tema. Imagine um matemático diante de uma calculadora: ele deveria temê-la por calcular tudo por ele, ou ficar feliz por ela auxiliar e facilitar sua vida sem que ele precise ficar calculando na mão qual o resultado de 123213 x 21123434, tudo isso dividido por raiz de 0,5678?

As tecnologias estão aí para servirem como uma terceira mão ao programador, então cabe a nós utilizá-las da melhor forma possível de forma que melhorem nossa qualidade de vida, assim como um matemático e sua calculadora! Além disso, ferramentas como esta auxiliam desenvolvedores em potencial que têm determinadas barreiras a adentrar de maneira mais assistida ao mundo da programação, o que torna ainda mais incrível este tipo de ferramenta, não acha?

Há outro ponto positivo importante em utilizar IAs como o GitHub Copilot: você investe muito menos tempo em funções e códigos repetitivos ou de fácil implementação (como função que faz uma operação de soma, divisão, multiplicação e subtração, ou uma consulta em uma API, entre outros). Desta forma, resta muito mais tempo para ser investido em partes do projeto mais complexas que venham a requerer mais dedicação.


Como funciona o GitHub Copilot?

O desenvolvimento do GitHub Copilot foi feito pelo Codex, que é um modelo de IA criado pela OpenAI. Para seu treinamento, foram utilizados bilhões (segundo a documentação) de códigos-fonte de repositórios públicos hospedados na plataforma GitHub. Certeza absoluta que depois de ler isso alguém deve ter parado e pensado: “então quer dizer que meus dados também serão utilizados pelo GitHub Copilot para sugestões em projetos de pessoas que o utilizarem?”.

Figura 1 - Logo do GitHub Copilot

Bem, a resposta é “depende”: nenhum código privado é utilizado ou compartilhado com outros usuários (é possível verificar mais informações a respeito na Declaração de Privacidade da ferramenta), então acalma o coração e vamos continuar esta conversa.

O GitHub Copilot faz recomendações se baseando no quanto determinado projeto se parece com o projeto onde o trecho sugerido será extraído. Para tal, é possível majoritariamente se utilizar da ferramenta de duas maneiras. A primeira é escrevendo um comentário em inglês para que o GitHub Copilot crie sugestões baseado no que foi escrito:

A segunda maneira é utilizar do “autocomplete” sugerido enquanto estamos redigindo o código do nosso projeto:

Figura 3 - GitHub Copilot vía línea de código, disponible en: https://github.com/features/copilot

É importante destacar que quanto mais você desenvolver o seu código com boas práticas de programação (como por exemplo estruturar o código e dividi-lo em pequenas funções com funcionalidades únicas, ou ter nomes de fácil compreensão para parâmetros, funções, variáveis, constantes, etc.), melhor o GitHub Copilot irá performar!


Considerações finais

Incrível chegar até aqui e ter conhecido tudo o que é preciso saber para um primeiro contato com o GitHub Copilot, não acha? Mais do que nunca, tempo é ouro e valiosíssimo para o profissional do século XXI e esta ferramenta sem dúvida nos ajuda e muito a otimizar o tempo investido para o desenvolvimento de projetos e aplicações.

É claro que nem tudo são flores, mas sinceramente, dadas as funcionalidades que a ferramenta nos proporciona, as oportunidades de melhoria são mínimas, sendo talvez a mais pontual delas a necessidade de conhecer o inglês para poder criar códigos via comentário, ou ter que se acostumar com o modelo da frase no comentário que o GitHub Copilot espera para que uma sugestão seja oferecida de forma efetiva e assertiva.

Todavia, olhando de uma forma otimista, aqui está uma oportunidade de praticarmos um idioma extremamente importante para o mundo da programação, não acha?

E para finalizar, deixamos aqui um dos comentários disponibilizados na documentação do GitHub Copilot que achamos tão descritivo sobre a ferramenta que não poderíamos deixá-lo de fora deste artigo:

"Tentar codificar em um idioma desconhecido pesquisando tudo no Google é como navegar em um país estrangeiro com apenas um livro de frases. Usar o GitHub Copilot é como contratar um intérprete" - Harris Edwards, Open AI.

Que tal deixar nos comentários desta publicação quais foram suas impressões sobre o GitHub Copilot também? Estaremos aguardando ansiosamente! Bons estudos!

⚠️
As opiniões e comentários expressos neste artigo são de propriedade exclusiva de seu autor e não representam necessariamente o ponto de vista da Revelo.

A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.