Como obter feedback da comunidade sobre grandes blocos de código?

8

Code Review.SE é excelente quando você precisa de feedback sobre um pedaço preciso e curto do código.

Mas onde obter feedback semelhante sobre o próprio código quando:

  • você tem milhares de LOC,

  • não tenha colegas em seu local de trabalho prontos ou dispostos a revisar o código¹,

  • não tem milhares de dólares para gastar em uma revisão profissional de um desenvolvedor de terceiros? ²

Lugares como o CodePlex são uma boa idéia para divulgar seu projeto³, mas, pelo que vi, o feedback que você recebe sobre projetos conhecidos é o feedback do consumidor, ou seja, diz respeito aos bugs e solicitações de recursos, não à qualidade do próprio código-fonte.

Qual é a maneira social de envolver a comunidade na revisão de código da base de código de um determinado tamanho para um projeto de código aberto que não possui a escala do Firefox ou produtos similares?


¹ É o caso da maioria dos projetos pessoais e de código aberto, ou projetos realizados em empresas onde a prática de revisão regular e completa do código é inexistente.

² Qual é, novamente, o caso da maioria dos projetos pessoais e de código aberto.

³ Mesmo que muitos projetos publicados no CodePlex nunca sejam conhecidos, porque ninguém se importa ou porque eles não são apresentados muito bem.

Arseni Mourzenko
fonte
3
letras pequenas me deixa nervoso!
AnthonyBlake
2
O que torna seu projeto interessante o suficiente para outras pessoas quererem vê-lo?
@ Thorbjørn Ravn Andersen: mesmo com projetos interessantes o suficiente, o problema permanece. O StyleCop no CodePlex, por exemplo, é sem dúvida interessante, mas o rastreador de problemas ainda está cheio de "comentários do consumidor": relatórios de erros e solicitações de recursos, nada relacionado à revisão de código.
Arseni Mourzenko

Respostas:

6

Não existe uma maneira da mídia social de levar as pessoas a dedicar horas do seu tempo a revisar o código de algum projeto aleatório ... ou a fazer qualquer outra coisa, nesse caso. Minutos que você pode ter, horas nem tanto.

Então, você tem duas possibilidades:

1) Divida em pedaços de minutos. Você NÃO precisa de todas as suas milhares de linhas de código revisadas. Extraia os bits mais importantes e solicite a revisão de um ou dois deles. Você provavelmente obterá algum tipo de comentário geral sobre estilo / não faça isso / nomeie coisas como essas, que você poderá aplicar a toda a base de código. Se você tem MUITOS bits ... bem, poda mais e talvez peça uma revisão de uma ou duas por semana, e repita com base nos comentários recebidos. Quando todos os comentários são coisas que você já viu antes e decidiu não mudar de qualquer maneira, está pronto.

2) Torne o projeto importante para as pessoas. Eu não acho que você possa realmente fazer isso, mas se você tiver um código que realmente resolverá a crise financeira grega, você vence.

mjfgates
fonte
3

Pergunta difícil; não tenho certeza se há uma resposta sólida.

Acho que há duas partes em sua pergunta:
primeiro, onde você pode postar o anúncio solicitando a revisão.
Segundo, como encontrar pessoas que estão dispostas a dedicar tempo para realizar a revisão.
Eles estão relacionados, mas sutilmente diferentes.

O segundo pode ser mais fácil do que o primeiro a responder - as comunidades P.SE e CR.SE deveriam ter pessoas que estariam dispostas a intensificar e ajudar com isso. Pessoalmente, acho que quase sempre aprendo algo de uma revisão, por isso acho-os recompensadores. As motivações variam, portanto, se é uma área interessante de código que pode ajudar a identificar alguém ou várias pessoas.

O primeiro não é tão fácil de responder. O P.SE saiu porque a solicitação não atende ao formato de perguntas e respostas. O CR.SE também não parece adequado para as coisas, a menos que você tenha dividido em partes menores (módulos / funções) e possuidor de um monte de posts. De imediato, não conheço sites em que você possa postar esse tipo de solicitação. Se o sistema SE tivesse um sistema de correspondência de pessoa para pessoa, essa seria uma maneira de recrutar, mas estou pesquisando por lá.

Dado que uma revisão fora de banda de vários milhares de locos levará um tempo, eu encorajaria a paciência no processo.

Em resumo, você apenas precisa encontrar um desenvolvedor que esteja disposto a executar a revisão.


fonte
FWIW, agradecemos suas contribuições para a P.SE e teremos prazer em fornecer algumas horas de revisão em troca. A única ressalva é se eu conheço bem o idioma.
1

Eu daria uma primeira facada usando algo como stylecop e fxcop ou equivalentes para o seu idioma. Em seguida, você pode documentar a arquitetura e obter feedback sobre isso muito rapidamente. Finalmente, você pode pegar alguns trechos problemáticos ou algumas classes e pedir a um desenvolvedor para revisá-lo com você em vez de toda a base de código. Desde que você não tenha mudado o estilo do código todo, algumas classes devem fornecer algumas dicas sobre a base de código como um todo.

Peter Smith
fonte