La legge di Hofstadter è l'osservazione che "Ci vuole sempre più tempo di quanto ti aspetti, anche quando prendi in considerazione la legge di Hofstadter". In altre parole, le stime di tempo per il completamento di qualsiasi cosa non sono sempre inferiori al tempo effettivo richiesto, anche quando il tempo assegnato viene aumentato per compensare la tendenza umana a sottostimarlo. La non specificità del riferimento (it) riflette che la legge è ampiamente applicabile in qualsiasi situazione in cui il compito è complesso. La legge di Hofstadter è spesso evocata nei contesti IT ed è particolarmente rilevante per la gestione del tempo, la produttività, la gestione dei progetti e lo sviluppo del software.
Douglas Hofstadter, scienziato cognitivo e autore, ha introdotto la legge nel suo libro del 1979 Gödel, Escher, Bach: An Eternal Golden Braid. Il sistema in discussione era il computer che giocava a scacchi, che era stato previsto per battere gli esseri umani entro 10 anni. Tuttavia, dieci anni dopo quella previsione, gli umani stavano ancora vincendo. Hoftstadter ha scritto che l'incapacità per le macchine di trionfare a quel tempo era "solo un ulteriore elemento di prova per la legge di Hofstadter piuttosto ricorsiva". (In effetti, è stato solo nel 1996 che il computer Deep Blue di IBM ha battuto il campione del mondo in carica Garry Kasparov.)
La legge di Hofstadter illustra un elemento di pregiudizio all'ottimismo, che porta le persone a sopravvalutare i vantaggi di alcuni sistemi proposti ea sottovalutare gli svantaggi, nonché il tempo necessario per il completamento. È anche strettamente correlato alla regola del novantanove proposta da Tom Cargill dei Bell Labs: Il primo 90 percento del codice rappresenta il primo 90 percento del tempo di sviluppo. Il restante 10 percento del codice rappresenta il restante 90 percento del tempo di sviluppo.
Guarda una presentazione sul motivo per cui tutto richiede più tempo di quanto pensi: