Come un programmatore organizza i suoi impegni

Per questo articolo si ringrazia Attilio (Artgatt)

Come tutti i programmatori sapranno, una fase molto importante nello sviluppo e nell’analisi di qualsiasi progetto stà nel mettere nero su bianco le informazioni che si hanno, le richieste del cliente, le proprie idee, le possibili soluzioni ad eventuali problematiche ecc, in modo da poter reperire velocemente le informazioni e lavorare più serenamente, efficacemente e velocemente al progetto.

Capita spesso di doversi segnare anche i progressi svolti. Per esempio, il Venerdì ci si potrebbe appuntare di una modifica che il Lunedì successivo deve essere svolta con la massima priorità, oppure l’inverso, e cioè ricordarsi che una particolare modifica è già stata svolta in un periodo precedente ecc. Insomma, per i non addetti ai lavori sarà difficile da capire, ma gli informatici, e in particolare i programmatori, hanno grande bisogno di scriversi le cose.

Da qui nasce il problema alla base di questo articolo: esistono centinaia di modi per poter memorizzare delle informazioni (carta e penna, mandare una email a se stessi, creare un file di testo sul desktop, adoperare software di note ecc), ma ognuno di essi ha dei pregi e dei difetti (per lo più quasi solo difetti :p). La mia domanda è, ed è rivolta non solo ai miei colleghi programmatori, come vi siete organizzati per far fronte al vostro lavoro? Avete trovato una soluzione a qualcuna delle seguenti problematiche?

1) Organizzare in modo preciso ed ordinato tutti i files inerenti un progetto (loghi, documentazione, icone ecc).
2) Tenere traccia di tutte le richieste che arrivano da parte del capo o del cliente e tenere traccia di tutte le modifiche svolte al progetto, sincronizzando queste informazioni su tutti i pc che si usano per lo sviluppo.
3) Avere sempre a disposizione tutte le comunicazioni intercorse tra lo sviluppatore e il progettista in modo da poter sempre contare su una prova scritta quando, come per miracolo, una modifica richiesta fortemente dal cliente, diventa una interpretazione arbitraria del problema da parte dello sviluppatore?
4) Condividere tasks e attività svolte/da svolgere con il proprio team di lavoro?
5) Varie ed eventuali…

Io per adesso mi sono organizzato in un modo abbastanza spartano, e ho una gran voglia di migliorarmi sotto questo punto di vista: Su un hard disk secondario (di cui ovviamente viene fatto il backup quotidianamente) ho organizzato tutta una serie di cartelle e sottocartelle dove conservo tutti i documenti legati ad un progetto. Ho espressamente richiesto che tutte le comunicazioni (richieste di modifiche, manutenzione ed assistenza, ecc) passassero per via email. In particolare, archivio in Windows Mail ogni richiesta che mi viene fatta, organizzata in cartelle tematiche e ne lascio copia sul server per poterla consultare da qualsiasi postazione.

Per quanto riguarda lo stato delle mie attività e dei tasks, ho un documento Word con al suo interno una struttura tabellare in cui, per ogni riga, descrivo il tipo di attività, la data di svolgimento, lo stato dei lavori (indicato in Verde, Giallo e Rosso per “Lavoro Concluso”, “In Svolgimento” e “In Attesa”), il nome del progetto di appartenenza del task e un ID univoco che incremento ogni volta per poter identificare il task in questione.

Con questo metodo, tuttosommato, riesco a lavorare abbastanza bene, ma come dicevo sopra, è molto rozzo e spartano, anche perchè condividere queste informazioni con i colleghi del team di sviluppo è una impresa.

Mi piacerebbe quindi trovare un software che riesca, innanzitutto a tener traccia di tutte le problematiche espresse precedentemente, poi che riesca a sincronizzare le informazioni in tutto il team di sviluppo, e che magari faccia copia delle informazioni online in modo da potervi accedere anche da postazioni esterne all’area di lavoro. Ho più volte pensato di progettare da solo un sistema del genere, ma la scarsità di tempo e, spesso, la pigrizia di alcuni colleghi a tener ordinato il proprio lavoro, mi hanno sempre scoraggiato nel tentare l’impresa. Sono a conoscenza di diversi software che, con un po di fantasia, potrebbero fare al caso nostro (di seguito un breve elenco):

– Microsoft Exchange
– EssentialPIM
– AtNotes

Forse di questi, solo Exchange potrebbe, anzi, sicuramente sarebbe un’ottima soluzione ai problemi, ma chi lo conosce, sa che i suoi costi di licenza sono proibitivi.

Rinnovo quindi la domanda: voi colleghi sviluppatori, come vi organizzate? Come fate a non impazzire nell’overload di informazioni e richieste che siamo costretti a subire ogni giorno? Rispondete numerosi nei commenti, e chi lo sa che unendo gli ingegni, non si trovi una soluzione pratica e comoda per tutti!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *