Il "virus" rand() in Word

Indagine iniziale: 1 maggio 2002. Ultimo aggiornamento: 1 maggio 2002.

Indagini antibufala consultate dal 7/11/2003:


Il testo della catena di sant'Antonio

Con le solite varianti tipiche delle catene di sant'Antonio, il senso è grosso modo questo:

Scrivi =rand(200,99) all'inizio di un nuovo documento Word e vai a capo: compare una frase misteriosa! E' un virus!!

Perché NON è una bufala

In effetti, immettendo in Word 97 e Word 2000 una determinata parola ("rand" seguita da numeri tra parentesi) il programma prende vita e digita spontaneamente una frase ripetuta, sulla falsariga inquietante del celebre "Il mattino ha l'oro in bocca. Il mattino ha l'oro in bocca. Il mattino ha l'oro in bocca..." del film Shining.

La segnalazione è dunque autentica e valida: queste due versioni di Word e, come mi segnala un lettore (rossetti), anche Word X per Mac OS X, si comportano effettivamente come descritto, ma non si tratta di possessioni demoniache o di virus: è un "easter egg" (letteralmente "uovo di Pasqua"), ossia una di quelle sorpresine che i programmatori nascondono spesso nelle proprie opere (i pignoli diano un'occhiata alle note qui sotto prima di criticare questo mio uso del termine easter egg).

In questo caso specifico, la sorpresina è probabilmente nata per generare automaticamente del testo durante il collaudo del programma ed è rimasta perché in effetti è utile per evitare di digitare testo di prova quando, come capita spesso, si vuole vedere che aspetto ha un'impaginazione prima che il testo definitivo sia disponibile.

In quanto tale, l'easter egg è assolutamente innocuo e non è assolutamente sintomo di infezione da virus informatici. Se volete saperne di più, ci sono interi siti dedicati all'argomento, come Eeggs (http://www.eeggs.com/) e Eggcentral (http://www.eggscentral.com).

Va detto comunque che la catena di sant'Antonio sbaglia quando dice che occorre digitare la parola in un documento nuovo. In realtà il generatore di frasi funziona in qualsiasi punto di un documento anche già iniziato. Inoltre sbaglia quando specifica dei valori tra parentesi: otterrete questa "magia" con qualsiasi numero e anche senza numeri.

La procedura esatta è questa: in un documento di Word 97/2000 o Word X per Mac OS X, digitate

=rand()

e premete Invio. Otterrete una frase ripetuta varie volte (in Word 2000 inglese è "The quick brown fox jumps over the lazy dog.").

Il numero di ripetizioni è regolabile immettendo coppie di numeri fra le parentesi: il primo specifica il numero di paragrafi, il secondo specifica il numero di frasi per paragrafo. Ad esempio,

=rand(10,1)

genera dieci paragrafi contenenti una singola ripetizione della frase.

Secondo le segnalazioni dei lettori, la frase esatta in Word 2000 italiano è "Cantami o Diva del pelide Achille l'ira funesta" (talvolta troncata): in altre parole, l'inizio dell'Iliade. In spagnolo, stando a quello che ho trovato in Rete, è invece "El veloz murciélago hindú comía feliz cardillo y kiwi". Le frasi hanno in genere un significato abbastanza stravagante, ma c'è un motivo: sono vecchi espedienti dei tipografi, concepiti per contenere tutte le lettere dell'alfabeto (anche se quella italiana non sembra aderire a questa regola) e generare testo di prova dall'aspetto realistico (migliore del banale "asdfjk asdfkg dfdasfasds" che si genera di solito a mano).

La documentazione ufficiale Microsoft di questa funzione è disponibile in inglese presso http://support.microsoft.com/support/kb/articles/Q157/3/73.asp (How to Insert Sample Text into a Document (Q157373)) per Word 97, presso http://support.microsoft.com/support/kb/articles/Q212/2/51.ASP (WD2000: How to Insert Sample Text into a Document (Q212251)) per Word 2000, e presso http://support.microsoft.com/support/kb/articles/Q180/6/85.ASP (WD2000: How to Insert Sample Text into a Document (Q212251)) per Word 98 Macintosh. Attenzione: alcuni browser (Opera 6, ad esempio) non riescono ad accedere a questa documentazione Microsoft e occorre usare Internet Explorer.

Note

Alcuni lettori molto meticolosi hanno commentato che in realtà non è corretto chiamare easter egg questa funzione, perché (come dice il lettore rodri) "per definizione tutto quel che è documentato dalla casa produttrice di un software non è possibile considerarlo un eegg. La funzione rand=() è considerata da molti un uovo di Pasqua perché non è riportata dai manuali stampati di Microsoft, ma ha perso la qualità di uovo nel momento in cui la stessa Microsoft ha riportato questa funzione nel suo sito internet."