in Funny

I programmatori lavorano in un posto tranquillo?

Ecco il problema. Sappiamo tutti che i lavoratori intellettuali lavorano meglio se vanno a “regime”, se entrano “nella zona”, cioè sono pienamente concentrati sul loro lavoro e totalmente estraniati dall’ambiente che li circonda. Perdono la cognizione del tempo e producono grandi cose grazie a una concentrazione assoluta. È in questi momenti che producono davvero. Scrittori, programmatori, scienziati e anche giocatori di basket sanno bene cosa vuol dire essere nella zona.

Il problema è che entrare “nella zona” non è facile. Se cerchi di misurarlo, sembra che ci vogliano in media 15 minuti per iniziare a lavorare al massimo della produttività. A volte, se sei stanco o hai già fatto molto lavoro creativo quel giorno, proprio non riesci a entrare nella zona e passi il resto della giornata lavorativa a cazzeggiare, leggendo il web, giocando a Tetris.

L’altro problema è che è molto facile essere scagliati fuori dalla zona. Rumore, telefonate, la pausa pranzo, dover guidare 5 minuti per andare a prendere un caffè da Starbucks, interruzioni da parte di colleghi – soprattutto interruzioni da parte dei colleghi – sono tutte cose che ti scagliano fuori dalla zona. Se un collega ti chiede qualcosa interrompendoti per 1 minuto, ma così facendo ti butta fuori dalla zona così tanto che ti ci vuole mezz’ora per ritornare produttivo, la tua produttività complessiva ha seri problemi. Se lavori in un ambiente rumoroso tipo cortile come quello che piace tanto alle dotcom caffeinate, con esperti di marketing che urlano al telefono accanto ai programmatori, la produttività crollerà perché i lavoratori intellettuali vengono interrotti in continuazione e non entrano mai nella zona.

Per i programmatori, questo aspetto è particolarmente delicato. La produttività si basa sul poter palleggiare tutti insieme nella memoria a breve termine un sacco di piccoli dettagli. Basta una qualsiasi interruzione e questi dettagli crollano rovinosamente. Quando riprendi a lavorare non te ne ricordi più neanche uno (come ad esempio i nomi delle variabili locali che stavi usando, o a che punto eri dell’implementazione di quell’algoritmo di ricerca) e devi andarti a riscoprire tutte queste cose, il che ti rallenta moltissimo prima che tu riesca a tornare a regime.

Un po’ di conti. Mettiamo il caso che (come sembrano suggerire gli esperimenti) se interrompiamo un programmatore, anche solo per un minuto, stiamo in realtà bruciando 15 minuti di produttività. Mettiamo due programmatori, Jeff e Mutt, nei tipici cubicoli aperti uno accanto all’altro, stile fattoria per l’ingrasso dei vitelli. Mutt non si ricorda il nome della versione Unicode della funzione strcpy. Potrebbe andarsela a cercare (30 secondi) oppure chiedere a Jeff (15 secondi). Visto che sta seduto proprio accanto a Jeff, chiede a Jeff. Jeff viene distratto e perde 15 minuti di produttività (per risparmiare a Mutt 15 secondi).

Adesso spostiamoli in uffici separati con pareti e porte. Adesso, quando Mutt non si ricorda il nome di quella funzione potrebbe andarsela a cercare (sempre 30 secondi) o potrebbe chiedere a Jeff, il che richede adesso 45 secondi e significa doversi alzare in piedi (non un compito facile considerando la forma fisica tipica dei programmatori!). Allora se la va a cercare. Così adesso Mutt perde 30 secondi di produttività, ma risparmiamo 15 minuti a Jeff. Ahhh!

Continua la lettura su Joel on software: TheJoelTest.

 

  • Articoli Correlati per Tag :