O que a codificação de vibração significa para o futuro do desenvolvimento cidadão


O que a codificação de vibração significa para o futuro do desenvolvimento cidadãoO que a codificação de vibração significa para o futuro do desenvolvimento cidadão

A codificação do Vibe decolou no ano passado e não é apenas uma forma de os desenvolvedores brincarem com projetos paralelos. Assim como o low-code fez no passado, o vibe coding é outra evolução do movimento para levar o poder do desenvolvimento de software program a pessoas sem experiência em codificação.

No último episódio do nosso podcast, conversamos com Angie Jones, vice-presidente de engenharia de ferramentas e capacitação de IA da empresa de serviços financeiros Block, sobre esse movimento e como está acontecendo dentro do Block.

Aqui está uma versão editada e resumida dessa conversa:

P: Uma das coisas que as pessoas falam sobre IA é como ela pode capacitar todos a criar código e fazer coisas que não podiam fazer antes, quando agora não se trata apenas de engenheiros de software program. Então, como isso está mudando a maneira como as organizações trabalham, você sabe, criando agora um exército de pessoas que podem criar códigos que podem ou não ter qualquer governança por trás dele, qualquer segurança, qualquer teste, coisas assim?

R: Acho que os engenheiros estão adotando essas ferramentas de IA, e o que aprendemos é que, para acompanhá-las, temos que usar a IA nós mesmos. Eles estão se movendo muito rápido e, portanto, no Block, desenvolvemos um agente de codificação chamado Goose, e nossos desenvolvedores o usam. Mas o restante dos nossos funcionários decidiu: ei, também queremos usar um agente. Também queremos ajuda, e isso realmente moldou a forma como construímos o Goose, para que todos dentro da empresa possam usar esse agente de IA para realizar seus trabalhos também.

P: Também gostaria de falar um pouco com você sobre a noção de que os agentes de IA por meio do MCP estão se transformando no sistema operacional corporativo. O que você quer dizer com isso e o que isso significa para os desenvolvedores?

R: Todos queriam colocar as mãos no Goose para que também pudessem ser produtivos. Vimos vendas e advertising e finanças e jurídico – todos estavam usando essa ferramenta com seus respectivos servidores MCP, que eram conexões com os aplicativos que eles usam, sejam eles Google Drive, Gmail, Linear, GitHub, ou mesmo bancos de dados como Snowflake e todas as ferramentas que usamos internamente. E assim construímos servidores MCP para todas essas ferramentas para permitir que os funcionários as utilizassem. E eles estavam usando Goose nele, mas Goose ainda é uma ferramenta de desenvolvedor. E então o que descobrimos é que mesmo utilizá-lo pode ser um pouco difícil se você não for a pessoa mais experiente em tecnologia. E então o que construímos agora é a próxima camada, que é um sistema operacional agente. Pense como um painel, onde temos todos esses vários agentes rodando nos painéis das pessoas, e eles podem puxar os agentes que quiserem. Pense em uma loja de aplicativos, por assim dizer, com todos esses vários miniagentes para os quais as pessoas podem dizer: Sim, gostaria que isso estivesse no meu painel. Ou sim, quero algo que talvez me dê atualizações sobre os tickets que estou monitorando, ou os principais problemas que preciso resolver, ou talvez aquelas mensagens do Slack que ainda não entendi. E assim eles podem adicioná-los ao seu painel, e todos eles são agentes nos bastidores conectados aos servidores MCP. E então as pessoas realmente amam isso. Você sabe, é uma interface muito boa onde eles podem conversar com o agente, mas eles não sentem necessariamente que precisam usar uma ferramenta de desenvolvedor para fazer isso.

P: Eu mencionei anteriormente que se você simplesmente der a todos as chaves do reino, por assim dizer, pode haver todos os tipos de problemas. Estou ouvindo hoje em dia sobre esses deslocados internos teimosos que criam barreiras de proteção que dizem, bem, você só pode ir até aqui ou só pode ir até certo ponto. Então, o que você está vendo em termos de eficácia desse tipo de abordagem?

R: Nossa segurança, identidade, como todas essas pessoas, estão muito próximas da engenharia e do desenvolvimento dessas ferramentas, porque você está certo, as permissões, o acesso, mesmo quando esses agentes realizam uma ação, eles estão fazendo isso em seu próprio nome, ou estão em seu nome e seu nome está associado a isso? E então essas são definitivamente coisas que temos em mente, à medida que construímos essas ferramentas, mas também informamos e educamos nossos funcionários, tipo, sim, você está usando essas ferramentas não determinísticas para ajudá-lo a fazer seu trabalho, mas, em última análise, a qualidade e o que elas produzem ainda são de sua responsabilidade. Eles precisam desse treinamento sobre como interagir efetivamente com esses sistemas de ação.

P: Outra coisa sobre a qual as pessoas estão falando muito atualmente é a codificação de vibrações. Uma das coisas que eu gostaria de perguntar é que com a IA criando esse código funcional, onde entra a parte humana nisso? Você pode solicitar, por exemplo, à IA que não apenas crie esse código, mas que seja do jeito que você faria se o estivesse escrevendo?

R: Acho que a maneira de resolver isso é fornecendo bastante contexto, essencialmente. E então estou trabalhando com nosso corpo de engenharia para ajudá-los a ir além da codificação de vibração e também fora do IDE. Dentro dos sistemas de construção, quando eles colocam uma solicitação pull, temos agentes acionados automaticamente, ou mesmo se surgir um problema, eles podem atribuir esse problema a um agente e fazer com que ele o implemente e coloque uma solicitação pull e coisas assim. Mas para fazer isso de forma eficaz, definitivamente precisa de contexto, e por isso estamos treinando muito sobre como criar regras, arquivos e coisas que ajudem o agente a navegar em sua base de código. Temos enormes repositórios de modelos com 10 a 15 anos de idade e, nessas bases de código, é realmente difícil para um agente compreender a complexidade e as nuances de como esse código foi desenvolvido e, portanto, como humanos, precisamos fornecer essas informações. Se vamos delegar algumas dessas tarefas e pedir que ele escreva o código que precisa ser perfeitamente integrado a essas bases de código, temos que fazer a nossa parte para prepará-lo para o sucesso.

Deixe um comentário

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