Importante : non abbiamo alcun problema con la documentazione del codice sorgente . Questo appartiene al controllo periodico del codice ed è tenuto aggiornato. Il nostro problema è con la documentazione per gli sviluppatori (o, se preferisci, "esterna"), piccoli consigli da programmatore a programmatori che tendono ad essere scritti una volta, spesso lasciati indietro.
Usiamo un sistema simile a wiki per produrre documentazione per programmatori - articoli scritti da programmatori per programmatori che descrivono in modo un po 'più dettagliato come funziona un particolare pezzo di codice. Quelle pagine wiki di solito includono:
- motivazioni alla base delle decisioni di progettazione per parti dell'API (ad esempio; abbiamo fatto questa brutta cosa perché questa particolare libreria di terze parti vuole che le cose vengano fatte in questo modo, perché questa altra biblioteca ..., perché ...)
- spiegazione di come gestiamo particolari compiti comuni (ad esempio, visualizzare un popup banale, che deve fare riferimento a stili di applicazione appropriati, registrarsi nel componente del registro e implementare alcune interfacce per essere automaticamente "scansionato" da altri componenti)
- buone pratiche (soggettivo com'è, in realtà scriviamo queste cose)
- configurazione dell'ambiente, strumenti richiesti e sua configurazione
In generale, principalmente cose legate alla scrittura di codice che non si adattano alla normale documentazione del codice a causa delle sue dimensioni e della natura di post di blog / articolo.
Il problema
Per quanto riguarda l'introduzione di questo sistema sembrava una buona idea qualche mese fa, oggi sento che sta causando più problemi di quanti ne risolva. Per esempio:
- le persone fanno scrivere articoli ... ma una volta il codice modificato, aggiornamento wiki segue raramente
- molti articoli da grattare , scritti da qualcuno in fretta e lasciati così
- anche se la richiesta di articoli di solito proviene dal responsabile del progetto, non viene quasi mai verificata la correttezza / composizione - che a volte si traduce in una scarsa qualità
Il solito degrado. Il codice è cambiato, wiki rimane lo stesso. La prossima volta che qualcuno cerca informazioni, quello che trova di solito è un mucchio di cose obsolete e di bassa qualità - e si sta chiedendo cosa sta succedendo, se le cose che ha trovato sono accurate o (anche peggio) quali sono. E ciò che doveva aiutare, finisce per fare il contrario.
Al momento sembra che le persone siano consapevoli del problema, incluso il responsabile del progetto, ma a quanto pare nessuno sembra preoccupato di farci qualcosa (o ha cose più interessanti da fare).
Il mio pensiero iniziale era di buttare tutto nell'oblio (dopo che mi sono stato morso da "punte" obsolete poche volte di seguito), ma suppongo che potrebbe essere troppo estremo. Alcune informazioni sono degne di nota e possono essere lette a volte, ma il problema è sempre lo stesso: come gestisci la sua "attualità" ? È stato in qualche modo collegato al codice sorgente (quindi quando viene verificata la versione aggiornata del file, l'autore dell'articolo viene informato che potrebbe essere necessario rivedere il codice / articolo)? La persona designata "veglia" su di base ogni giorno? Fare pulizie regolari?