Executando verificação de segurança...
1

ChatGPT vai roubar seu emprego?

You are fired

Recentemente, em conversa com colegas e amigos, ouvi muitas coisas sobre o ChatGPT e a OpenIA, ouvi de muitas pessoas de dentro e fora da bolha tech e todos muito impactados a sua maneira Alguns muito céticos, outros muito devotos, mas isso tudo me dispertou vontade de escrever meus 20 centavos e a minha opinião sobre o assunto nesse artigo abaixo, espero que goste! 😁

Essa “revolução” que está acontecendo agora com o IAs em geral, mas principalmente com o ChatGPT, já está ocorrendo a muito tempo, sendo mais preciso, pra lá de uns 2 anos ou mais, seja ela para resolução de tarefas, elaboração de respostas complexas e até geração de código. Eu inclusive já fiz uns projetinhos a uns anos, baseados em outro do próprio Filipe Deschamps, pra criação de um vídeo completa, pronto pra por no youtube, a partir de um simples prompt com o tema do vídeo, tudo muito funcional, mas muito experimental.

Claro, dessas anos pra cá as coisas evoluíram, mas o que mudou significativamente e realmente de lá pra cá, foi fazer a IA ser comercialmente viáveis, pois desses anos pra cá, era muito caro, a nível de processamento, custo em infraestrutura e consumo de máquina, para se ter um preço que tornasse o produto atrativo para o publico em geral.

Existem outros motivos de mercado, momento atual e até o UI/UX, que fizerem na minha opinião, com que o ChatGPT ganhar tanta relevância atualmente, mas outro dia se surgir disposição, eu faço outro artigo falando sobre a minha opinião quanto a isso.

Sobre a questão de usar no dia-a-dia, tenho também as minhas grandes ressalvas. Já utilizo IA para completude de código a bastante tempo, pra esses casos, sugiro pesquisar mais sobre Tabnine e mais recentemente Copilot, usei e uso ambos e realmente ajudam muito, muito mesmo, desde insights, optimizações, refatorações a até pra atividades repetitivas, mas o que realmente é importante salientar é que isso também não é algo novo e tem muitas, MUITAS limitações, vou tentar descrever abaixo a maior delas, na minha opinião:

Contexto de trabalho e padrões de projeto

Quando se tem um projeto pequeno, quase tudo atende a demanda de uma feature, implementações mais básicas, UI/UX menos elaborados e até uma avaliação mais superficial de um fluxo e isso é importante, pois nessa situação hipotética, se trata de um projeto pequeno, então antes de entregar o melhor possível, pensamos em timing de produto. Agora quando falamos de contextos e projetos grandes, com de um bancopor exemplo, temos muitos outros problemas para resolver, além do que só programação, precisamos pensar em como gerir todo o projeto, muito mais além do que só código. Vamos pensar no seguinte contexto:

O Twitter, por exemplo, te quase 4000 funcionários (levando em consideração só o número no linkedin), reduzindo esse número na tentativa de considerar somente programadores, vou colocar 1000, reduzindo ainda, pois nem toda empresa tem o porte do Twitter, vou dizer 100 programadores em um equipe. Esses 100 programadores, precisam fazer códigos que sejam testáveis, que sigam um padrão estipulado para a equipe, sejam compatíveis com o que já existe em código e muitos outros pontos que englobam o contexto de trabalho da empresa em questão. Além de tudo isso o código tem que de fato fazer o que é proposto, ou seja atender a feature, o que geralmente é o mais complexo. Do contrário, muitos bugs entrarão no projeto, além de que, caso fujam dos padrões, ficará difícil decorrer na manutenção de toda a base de código.

Temos que lembrar que, grande empresas tem projetos com 2 bilhões de linhas, eu mesmo já participei de projetos com mais de 500mil linhas, administrar isso não é simples, garantir que o código que entra esta correto é mais complexo ainda.

Ta, mas você deve está se perguntando, o que isso afeta diretamente o uso do ChatGPT? A questão é que, a IA do GPT como um todo, assim como muitas outras, trabalha de forma genérica, fazendo com que o resultado gerado seja diferente, na maioria das vezes do que se é necessário como resultado final. Caso optemos por copiar esse resultado e ajustar ele para os padrões da empresa, na maioria das vezes será mais custoso em tempo do que fazer a elaboração “manualmente”, já seguindo o que existe na base de código, além do que seria um resultado similar ao que já temos com o Copilot e Tabnine, só que esses caras tem uma grande vatagem, pelo menos por enquanto, pois já estão integrados com as nossas editores e IDEs de desenvolvimento.

Mas onde devemos usar o ChatGPT então?

Na minha visão, o maior trunfo dele é com POCs, MVPs e P&D, pra esses casos, precisamos justamente do que ele entrega, que é rapidez e experimentação. Nesses casos ele é perfeito, pois vamos perder menos tempo fazendo as bases, já que não temos padrões pra seguir e o contexto é pequeno. Dessa forma podemos descartar as ideias ruins sem termos perdido muito tempo na elaboração ou prosseguir e investirmos mais tempos refatorando e colocando nos padrões para podermos injetá-la na base grande de código, caso a ideia seja boa e positiva.

Conclusão

A minha opinião se baseia nas minhas considerações e experiências, levantando o questionamento quanto ao trade off de complexidade que se tem em aderir ou não a essas tendências, pois tudo gera custo, de tempo ou dinheiro.

Fontes

Carregando publicação patrocinada...
2

Eu era do time dos céticos também, mas existe a questão do tempo e evolução exponencial dessas ferramentas, que se não me falha a memória é algo em torno de 3.8 meses, o que é surreal levando em consideração a lei de Moore dos 18 meses.
A velocidade em que essas ferramentas dobram sua capacidade pode ser a chave para entendermos o tamanho do impacto.

Algo bastante perceptível é a evolução do Midjourney, que do 1 para o 2 mudou da água para o vinho, e na recente versão 5 é muito difícil para um olho não treinado saber o que é uma foto real do que é uma imagem gerada por IA.
No caso específico do Midjourney, conhecer sobre perspectiva, iluminação, enquadramento, etc vai ajudar muito na hora de usar o prompt e seus parâmetros, mas mesmo assim não vejo um futuro promissor para os ilustradores, por exemplo.

Já o GPT-4 está aí reconhecendo entradas de imagem e dando um salto em relação à versão anterior, e agora é possível também dividir o comando do contexto, o que ajuda muito na hora de gerar o resultado.
Posso por exemplo contextualizar dizendo: "Você é um programador experiente que vai seguir as boas práticas", isso em uma parte separada do comando, dessa forma a IA tem uma maior clareza do seu papel na atividade.

Por isso, sabendo que a cada 4 meses vamos ter uma "mini-revolução", eu sinceramente não posso imaginar o que teremos em 5 ou 10 anos, já que a velocidade de evolução é espantosa.
Então, acho que o ponto principal não é elaborar o que Chat GPT faz agora, e sim o que ele poderá fazer nas próximas versões.

Minha estratégia está sendo cair de cabeça nesse mundo para entender o que eu posso fazer para ser mais produtivo usando essas ferramentas. Não apenas uso Copilot e GPT, como também o Midjourney e Play.ht para criar conteúdo multimídia.

Não tenho nenhuma conclusão sobre o assunto, mas a minha perspectiva é de que programadores experientes se tornem "pilotos dos novos Airbus": Não é quem pousa, não é quem decola, mas está no comando supervisionando e assume quando é necessário.
O ponto é que um avião só precisa de 2 pilotos e não um departamento inteiro para comandar o voo.
E pensando por esse lado, quem tem alguma senioridade está de certa forma protegido, mas vejo uma barreira bem grande sendo erguida para os juniores.

2

Muito bem colocado cara, inclusive concordo muito com a sua colocação, mas contextualizei minhas pontuações mais no contexto de grande projetos, o que acredito que ainda existem muitas barreiras quando ao uso ativo dele. Eu inclusive tenho estudado muito sobre o assunto acredito que o proximo boom dessas IAs sejam produtos surgindo em cima delas, tornando elas mais objetivas e contextualizadas.

Deixo se sugestão ler mais sobre LLM e LlamaIndex :D