Reflexões sobre github copilot - A terceira revolução computacional
Eu não quero falar sobre o github copilot mas sim de qualquer IA voltada a criar programas de computador.
Uma breve história de humanos e máquinas
Caros leitores, se alguém aqui ainda é contra o uso desse tipo de tecnologia eu gostaria de lhes dizer "aceita que dói menos". Nós estamos no início de uma transformação de como humanos se comunicam com máquinas e claro isso vai afetar o trabalho de desenvolvedores de programas de computador seja qual for sua especialidade. Um dos grandes saltos no desenvolvimento de software foi a criação de linguagens de programação de alto nível. Isso nos possibilitou um novo salto de interface cérebro máquina onde poderíamos escrever textos muito descritivos do que o computador deveria fazer. Em seguida acenderam as interfaces gráficas, isso inclui terminais que operavam em texto puro. Agora o computador não só entrega informações via um perfurador de cartões como também via imagens a partir de uma tela. Pessoas fora da computação como contadores, biólogos, economistas, bancários entre outros poderiam apenas operar o computador a o invés de programar. Isso deu um salto na utilidade dessas maquinas que começaram a se espalhar como gafanhotos famintos, ainda mais após engenhocas como o Apple 2.
A terceira revolução computacional
Hoje estamos no que quero denominar a terceira revolução computacional, que vem a criar uma nova forma de comunicação com a máquina. Essa será a era das IAs como interface. Vejam tudo que está a frente de vocês, a não ser que você seja cego e esteja usando um leitor de tela, você está observando uma tela. Cheia de cores, botões, fontes, caixinhas de texto e animações. Tudo isso serve para aumentar o conforto na hora de se comunicar com o computador, isto é, tirar a informação do seu cérebro e passar para a máquina e vice-versa. Nada disso tem finalidade, são todos meios. Assim como teclado, mouse, controle de vídeo game, tela. Já pensou o quanto tempo é gasto hoje criando telas, designs ou os superestimados UX? Imagina se a gente largasse tudo isso! Exatamente largar tudo isso!
Fim das telas?
Não diria que seria o fim das telas, mas o fim de quase tudo que usamos hoje para GUI, isso inclui boa parte da web e boa parte dos aplicativos desktops e mais a frente vou explicar os editores de código. Veja só o Excel ou Google Sheets se preferir. Acredito que seja o tipo de software que quase todo mundo usa ou já usou e tem a complexidade suficiente para exemplificar o futuro daqui em diante. Veja quantos botões, menus, configurações fora a construção de fórmulas que existe nesse software e tudo o que você quer é saber o quanto clientes avaliaram mal produtos de informática no mês passado. O Excel poderia ser substituído por uma simples e minimalista caixa de texto em que você digita o que quer e a IA se encarrega de ler os dados entender o que fazer e te dar o resultado. Sem cliques, sem configurações, sem desing, sem UX... O ganho comercial é imenso, basicamente tudo o que precisamos e desenvolver é o backend e o usuário pode ter a experiencia que quiser no software e não aquela que projetamos para que ele tenha.
O futuro
Eu vejo um futuro onde vamos começar a substituir gradativamente recursos gráficos de interação por recursos mais diretos como uma conversa, está que pode ser via teclado, voz, gestos ou até mesmo o neuralink. Inclusive imagina o ganho que pessoas com deficiência, principalmente cegos, teriam com esse tipo de interface. Uma conversa é muito mais humano e tudo que fazemos e tentar deixar o computador mais humano. Os LLMs (Large Language Models) são uma revolução, finalmente podemos se comunicar com o computador de forma mais humana possível o que faz com que boa parte do que temos hoje em conceito de interface seja obsoleto. Programadores abracem isso e sejam felizes. Não o chato de site de freelancer que acha que dá para fazer um aplicativo "tipo Uber" em 2 meses com um orçamento de 8K USD não vai tomar o seu lugar usando LLMs. Mas aqueles que se preocupam mais com linguagens, códigos, frameworks da moda ou qual é a melhor IDE a o invés de software rodando e clientes felizes, estão perdidos. Não me levem a mal, tudo isso é importante, mas cada vez mais estamos chegando perto de isso tudo se tornar cada vez mais irrelevante assim como o address map da máquina que você vai rodar sua nova aplicação NodeJS.
Desbravem esse mundo com um novo paradigma o paradigma conversacional
Concordo em gênero, número e grau.
Isso causará outra implicações, por exemplo uma maior dependência da aplicação em contactar a Nuvem e isso pode ser um problema para programadores de países de terceiro mundo aonde a internet oscila e não há uma garantia de trabalho continuado;
Do mesmo modo vejo o fim da pirataria, com um modelo aways online dependente de IA, você pode fechar a aplicação para si e pronto, a própria IA pode fazer as rotinas de verificação de integridade local se há algo inapropriado.
Mas isso tudo seria no extenso prazo, a curto prazo poderiam fazer o modelo híbrido, com UI/UX e a IA atrelada, se tornando cada vez maior a cada update.