Ogni programmatore, una volta ogni tanto, ha una giornata perfetta. Ti svegli 5 minuti prima che la sveglia suoni, sentendoti bene. La colazione è fatta e sul bancone, insieme a caffè fresco, così puoi prendere qualcosa e uscire dalla porta. Durante la tua permuta colpisci ogni semaforo verde e il traffico sembra essere particolarmente leggero. Contemplando il giorno prima di te, sei in grado di comprendere appieno il design e le conseguenze del compito che ti aspetta, che è stato ben pianificato con requisiti rigidi.
Ti metti al lavoro e scopri che non hai email importanti, nessun messaggio vocale in attesa e che i tuoi colleghi sono fuori o in riunione a cui non devi partecipare. Spegni il tuo editore e sei immediatamente nella zona, puoi sentire la struttura del codice e vedere le tue strutture dati e gli algoritmi adattarsi in un insieme bello e coeso. I pensieri passano attraverso le mani alla tastiera, inserendo un codice perfettamente formato che è elegante, manutenibile e senza errori.
Durante il giorno lavori senza interruzioni, l'ufficio è tranquillo e sei così concentrato che non sei mai tentato di passare il tempo a leggere notizie, blog, ecc. Quando compili ed esegui i tuoi test, trova che tutto funzioni senza intoppi, ovviamente lo sapevi e alla fine della giornata ti impegni senza conflitti. Guardando l'orologio mentre ti allontani ti rendi conto di averlo messo in 12 ore e sembrava una breve sessione di codifica di 20 minuti.
Quel giorno, quel giorno perfetto, è ciò che assumiamo avremo ogni volta che dobbiamo stimare qualcosa.