Como transformar o ChatGPT em sua ferramenta de programação poderosa e dobrar sua produtividade

Tenho experimentado o uso do ChatGPT para aumentar minha produtividade em programação há mais de dois anos. Quando o ChatGPT me ajudou a encontrar um bug problemático, percebi que havia algo realmente valioso na inteligência artificial (IA). Muitas pessoas com quem converso pensam que a IA é como um gênio da lâmpada que pode criar um programa ou aplicativo inteiro a partir de um desejo mal formulado. Uma analogia muito mais precisa seria: a IA é uma ferramenta poderosa.

É claro que você pode usar uma serra manual para cortar madeira, mas uma serra de bancada faz isso muito mais rapidamente. Nenhuma dessas ferramentas cria móveis; elas apenas ajudam você a fazê-los. Lembre-se de que a IA não vai escrever seu código por você; ela vai te auxiliar a escrevê-lo.

Embora não exista uma maneira objetiva de medir exatamente quanto o ChatGPT tem contribuído para o meu trabalho, estou bastante convencido de que ele dobrou minha produção em programação. Em outras palavras, eu consegui fazer o dobro de trabalho incorporando o ChatGPT ao meu conjunto de ferramentas.

Na maioria das vezes, tenho utilizado o ChatGPT Plus em vez da versão gratuita do ChatGPT. No início, isso se devia ao fato de o modelo GPT-4 no Plus ser melhor em codificação do que o modelo GPT-3.5 da versão gratuita. No entanto, agora que ambas as versões suportam alguma variante do modelo GPT-4, suas capacidades de codificação são idênticas. Lembre-se de que na versão gratuita, você tem um número limitado de consultas antes de ser solicitado a esperar um pouco, o que pode interromper seu fluxo de programação. Por isso, opto pela versão Plus, que custa $20 por mês.

Devo mencionar que testei muitos grandes modelos de linguagem em minhas codificações no mundo real e descobri que apenas alguns (todos baseados no modelo de ChatGPT) conseguiram lidar com tudo que eu tentei. Embora haja muitas ferramentas legais de IA para programadores sendo disponibilizadas (algumas até gratuitamente), elas não serão muito úteis a menos que o código produzido pela IA funcione. A boa notícia é que as IAs inevitavelmente melhorarão suas habilidades de codificação ao longo do tempo, o que deve minimizar esse problema.

Ponderando sobre todos os meus projetos, percebi que algumas dicas tangíveis podem ser compartilhadas sobre como obter o máximo de um parceiro de programação em IA. Vamos explorar.

1. Dê ao AI muitas pequenas tarefas
A IA não lida bem com conjuntos complexos de instruções, especialmente se você espera que ela faça design de produto. No entanto, ela é extremamente boa em interpretar e processar pequenas instruções bem definidas.

2. Pense no bot como alguém ao final de uma conversa no Slack
Em vez do ritmo de uma troca de e-mails que pode ocorrer com horas de intervalo entre cada interação, imagine que você está em um chat do Slack, onde cada interação é menor, mas separada por segundos.

3. Para rotinas mais complexas, faça perguntas de forma iterativa
Comece com uma tarefa simples e, após tê-la escrito corretamente, adicione mais elementos, um por um. Costumo copiar e colar o prompt anterior, ajustando conforme obtenho partes do código que funcionam.

4. Teste cada pequeno pedaço de código que a IA retorna
Nunca assuma que o código funcionará. Integre-o ao seu projeto e verifique seu desempenho.

5. Utilize o depurador
Para um teste mais profundo, não hesite em entrar no depurador e analisar o código gerado pela IA passo a passo. Observe as variáveis e o que exatamente a IA faz. Lembre-se de que está tudo bem deixar a IA escrever pequenos trechos de código, desde que você verifique cada instrução e linha quanto ao funcionamento adequado.

6. Não precisa de assistência de IA integrada ao seu IDE
Muitos fornecedores de ferramentas de codificação estão promovendo a ideia de IAs integradas em seus produtos. Embora isso possibilite a venda de recursos de IA, prefiro usar o ChatGPT como uma ferramenta separada do meu ambiente de desenvolvimento. Não quero que uma IA tenha a capacidade de modificar diretamente meu ambiente principal de codificação.

7. Sinta-se à vontade para “canibalizar” linhas de código de rotinas geradas
Você não precisa usar tudo o que a IA cria. Assim como pode buscar amostras de código no Stack Overflow e escolher as partes que deseja copiar, você pode fazer o mesmo com o código gerado pela IA.

8. Evite pedir à IA que faça codificação proprietária ou use conhecimento institucional que ela não possui
Os modelos de linguagem da IA operam com dados de treinamento ou o que conseguem encontrar na web. Isso significa que, em geral, eles não sabem nada sobre sua aplicação única ou lógica de negócios. Portanto, evite pedir à IA para escrever qualquer coisa que exija esse nível de conhecimento. Essa é uma tarefa sua.

9. Forneça exemplos para que a IA compreenda o contexto do seu código
Uma vez, forneci ao ChatGPT um trecho de uma página HTML e pedi para adicionar um recurso que expandisse um bloco de texto. A IA me retornou HTML, JS e CSS. Depois, pedi um seletor CSS adicional e solicitei que justificasse seu trabalho, o que resultou em uma explicação sobre suas decisões. Todo esse processo funcionou porque os exemplos que dei ajudaram a IA a entender o contexto.

10. Use a IA para codificação de conhecimento comum
O maior benefício da IA é escrever blocos de código que utilizam conhecimento comum, bibliotecas populares e práticas regulares. A IA não conseguirá criar sua lógica de negócios única, mas se você pedir para ela gerar código com base em bibliotecas e APIs, economizará muito tempo.

11. Sinta-se à vontade para pedir trechos de uma ou duas linhas
Mesmo que precise de algo que gere apenas uma ou duas linhas de resposta, utilize a IA como qualquer ferramenta de pesquisa se isso economizar seu tempo.

12. Informe à IA quando o código que ela escreveu não funciona
Com frequência, a IA gera código incompleto ou não funcional. Avise-a sobre o que não está funcionando e talvez sugira uma clarificação. Depois, peça à IA para escrever algo novo. Geralmente, ela o faz e o código revisado muitas vezes é melhor que o original.

13. Use uma IA para verificar o trabalho de outra IA
É interessante ver como dois modelos de linguagem interpretam o mesmo código. Como já vimos, nem todos os modelos funcionam da melhor maneira, mas seus resultados podem ser instrutivos. Você pode até pedir a uma sessão do ChatGPT que verifique os resultados de outra sessão.

14. Utilize a IA para criar seletores CSS
Seletores CSS são as expressões que os codificadores usam para definir um elemento em uma página web para estilização ou outras ações. Eles podem se tornar complexos rapidamente. Frequentemente, copio um bloco de HTML e peço um seletor para uma parte específica desse HTML, poupando muito tempo. No entanto, lembre-se de que geralmente será necessário iterar e informar que os primeiros seletores não funcionaram até que a IA gere um que funcione.

15. Peça à IA para criar expressões regulares
Expressões regulares são sequências matemáticas simbólicas usadas principalmente para parsing de texto. Eu não gosto de escrevê-las quase tanto quanto escrever seletores CSS. A IA demonstra ser eficaz na escrita de expressões regulares, embora você precise testá-las.

16. Use a IA para testar expressões regulares
Eu uso o aplicativo Patterns para testar expressões regulares geradas no meu Mac Studio, mas a IA pode auxiliar também. Frequentemente, alimento uma instância separada da IA com uma expressão regular gerada pelo ChatGPT. Então, eu pergunto: “O que isso faz?” Se recebo uma descrição que corresponde à funcionalidade que eu desejava, me sinto mais seguro de que a IA fez o que eu queria.

17. Deixe a IA lidar com cálculos complexos de loops
Assim como com seletores CSS e expressões regulares, cálculos complexos de loops podem ser tediosos e propensos a erros. Esta é uma aplicação ideal para a IA. Ao especificar seu prompt, não informe à IA o que deve estar no loop. Deixe que ela escreva os elementos de contorno adequados do loop, e depois escreva a lógica de negócios após esse processo ter funcionado.

18. Use “O que há de errado com este código?” como prompt
Costumo passar blocos de código, especialmente expressões regulares geradas pela IA, para ela. Pode ser muito instructivo ver o que a IA considera errado, geralmente destacando condições de erro que o código não testa. Depois, claro, peça à IA para regenerar o código corrigindo os erros que ela encontrou.

19. Use “O que isso faz?” como prompt
Da mesma forma, gosto de fornecer blocos de código à IA e perguntar: “O que isso faz?” Isso é frequentemente instrutivo, mesmo para o meu próprio código. No entanto, o maior benefício aparece ao trabalhar em código escrito por outras pessoas. Passar uma função ou um bloco de código para a IA pode economizar tempo na engenharia reversa do código original.

20. Saiba quando desistir da IA
Às vezes, a IA não consegue resolver o problema. Descobri que se você tentar fazer a IA reescrever seu código mais de duas ou três vezes, você já ultrapassou o ponto de não retorno. Se você quiser código gerado pela IA, comece com um novo prompt reformulado e veja o que obtém. E, por vezes, você terá que seguir sozinho.

21. Seja específico na nomeação de funções e variáveis
A IA capta a intenção dos nomes de variáveis e funções e escreve um código melhor. Por exemplo, especificar um nome de variável como $order_date ajuda a IA a entender que você está lidando com um pedido e um valor de data. Isso é muito mais eficaz do que algo como $od. Além disso, o código gerado a partir de nomes de variáveis bem nomeados também tende a ser mais legível, pois a IA utiliza nomes mais descritivos para outras variáveis que cria.

22. Leia as notas antes e depois do código
A IA costuma gerar notas sobre cada prompt antes e depois do código que escreve. Pode haver informações valiosas nelas que ajudam a entender o que a IA fez ou como abordou o problema. Às vezes, a IA também aponta outras bibliotecas ou funções que podem ser úteis.

23. Não hesite em voltar e pedir mais ajuda sobre um trecho de código
Coletar as várias partes do código do seu projeto para ilustrar o que você precisa, pedir ao ChatGPT para lê-las e então perguntar o que deseja. Precisei construir uma exclusão para campos de entrada em uma área expandida e pedi à IA. Em menos de um minuto, recebi um código que levaria entre 10 minutos e uma hora para eu escrever sozinho.

24. Utilize a IA para ajudar a reescrever blocos de código obsoletos
Tinha um módulo PHP escrito em uma versão antiga do PHP que usava um recurso de linguagem agora depreciado. Para atualizar o código, colei o segmento de código obsoleto no ChatGPT e pedi que me dissesse como reescrevê-lo para ser compatível com as versões mais atuais do PHP. Ele fez isso e funcionou.

25. Use a IA para ajudar a escrever em linguagens menos familiares
Estou muito confortável ao aprender novas linguagens de programação, mas descobri que a IA pode ser útil quando preciso codificar em uma linguagem que não domino. Pergunto à IA como fazer o que desejo e especifico a linguagem. Por exemplo, se quero saber como fazer uma instrução “case” em Python, enquanto faço isso há muito tempo em PHP, basta perguntar: “Compare a escrita de uma instrução case em PHP e Python”, ou “Como concatenar uma string em Python versus PHP”. Assim, você obterá uma ótima comparação que facilita a redação de códigos desconhecidos.

Aqui está uma dica extra: verifique com sua empresa sobre as questões legais do código gerado. Se você não souber por onde começar, leia o artigo sobre IA e a propriedade do código. Ao usar as dicas que compartilhei, você nunca estará utilizando IA para criar lógicas de negócios únicas ou o núcleo que torna seu código exclusivo. Assim, você provavelmente poderá manter os direitos autorais desse código, que deve representar o elemento-chave do seu valor único.

Eu escrevo código para uso interno de uma empresa ou código aberto, então não me preocupo com questões de propriedade relativas a trechos gerados pela IA.

Você já usou uma IA para ajudar a escrever código? Tem alguma dica a adicionar à minha lista acima? Deixe-nos saber nos comentários abaixo.

Você pode acompanhar minhas atualizações diárias de projetos nas redes sociais. Não esqueça de se inscrever na minha newsletter de atualizações semanais e me seguir no Twitter/X em @DavidGewirtz, no Facebook em Facebook.com/DavidGewirtz, no Instagram em Instagram.com/DavidGewirtz e no YouTube em YouTube.com/DavidGewirtzTV.

Referência: dem10/Getty Images

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima