JEDIComp desenvolvendo à Força

Minha opinião sobre IA

Outro dia um colega meu me perguntou qual a minha postura com relação ao uso de inteligência artificial para desenvolvimento. Aqui está ela.

A foto mostra um trem passando por uma ponte nas montanhas em meio a uma neblina. (Fonte: Arquivo pessoal)
A foto mostra um trem passando por uma ponte nas montanhas em meio a uma neblina. (Fonte: Arquivo pessoal)

Resolvi criar esse texto, assim como outros que escrevi nesse blog, como um ponto central que eu possa indicar para pessoas que me perguntem a respeito. Normalmente esse assunto se desenvolve rápido para uma conversa mais extensa que nem sempre é agradável para se ter em pé numa calçada ou algo assim.

Primeiro, vamos a alguns esclarecimentos.

Caso você não me conheça, eu trabalho com tecnologia. Sou formado em Ciência da Computação pela UFRN e durante minha formação eu tive a oportunidade de ter aulas específicas sobre Inteligência Artificial. Mas isso não quer dizer que eu seja expert no assunto. E mesmo que fosse, nem mesmo a OpenAI, criadores do ChatGPT, entendem exatamente como que ele funciona. O que eu tenho são um pouco mais de 10 anos de experiência trabalhando como programador, coordenador de equipe de desenvolvimento e arquiteto de software, além de contribuições aqui e ali em projetos open-source pela internet.

Por isso não me sinto confortável em comentar sobre questões mais extensas do uso de IA, como o impacto ambiental ou o seu uso para fraudes. Tem vários textos melhores feitos por pessoas mais qualificadas no assunto, que você encontra pela Internet. Isso assumindo que você ache alguma coisa. Não há garantia esses dias.

Além disso, nem toda IA é um ChatGPT ou um Sora. Vamos deixar bem claro aqui que IA existe já há algum tempo. Seja derrotando você no Chessmaster, protegendo seu computador de vírus, ou corrigindo a rota do seu GPS para você chegar na hora certa (ou não) no seu compromisso.

O que eu gostaria de comentar aqui são aspectos que eu mais presenciei, e que anda mais em voga nas rodas de conversa de meus pares: "vibe coding", ou o uso de LLM para gerar código.

Apertem os cintos...

O piloto sumiu

Eu tive uma experiência interessante esses dias. Estava conversando com um colega meu de trabalho e tivemos discordância sobre como que um componente que estava no projeto deveria se comportar e se poderia ser melhorado. Apontei que tinha uma melhoria que poderia ser feita aqui e ali por esse e aquele motivo. Ele respondeu simplesmente: "Vou perguntar para o Copilot".

Isso ilustra bem o primeiro motivo que me mantém distante de LLMs: atrofia.

Sim. Entendo que muita gente encontra no Copilot, Cursor, Llama, e todos os geradores de código uma forma de otimizar o tempo ao delegar para eles algo que a pessoa acha tediosa ou difícil de fazer. E meus colegas da empresa têm utilizado essas ferramentas cada vez mais. Também tenho ouvido desses mesmos colegas que a postura deles para com o código tem mudado. Um deles comentou que tem notado que está ficando mais preguiçoso.

Eu não tenho esse problema. O meu problema é que eu gosto de programar.

Meu primeiro contato com programação foi aos 12 anos. Desde então eu fiz vários cursos, faculdade, e programei como trabalho e como passatempo. Se contar aquele primeiro contato, ainda sem formação, hoje eu tenho 24 anos de experiência. Deixar para a máquina fazer algo que tenho certeza que sei fazer é, para mim, negar quem eu sou. Será que eu sou mesmo um programador se eu não programo?

Além disso, tem a questão de que o cérebro funciona como um músculo.

Lembro da primeira vez que parei de frequentar a academia de kung fu porque me mudei. Demorei dois anos para procurar uma academia do mesmo estilo na minha nova cidade. Durante 6 meses, eu tive que treinar como iniciante, mesmo já sendo do 3º nível do meu estilo. Nesses 6 meses eu passei rápido pelas aulas. Elas serviram mais como uma revisão que eu claramente precisava, e também para meu corpo se acostumar novamente com o ritmo de treino. Hoje já faz alguns anos que parei novamente após chegar no 7º nível, e uma das coisas que me deixa relutante em voltar é exatamente saber que vou ter que passar por um período de readaptação novamente, mas agora estando mais velho.

E eu tenho medo que isso aconteça com minha capacidade de programar.

Esquerdo autoral

O outro motivo é mais técnico, e para isso eu preciso dar uma explicação sobre Licenças de Software. Aguente um pouco.

A Lei Brasileira referente a proteção de propriedade intelectual de programa de computador diz que os direitos do programa é da pessoa que o escreveu, ou de seu empregador caso contratado para tal (Art 4º Lei 9.609/1998). E a critério dessa pessoa ficam os termos em que esse programa é usado e/ou distribuído. Quando falamos de Software de Código Aberto, esses termos de uso podem tomar várias formas e uma delas é conhecida como Copyleft.

Copyleft se refere a um conjunto de licenças que exigem que obras derivadas sejam distribuídas pela mesma licença. O conceito funciona mais ou menos como uma maneira de forçar o código a ser de domínio público a fim de que o software seja livre para ser estudado, modificado, evoluído, e usado para a sociedade quase sem limitações.

E é nessas limitações que eu tenho receio de usar geradores de código no meu trabalho.

Segundo a OpenAI, a tecnologia Codex, usada internamente pelo Github Copilot, foi treinada "um conjunto filtrado de repositórios no Github". Não achei que filtros são esses. O que eu posso dizer é que eu não tenho certeza se o código gerado pelo Copilot, ChatGPT, ou qualquer gerador de código, não é verbatim um código licenciado por uma licença copyleft como a licença GPL, uma das mais comuns em projetos de código livre.

Esses desafios legais ainda precisam ser validados por juristas no mundo todo. Será que a licença ainda é válida nessa situação? O código gerado pode considerado obra derivada ou obra original? Existe realmente obra original no mundo de hoje? Se eu uso o Copilot para gerar meu código, o programa tem que ser necessariamente open-source?

Não tenho resposta para essas perguntas. Até termos essas respostas, eu sigo evitando usar geradores de código no meu trabalho. Projetos grandes como o qemu concordam comigo.

Conclusão

Recentemente vi uma entrevista no YouTube com Neil deGrasse Tyson sobre IA e ele tem uma postura bem otimista dessa situação toda. Segundo ele, e eu estou parafraseando aqui, a humanidade tem certas coisas que não abre mão e por isso uma AGI (termo inglês para "Inteligência Artificial Generalista") nunca vai de fato pegar. E eu concordo com ele.

Ao mesmo tempo, acho irresponsável de qualquer parte que ache que "tudo vai se resolver naturalmente". Nós, enquanto sociedade, não devemos negar agência. A discussão sobre o uso da tecnologia não só é válida, como importante. Devemos, sim, ter consciência sobre os riscos, os impactos práticos, éticos, e legais de seu uso. A ciência e a tecnologia são ferramentas que já foram usadas para o bem e para o mal. Elas nos trouxeram o bisturi e a espada; as vacinas e a eugenia; os fogos de artifício e o revólver; a energia limpa e a bomba atômica; o fogo nos trouxe calor nos dias frios, mas também incêndios provocados por chá de revelação de gênero sendo transmitido na internet...

Em resumo: Não sou necessariamente contra o uso de Inteligência Artificial, desde que seja usado como uma ferramenta e não como um substituto às pessoas, e que seu uso seja consciente e intencional.


Obrigado a Caio ( @caiofreitaso@mastodon.social ) por me ajudar a revisar o texto ❤️


Comentários

Você pode adicionar o seu comentário respondendo a esse toot no Mastodon da sua conta no Mastodon, CalcKey, Akkoma, PixelFed, ou qualquer outra rede social com suporte a ActivityPub.