Per prima cosa mi permetta di coniare un termine:
code-tending: controllo del codice al mattino, quindi revisione silenziosa di tutte le modifiche apportate dagli altri sviluppatori il giorno precedente file per file (in particolare i file di codice sviluppati originariamente) e correzione di formattazione, logica, ridenominazione delle variabili, refactoring metodi lunghi, ecc., quindi eseguendo il commit delle modifiche al VCS.
Questa pratica tende ad avere alcuni pro e contro che ho identificato:
- Pro : la qualità / leggibilità / coerenza del codice viene spesso mantenuta
- Pro : alcuni bug sono stati corretti perché l'altro sviluppatore non conosceva troppo il codice originale.
- Contro : è spesso una perdita di tempo dello sviluppatore tendente agli obiettivi.
- Contro : Occasionalmente introduce bug che causano rabbia strabiliante da parte degli sviluppatori che pensavano di aver scritto un codice privo di bug il giorno prima.
- Contro : altri sviluppatori vengono aggravati da un eccessivo nitpicking e iniziano a non gradire il contributo al codice del tender.
Disclaimer: Ad essere onesti, in realtà non sono un responsabile dello sviluppo, sono lo sviluppatore che sta effettivamente facendo "tendenzialmente l'obiettivo".
A mia difesa, penso di farlo per una buona ragione (per mantenere la nostra base di codice estremamente grande una macchina ben oliata), ma sono molto preoccupato che stia creando anche un'atmosfera negativa. Sono anche decisamente preoccupato che il mio manager dovrà affrontare il problema.
Quindi, se tu fossi il manager, come affronteresti questo problema?
AGGIORNAMENTO: Non intendo che questo sia troppo localizzato, ma alcuni hanno chiesto, quindi forse un po 'di sfondo sarà illuminante. Mi è stato assegnato un progetto gigante (200K LoC) tre anni fa, e solo recentemente (1 anno fa) sono stati aggiunti altri sviluppatori al progetto, alcuni dei quali non hanno familiarità con l'architettura, altri che stanno ancora imparando la lingua (C #). In genere devo rispondere per la stabilità complessiva del prodotto e sono particolarmente nervoso quando vengono apportate sorprendentemente modifiche alle parti architettoniche fondamentali della base di codice. Questa abitudine è nata perché all'inizio ero ottimista riguardo ai contributi di altri sviluppatori, ma hanno commesso troppi errori che hanno causato seri problemi che non sarebbero stati scoperti fino a settimane dopo, in cui il dito sarebbe stato puntato su di me per scrivere codice instabile. Spesso questi "