Come ottenere feedback dalla comunità su grandi blocchi di codice?

8

Code Review.SE è fantastico quando hai bisogno di un feedback su un pezzo di codice preciso e breve.

Ma dove ottenere un feedback simile sul codice stesso quando:

  • hai migliaia di LOC,

  • non avere colleghi sul posto di lavoro pronti o disposti a rivedere il codice¹,

  • non hai migliaia di dollari da spendere per una revisione professionale da parte di uno sviluppatore di terze parti? ²

Luoghi come CodePlex sono una buona idea per far conoscere il tuo progetto³, ma da quello che ho visto, il feedback che ottieni i progetti noti sono feedback dei consumatori, ovvero riguardano i bug e le richieste di funzionalità, non la qualità del codice sorgente stesso.

Quali sono il modo sociale per coinvolgere la comunità nella revisione del codice della base di codice di una certa dimensione per un progetto open source che non ha la scala di Firefox o prodotti simili?

¹ Che è il caso per la maggior parte dei progetti personali e open source, o progetti realizzati in aziende in cui la pratica della revisione periodica e completa del codice è inesistente.

² Che è, ancora, il caso per la maggior parte dei progetti personali e open source.

³ Anche se troppi progetti pubblicati su CodePlex non vengono mai conosciuti, perché nessuno se ne preoccupa o perché non vengono presentati molto bene.

    
posta Arseni Mourzenko 24.06.2012 - 02:02
fonte

3 risposte

6

Non esiste un modo social-media per indurre le persone a dedicare ore del loro tempo a rivedere il codice per qualche progetto casuale ... o a fare qualcos'altro, del resto. Minuti che puoi avere, ore non tanto.

Quindi hai due possibilità:

1) Spezzalo in pezzi di pochi minuti. NON hai bisogno di TUTTE le migliaia di righe di codice esaminate. Estrai i bit più importanti e chiedi la revisione di uno o due di questi. Probabilmente otterrai una sorta di stile generale / non fare / quello-nome-cose-come-questi commenti, che potrai applicare a tutto il codice base. Se hai un sacco di bit ... beh, pota di più, e magari chiedere una revisione di uno o due a settimana, e itera in base al commento che ottieni. Quando tutti i commenti sono cose che hai visto prima e hai deciso di non cambiare comunque, hai finito.

2) Rendi il progetto importante per le persone. Non penso che tu possa effettivamente farlo, ma se hai un codice che risolverà davvero la crisi finanziaria greca, vinci.

    
risposta data 24.06.2012 - 22:30
fonte
3

Domanda difficile; non sono sicuro che ci sia una risposta solida.

Penso che ci siano due parti alla tua domanda -
Innanzitutto, dove puoi pubblicare l'annuncio che richiede la revisione.
In secondo luogo, come trovare persone che sono disposte a dedicare il tempo necessario per eseguire la revisione.
Sono correlati, ma sottilmente diversi.

Il secondo potrebbe essere più facile del primo a rispondere - entrambe le comunità di P.SE e CR.SE dovrebbero avere gente che sarebbe disposta a intervenire e dare una mano in questo. Personalmente, trovo che quasi sempre impari qualcosa da una recensione, quindi li trovo gratificanti. Le motivazioni variano, quindi se si tratta di un'interessante area di codice che può aiutare a identificare qualcuno o più persone.

Il primo non è facile da rispondere. P.SE è fuori dato che la richiesta non soddisfa il formato Q & A. CR.SE non sembra adatto per le cose, a meno che non si rompessero le cose in blocchi più piccoli (moduli / funzioni) e avessero una quantità enorme di post. A mano a mano, non conosco nessun sito in cui potresti pubblicare quel tipo di richiesta. Se il sistema SE avesse un sistema di mailing person-to-person, questo potrebbe essere un modo di reclutare, ma io sto riffing lì.

Dato che una revisione fuori banda di diverse migliaia di località richiederà un po 'di tempo, incoraggerò la pazienza nel processo.

In breve, devi solo trovare un altro sviluppatore che è disposto a eseguire la revisione.

    
risposta data 24.06.2012 - 18:12
fonte
1

Vorrei fare una prima pugnalata usando qualcosa come stylecop e fxcop o equivalenti per la tua lingua. Successivamente, è possibile documentare l'architettura e ottenere un feedback molto rapidamente. Finalmente potresti prendere alcuni fastidiosi frammenti o alcune classi e chiedere ad un dev di esaminarlo con te invece dell'intero codebase. A condizione che non abbiate modificato lo stile del codice, alcune classi dovrebbero fornire alcune informazioni sulla base del codice nel suo complesso.

    
risposta data 25.06.2012 - 00:07
fonte

Leggi altre domande sui tag