21.7 C
São Paulo
21 de novembro de 2024

Redes Neurais darão bons programadores?

<p><img style=”margin: 5px auto; vertical-align: middle; display: block;” src=”images/2021/neurais.jpg” alt=”neurais” />Os cavalos eram o meio de transporte da época. Nova York convivia com 30 mil cavalos. Sem os cavalos as cidades morreriam de fome, não existiriam operários vindos da periferia, eles eram um mal necessário bem como seus subprodutos, como 40 mil galões de urina por dia, baratas, ratos, cavalos que morriam e eram abandonados nas ruas.</p>
<p>Em 1894, o Times of London estimou que em 1950 todas as ruas de Londres estariam cobertas por três metros de esterco.</p>
<p>Os moleques, com pás, ganhavam um centavo de dólar para limpar as ruas nas esquinas para que cavalheiros e damas as cruzassem sem sujarem, muito, suas botas e roupas.</p>
<p>Previsto para durar uma semana, o congresso acabou no fim do segundo dia, pela incapacidade de os delegados acharem uma solução para esse transtorno das cidades.</p>
<p>Veja o artigo completo do Eric Morris: <a href=”https://escholarship.org/uc/item/6sm968t2″>https://escholarship.org/uc/item/6sm968t2</a></p>
<p>Enquanto isso, do outro lado do Atlântico, em 1886, Karl Benz patenteava o primeiro veículo a motor e salvava as cidades desse infortúnio e, bem, como sempre criava outros.</p>
<p>O avanço da tecnologia tem resolvido a maior parte dos nossos problemas e evidentemente causado outros.</p>
<p>O grande problema da falta de mão de obra especializada na indústria de tecnologia da informação parece que vai ser resolvido, novamente, pela tecnologia, a Inteligencia Artificial baseada em Redes Neurais e no conceito de Learning Machines parece ser a solução.</p>
<p>A Rede Neural que está por trás do gerador de textos em linguagem natural, o GPT-3, lançado em maio de 2020 pela OpenAI, pode ser usada para gerar código fonte de programas.</p>
<p>Como toda rede neural precisa ser treinada com enormes quantidades de códigos já escritos. Aparentemente a rede neural não entende o significado do código, mas pode capturar padrões para gerar outros códigos e algoritmos, sobre um determinado assunto. O grande problema é que o aprendizado se baseia em milhões de linhas de códigos escritas por humanos, que erram em média 15 linhas para cada mil escritas e acabam gerando redes neurais imperfeitas que gerarão também bugs e vulnerabilidades .</p>
<p>Para saber mais <a href=”https://www.wired.com/story/ai-latest-trick-writing-computer-code/?bxid=5dc8b0772a077c1ba03e5283&amp;cndid=59130706&amp;esrc=profile-page&amp;source=EDT_WIR_NEWSLETTER_0_DAILY_ZZ&amp;utm_brand=wired&amp;utm_campaign=aud-dev&amp;utm_mailing=WIR_Daily_042321&amp;utm_medium=email&amp;utm_source=nl&amp;utm_term=list1_p1″><strong>AQUI.</strong></a></p>
<p>Baseadas nessa solução, empresas estão pesquisando ferramentas de Inteligencia Artificial para automatizar o desenvolvimento de softwares, procurar bugs e vulnerabilidades.&nbsp;Com o agravante de que a rede neural pode ser inteligente, mas normalmente não é inteligível (para humanos) e seu código pode sofrer do mesmo problema.</p>
<p>A pergunta que fica não é se a inteligência artificial vai substituir os programadores, mas quando isso acontecerá.&nbsp;Esse desenvolvimento terá profundo impacto na educação das crianças e no futuro dos seus empregos.</p>
<p>O famoso apagão de mão de obra qualificada em diversas áreas da TI pode ter o mesmo fim dos cavalos do começo do século passado.&nbsp;Especialistas alertam, no entanto, que essa automação da programação com as soluções de IA podem gerar outros problemas, o que inclui bugs e pontos cegos, exigindo cuidadoso exame.</p>
<p>O caminho inicial parece que será a Programação Auxiliada por Computador, o que o CAD fez pela engenharia e arquitetura, será feito para engenharia de sistemas pelo CAP (Computer Aided Programming), baseado em inteligencia artificial, para auxiliar profissionais humanos na programação e para identificação de bugs em código, em tempo real, na medida que são escritos.</p>
<p><em>(*) Presidente do Conselho da ABES, fundador e CEO da CLM.</em></p>