Let's Do It Romania - 24 Septembrie 2011



   

A făcut din programare o artă

   

Mircea Sârbu


Ştiinţă este ceea ce înţelegem suficient de bine pentru a explica unui calculator. Tot restul este artă. - Donald Knuth

Anecdotica ne învaţă că dacă cineva ne pune o întrebare dificilă despre algoritmi sau structuri de date, cel mai prudent răspuns este "cred că găseşti asta în Knuth". Fără îndoială că Arta programării calculatoarelor este cea mai faimoasă, cea mai citită şi cea mai citată lucrare în domeniul informaticii. Însă faima autorului ei nu se datorează exclusiv cărţii.

Donald Ervin Knuth s-a născut în 1938 într-o familie de origine germană din Milwaukee. Tatăl său era profesor la o şcoală luterană iar duminicile era organistul bisericii. Din familie şi din şcoală s-a ales micul Donald cu o pasiune pentru muzică ce avea s-o păstreze toată viaţa. Se speculează că accentul pe care şcoala luterană îl punea pe gramatică i-a indus şi pasiunea pentru structurile lingvistice clare şi că aceasta l-ar fi condus spre domeniul programării calculatoarelor... Greu de probat, mai ales în condiţiile în care Knuth a fost mereu nehotărât în privinţa carierei pe care avea s-o urmeze - nehotărâre care s-a dovedit benefică, pentru că avea să urmeze de fapt mai multe cariere.

Cert este că primul său talent dovedit a fost în domeniul cuvintelor încrucişate, pe care le publica în revista şcolii. Tot în perioada şcolii secundare s-a petrecut un episod interesant, pe care multe biografii îl amintesc. Un cofetar pe nume Ziegler a lansat, în scopuri publicitare, un concurs: cine găseşte cele mai multe cuvinte formate din literele frazei "Ziegler's Giant Bar". Donald s-a prefăcut bolnav şi în două săptămâni a găsit nu mai puţin de 4500 de cuvinte. Juriul nu găsise decât 2500, deşi folosise şi apostroful. Ca premiu, şcoala luterană a primit un televizor.

În liceu, Knuth a fost mai degrabă interesat de muzică decât de ştiinţe. Cânta la saxofon şi tubă, era interesat de compoziţie şi intenţiona să-şi continue studiile în domeniul muzicii. Dar, ca de obicei, nu era hotărât iar profesorii erau convinşi că putea urma orice carieră şi-ar fi propus. Deşi dedica mult timp muzicii, nu a neglijat nici celelalte materii şi a terminat cu cea mai mare medie din istoria liceului.

Până la urmă a acceptat o bursă pentru a studia fizica la Case Institute of Technology din Cleveland. Destinul a pus însă umărul ca să-l îndrepte pa cale cea bună: într-o zi a pierdut autobuzul care trebuia să ducă orchestra colegiului - din care Knuth, desigur, făcea parte - aşa că s-a hotărât să-şi petreacă timpul rezolvând o problemă dificilă de matematică propusă de unul dintre profesori. Rezolvarea i-a adus nota maximă la matematicii şi revelaţia că acesta este domeniul care i se potriveşte.

Primul contact cu calculatoarele l-a avut tot în colegiu, când a citit manualul unui IBM 650 ca să vadă cum se scriu programele. Aici a găsit o mulţime de exemple de programe pe care şi-a dat seama că le-ar fi putut face mai bine. "Se pare că am ceva talent" - şi-a spus. Şi a dovedit-o scriind un program care analiza rezultatele echipei de baschet a colegiului, program remarcat chiar şi de IBM, care a folosit o poză la lui Knuth într-o reclamă.

A absolvit colegiul în 1960, obţinând totodată - în mod excepţional - şi titlul de master. Trei ani mai târziu avea să obţină titlul de doctor în matematici la California Institute of Tehnology, însă în aceşti ani nu a scris doar lucrări de matematică. Expertiza sa în calculatoare s-a dovedit valoroasă, aşa că încă de la începutul studiilor doctorale a lucrat şi pe post de consultant în dezvoltare software la Borroughs Corporation. În 1962 editura Addison-Wesley i-a cerut să scrie o lucrare despre compilatoare. Acest proiect avea să-i schimbe viaţa. Lucrarea s-a întins dincolo de tematica iniţială şi avea să devină legendara The Art of Computer Programming.

Interesul lui Knuth pentru tipografia digitală avea să vină din nevoia practică de a scrie texte de matematică. A conceput sistemul TeX, care este şi astăzi inegalabil în editarea textelor ştiinţifice, dar a mers şi mai departe cu METAFONT, un sistem software pentru descrierea corpurilor de literă. Aceste preocupări aveau să-l pună contact cu arta caligrafiei şi cu renumitul caligraf Hermann Zapf, cu care avea să colaboreze la realizare cărţii 3:16 - Bible Texts Illuminated, a cărei poveste o relatează într-o altă carte - Things a Computer Scientist Rarely Talks About - a cărei poveste am relatat-o la într-un articol din Net Report (vezi www.intraweb.ro/txt/Articole/Portrete/Knuth/show).

Din 1968 este profesor la Stanford. În 1974 a primit premiul Turing. Acum cântă la orgă şi scrie volumul 4.


 

(Publicat în PC Magazine - mai 2004)

 

Copyright © 2004 Agora Media

Creative Commons License
This work is licensed under a Creative Commons License.