Comunicare la gravità

databaseMi serve una mano, e questo è un post tecnico. Se non sai cosa sia un database e la differenza che passa tra un campo testo e un campo data saltalo pure, io ti ho avvisato 🙂

Come ho scritto tempo addietro c’è un personaggio in ufficio che ha gestito un database abbastanza grosso usando campi varchar formattati per le date, invece di normali campi data; il problema minore, è noto, è che un campo testo accetta qualsiasi carattere, quindi anche un 39 Ottembraio 1568 o un 12/98-123, un campo data accetta solo date valide. Nonostante ci siano delle maschere di input per limitare i danni, un 31 febbraio è sempre possibile. L’altro problema è che non si possono usare le funzioni di manipolazione delle date, tipo “estrai il mese”, “formatta l’anno in questo modo” e il semplice “ordina le date”. No, bisogna scrivere decine di righe di codice per ricomporre le date in forma umana e poi lavorarci.

Ora, finché ero l’ultimo arrivato e non ci capivo niente potevo anche starmene (in fondo copiavo il codice degli altri, ma per i “miei” siti ci sono arrivato subito da solo, a usare i campi data, non è che ci voglia uno scienziato!), finché lo si usava in pochi anche; ma oggi il bubbone è scoppiato pesantemente, e io mi sono rotto di coprire questo scempio.

Tutto questo preambolo non perché mi serve una mano con la conversione, ma perché prima o poi qualcuno dovrà far capire ai miei superiori che in quel DB c’è un problema, un problema grosso! E siccome se dicessi “HEY! c’è un campo data formattato come testo” – cioè una frase che farebbe inorridire qualsiasi programmatore/db admin/esperto qualsiasi di informatica – i miei capi mi direbbero “e quindi?” con fare interrogativo, mi serve trovare un esempio per fargli capire a pieno la gravità della cosa. qualcosa che inizi con “è come se…“, meglio se non nel campo informatico.

Io è tutto il giorno che ci penso, ma non mi viene niente.