paint-brush
Harmonizando fluxos de trabalho de revisão de código: uma abordagem unificada para humanos e IApor@pullflow
285 leituras

Harmonizando fluxos de trabalho de revisão de código: uma abordagem unificada para humanos e IA

por Pullflow6m2023/09/12
Read on Terminal Reader

Muito longo; Para ler

Somos todos remotos e isso está atrapalhando nosso encanto de revisão de código. É como tentar jogar um videogame cooperativo quando seu amigo está com uma conexão lenta à Internet.
featured image - Harmonizando fluxos de trabalho de revisão de código: uma abordagem unificada para humanos e IA
Pullflow HackerNoon profile picture
0-item
1-item

Principais conclusões

  1. Assíncrono nem sempre é incrível : a flexibilidade do trabalho remoto traz o desafio da comunicação assíncrona, que pode retardar o processo de revisão de código.
  2. A mudança de contexto é um buzzkill : alternar constantemente entre codificação e revisões de código pode acabar com sua produtividade mais rápido do que você pode dizer “conflito de mesclagem”.
  3. A IA e a automação mudam o jogo : elas podem lidar com tarefas repetitivas e até mesmo oferecer insights valiosos, mas não substituem a experiência humana.
  4. Fluxos de trabalho unificados e orientados por conversas são o futuro : reunir humanos, IA e automação em uma conversa contínua pode tornar o processo de revisão de código mais eficiente e agradável.

Tudo bem, vamos direto ao assunto. Estamos todos programando de pijama agora e, embora isso seja incrível para o equilíbrio entre vida pessoal e profissional, é uma espécie de lixeira para revisões de código. Lembre-se dos bons e velhos tempos em que você poderia simplesmente rolar sua cadeira até a mesa de um colega e dizer: “Ei, você pode dar uma olhada rápida nesta função?” Sim, esses dias acabaram como o fone de ouvido de um iPhone.


Então, qual é o problema? Somos todos remotos e isso está atrapalhando nosso encanto de revisão de código. É como tentar jogar um videogame cooperativo quando seu amigo está com uma conexão lenta à Internet – é frustrante e menos divertido. Mas ei, somos engenheiros. Resolvemos problemas para viver, certo? Então, vamos mergulhar nessa bagunça e ver se conseguimos limpá-la um pouco.

O bom, o ruim e o feio das revisões remotas de código

Problemas assíncronos: o jogo da espera

A comunicação assíncrona é ao mesmo tempo uma bênção e uma maldição do trabalho remoto. Por um lado, é fantástico. Você pode trabalhar quando for mais produtivo, seja você um madrugador ou um notívago. Mas aqui está o chute: enquanto você toma seu café da manhã, seu companheiro de equipe do outro lado do mundo provavelmente está na metade do sono REM. Então, você está preso no jogo da espera, esperando que eles revisem seu código antes que o prazo final se aproxime. É como esperar a conclusão de uma atualização de software – você sabe que é necessário, mas, cara, é tedioso.

Mudança de contexto: o pior inimigo do cérebro

Você está profundamente envolvido no código, na zona e então – BAM! – Notificação do Slack. É uma solicitação de revisão de código. Normalmente, isso atrapalharia seu foco, forçando você a mudar de marcha e de contexto. Mas e se aquela notificação do Slack fosse realmente útil? E se isso permitisse que você realizasse a revisão sem sair do ambiente de codificação?


Pullflow resolve o problema oferecendo integração bidirecional com suas ferramentas existentes. Ele agiliza seu fluxo de trabalho para que até mesmo uma notificação do Slack se torne uma parte integrada do seu processo de codificação, em vez de um elemento perturbador.

Sobrecarga de ferramentas: o pesadelo do exército suíço

GitHub, Jira, Slack, Jenkins e nem me fale sobre as ferramentas internas personalizadas que as empresas adoram construir e que prometem "otimizar seu fluxo de trabalho". Mas sejamos honestos, muitas vezes parece que você é um artista de circo girando pratos. Cada ferramenta tem seu próprio conjunto de notificações, peculiaridades e recursos “obrigatórios” que você nem pediu. É como possuir um canivete suíço, onde você usa apenas a lâmina, mas precisa carregar um saca-rolhas, um palito e uma minichave de fenda "por precaução".

IA e automação: o futuro ou apenas uma moda passageira?

AI: O pato de borracha que responde

A IA nas revisões de código não é mais apenas um corretor ortográfico glorificado. Pense nisso como um consultor de código com doutorado. em ciência da computação. Aproveitando algoritmos de aprendizado de máquina, como árvores de decisão, ele otimiza seu código e até sugere melhorias algorítmicas. Usando Processamento de Linguagem Natural (PNL), ele pode analisar o tom de seus comentários. É como ter um revisor de código sempre vigilante que também sinaliza riscos de segurança em tempo real.

Automação: a sinfonia CI/CD

A Integração Contínua e a Implantação Contínua (CI/CD) são como a seção rítmica de uma banda – muitas vezes esquecida, mas crucial para manter o ritmo. Testes, compilações e implantações automatizados tornaram-se parte integrante dos fluxos de trabalho modernos de revisão de código. Quando você envia uma solicitação pull, testes automatizados entram em ação como um relógio, fornecendo feedback imediato sobre se suas alterações estão corretas. É como ter um revisor pessoal que verifica seu trabalho antes que alguém o veja. Mas lembre-se, CI/CD é tão bom quanto os testes que você escreve. Entra lixo, sai lixo.

Chatbots: estagiários digitais que nunca soubemos que precisávamos

Os chatbots no processo de revisão de código são como estagiários que estão sempre ansiosos para ajudar, mas não esperam receber pagamento. Eles podem lidar com tarefas rotineiras, como atualizar status de tickets, mesclar pull requests aprovados e até mesmo notificar membros da equipe sobre revisões pendentes.


É como ter um par extra de mãos que cuidam do trabalho pesado, permitindo que você se concentre em tarefas mais complexas e criativas. Mas cuidado, os chatbots são programados para serem literais. Um bot mal configurado pode causar estragos, como um estagiário que entende mal “faça um café para mim” e acaba encomendando 100 máquinas de café expresso.

Lidando com a complexidade da revisão de código com Pullflow

Vamos discutir o Pullflow, uma ferramenta que está agitando a comunidade de desenvolvedores por sua abordagem única aos desafios de revisão de código. Em vez de ser apenas mais uma plataforma, o Pullflow pretende ser uma solução para os problemas específicos que temos vindo a dissecar.

Como o Pullflow aborda os problemas:

  1. Troca de contexto : lembra-se do esforço mental de fazer malabarismos entre IDEs, aplicativos de bate-papo e repositórios de código? Pullflow integra essas plataformas bidirecionalmente, reduzindo a necessidade de troca constante de guias.
  2. Problemas assíncronos : um único thread para todas as atividades de relações públicas mantém todos atualizados em tempo real, mitigando os atrasos causados por diferenças de fuso horário e comunicação assíncrona.
  3. Conversas assistidas por IA : a IA contextual do Pullflow oferece respostas e feedback em tempo real em suas discussões de relações públicas do Slack, agindo como um guru de revisão de código de plantão.
  4. Comandos acionáveis : permitem ações imediatas por meio de comandos do Slack, reduzindo a necessidade de alternar contextos apenas para executar tarefas simples, como atribuir um PR.
  5. Métricas de desempenho : oferece métricas em tempo real para ajudá-lo a monitorar e melhorar os ciclos de revisão e os tempos de resposta

Advertências a serem consideradas:

  1. Limitações da plataforma : Atualmente, ele suporta apenas GitHub, Slack e VS Code, o que pode ser uma restrição para algumas equipes.


Pullflow reúne todas as suas atividades de relações públicas, automações e conversas em um só lugar. É como ter um centro de controle de missão para revisões de código.

O sonho: um fluxo de trabalho unificado e orientado para conversas

O que todos desejamos é um fluxo de trabalho unificado e orientado por conversas para revisões de código. Imagine uma integração perfeita de conhecimento humano, insights de IA e automação, todos trabalhando em harmonia. Imagine um único thread onde coexistem código, comentários e feedback automatizado, permitindo colaboração e tomada de decisões em tempo real.

O elemento humano: o cerne das revisões de código

No centro de qualquer processo de revisão de código estão os revisores humanos. Trazemos para a mesa nossa experiência, intuição e criatividade. Captamos as nuances que a IA pode perder, entendemos o contexto em que o código será executado e oferecemos insights que vão além da mera sintaxe e lógica. Somos os músicos de jazz que sabem quando seguir a partitura e quando improvisar.

IA e automação: o elenco de suporte

IA e automação são ótimas, mas são o elenco de apoio, não os atores principais. Devem realçar o elemento humano e não substituí-lo. É como usar uma calculadora para fazer contas – você ainda precisa saber como fazer as contas; a calculadora apenas a torna mais rápida e precisa.

As ferramentas: instrumentos do comércio

As ferramentas que usamos – GitHub, Jira, plataformas CI/CD, chatbots – são os instrumentos que produzem o som. Eles precisam ser bem ajustados e bem conservados para produzir um resultado harmonioso. A escolha das ferramentas pode fazer ou quebrar seu processo de revisão de código, então escolha com sabedoria.

Estudo de caso: das trincheiras: a reviravolta na revisão de código do Runn.io

Aqui está um pouco de reflexão. Runn.io enfrentou os mesmos gargalos de revisão de código que muitos de nós conhecemos muito bem. Depois de integrar o Pullflow, o tempo de espera da revisão caiu de arrastadas 14 horas para rápidos 4. Isso significa menos tempo de espera e mais tempo de codificação, que é o que todos queremos, certo?

Conclusão: o futuro é o que fazemos dele, então vamos trabalhar

Estamos na encruzilhada da engenhosidade humana e da inovação tecnológica, com um teclado em uma mão e um pull request na outra. O futuro das revisões de código não consiste em escolher a ferramenta ou metodologia perfeita; trata-se de criar uma abordagem holística que combine o melhor da habilidade humana e da tecnologia de ponta.

Seus próximos passos

  1. Audite seu fluxo de trabalho atual : identifique gargalos e áreas que podem ser melhoradas.
  2. Experimente a IA : se a IA ainda não faz parte do seu kit de ferramentas, agora é a hora de começar a experimentar.
  3. Otimize a comunicação : considere ferramentas como Pullflow que centralizam as atividades de RP e reduzem a mudança de contexto.
  4. Invista em treinamento : certifique-se de que sua equipe esteja atualizada com as melhores práticas mais recentes em revisões de código, seja por meio de treinamentos internos ou cursos externos.


Portanto, sejamos os arquitetos de um futuro onde as revisões de código não sejam apenas uma caixa de seleção, mas um processo colaborativo e enriquecedor que eleva tanto nosso código quanto a nós mesmos. E se pudermos fazer isso enquanto tomamos um café artesanal e arrasamos com a camiseta da nossa banda favorita, realmente tiramos a sorte grande.