Spauracchio di sviluppatori e i tester di programmi e sistemi informatici, terribile imprevisto degli utenti digitali: è il fantomatico bug, un errore che rovina l’esperienza e costringe a rifare un sacco di lavoro.
Come tanti altri termini inglesi, bug è diventato di uso comune anche nell’informatica italiana, persino nelle sue declinazioni (un programma buggato). Ma perché si chiama proprio così? Sappiate che le origini di questa parola sono davvero sorprendenti.
Che cos’è un bug?
Nell’ambito informatico, il bug è un errore nel funzionamento di un software. Deriva da un’anomalia non calcolata, ed è in grado di generare un comportamento inatteso.
Tale comportamento è la maggior parte delle volte errato, o comunque molto diverso da quello che i programmatori avevano intenzione di creare.
Il palesamento di un bug deriva, basilarmente, da un errore nella scrittura di un codice. Quando il programmatore prova a testare tale codice, questo assume il comportamento non voluto.
Per giungere all’intenzione originale bisognerà correggere il bug. Ma nel farlo, molto dipende dal tipo di errore che l’ha causato.
Gli errori di sintassi, cioè le parole e i simboli scritti male nel codice, sono i più innocui: i software li individuano e li correggono in modo automatico e veloce. Gli errori di runtime invece causano bug, ma non sono errori nel codice: si tratta di conflitti tra software, memorie o permessi. Il programmatore deve risolvere il conflitto e non il codice.
Quelli che comunemente chiamiamo bug sono di solito gli errori di logica: qui lo sbaglio non è in una parola, ma in uno dei tanti incroci di funzioni presenti nel codice. Sono questi i bug più tosti da individuare e rimuovere, in quanto richiedono conoscenza e attenzione particolari, e spesso revisioni complete e ore di lavoro.
La diffusione del bug: da Edison alla falena di Hopper
Torniamo alla curiosità linguistica: perché un errore di questo genere si chiama proprio bug, cioè insetto? Per scoprirlo, dobbiamo tornare un bel po’ indietro.
A quanto pare, il termine bug era già di uso comune ben prima dell’avvento dei dispositivi informatici! C’è bisogno di ricorrere a un’era di tutt’altra tecnologia, in quanto nel 1878 già scriveva così Thomas Edison, in una lettera:
È stato così in tutte le mie invenzioni. Il primo passo è un’intuizione, e arriva come uno scoppio, poi crescono le difficoltà – questa parte non va più ed è allora che i “Bug” (così vengono chiamati questi piccoli guasti e difficoltà) si manifestano, e così sono richiesti mesi di intensa osservazione, studio e lavoro…
Insomma, due secoli fa la parola era già in uso e con un significato identico a quello odierno, sebbene applicato in un mondo diverso. Tant’è che si ritrova negli anni ’20, in una striscia a fumetti in cui un cacciatore di bug viene equiparato a un riparatore; o ancora negli anni 30, quando il primo flipper meccanico veniva pubblicizzato come privo di bug.
Nonostante l’utilizzo il termine bug sia piuttosto remoto, a molti piace pensare che in ambito informatico il primo bug risalga al 9 settembre del 1947. Un Team della Harvard University capitanato dalla tenente Grace Hopper stava lavorando al Mark II, uno dei primissimi computer della storia. I ricercatori rilevarono che la macchina stava avendo dei malfunzionamenti, ritrovandone la causa in… una falena infiltratasi all’interno della macchina.
Insomma, il primo presunto bug informatico della storia era effettivamente un bug (insetto)!
La Hopper incollò la falena sul registro del computer, annotando così:
«Primo caso effettivo del ritrovamento di un bug.»
E l’episodio passò alla storia.
Quali sono le vere origini del termine informatico “bug”?
Nonostante il simpatico aneddoto, non fu realmente questo a dare il via all’utilizzo del termine bug. L’episodio della falena contribuì alla sua diffusione definitiva, ma l’etimologia della parola bug porta a conclusioni diverse.
La verità è che la nascita del termine bug è antica e incerta e per averne un’idea sommaria dobbiamo viaggiare ancor più nel passato.
Scopriamo che è tutto un po’ un inganno: il termine bug per definire un errore non viene da bug in quanto insetto, bensì in quanto fastidio, problema. In inglese, il verbo to bug vuol dire (ancora oggi) infastidire.
La parola inglese bug, infatti, viene dall’arcaico bugge. Con questo termine si indicavano tra gli altri mostri, folletti e creature misteriose che causavano problemi e fastidi. È anche simile a bigge (forte, potente), da cui deriva l’odierno big (grande).
Il percorso linguistico non è noto, ma può darsi che, nei secoli, il misterioso fastidio associato ai mostriciattoli della foresta sia stato comparato al fastidio causato da qualcosa che non va come previsto, nel lavoro manuale o nella creazione di oggetti.
Le credenze tra il reale e il fantastico potrebbero esser state così forti che la parola è passata da un settore all’altro, fino a giungere alla meccanica, all’elettronica e infine all’informatica. Incredibile quanto possa viaggiare una lingua!