Donald Knuth

**Donald Ervin Knuth** (s. 10. tammikuuta 1938 Milwaukee, Wisconsin) on yhdysvaltalainen tietojenkäsittelyteoreetikko ja emeritusprofessori Stanfordin yliopistossa. Knuthin teos *[[The Art of Computer Programming]]* on yksi algoritmiikan perusteoksista ja nimetty vuosisadan kahdentoista parhaan monografian joukkoon *[[American Scientist]]* -lehden mukaan. Knuthia pidetään yhtenä algoritmianalyysin pääkehittäjistä. Hän on myös luonut TeX-julkaisujärjestelmän ja sen yhteydessä käytettävän Metafont-kirjasinjärjestelmän, ja muotoillut useita kirjasinlajeja, kuten TeX:n oletuskirjasinlajin Computer Modern. Knuth julkaisi Knuthin nuolinotaation vuonna 1976.

Opiskellessaan matematiikkaa hän totesi IBM 650:lle olevien esimerkkiohjelmien puutteet ja kirjoitti ne uudestaan sekä koulutukseen käytettävän oppikirjan. Sivuprojektina hän kehitti ohjelman koripallojoukkueen tilastoja varten. Kesälomalla hän kirjoitti ohjelmointikielten kääntäjiä ja ansaitsi enemmän kuin professorit.

Knuth suoritti alemman korkeakoulututkinnon matematiikasta Case Institute of Technologyssa ja tohtorin arvon California Institute of Technologyssa vuonna 1963. Vuonna 1968 hän sai Stanfordin yliopiston professuurin. Knuth voitti ensimmäisen Grace Murray Hopper -palkinnon 1971. Muita hänen saamiaan tunnustuksia ovat Turing-palkinto, Yhdysvaltain National Medal of Science -palkinto, IEEE John von Neumann -mitali ja Kioto-palkinto. Hän on Ranskan tiedeakatemian ja Royal Societyn jäsen.

Knuth jäi eläkkeelle opetustehtävistä 1992 kirjoittaakseen kirjasarjan *The Art of Computer Programming* loppuun. Tunnustuksena saavutuksista Knuth nimettiin 1990 ainutkertaisella arvonimellä Professor of the Art of Computer Programming, joka on sittemmin muutettu ohjelmointitaidon emeritusprofessuuriksi.

Knuth tunnetaan myös nörttihuumoristaan. Knuth maksaa 2,56 dollarin palkkion kirjoistaan löytyvistä virheistä (koska 256 senttiä on yksi heksadesimaalidollari). Hänen ohjelmiensa TeXin ja Metafontin versionumerot lähestyvät rajattomasti lukuja π ja e. 

Knuth lopetti sähköpostin käytön vuonna 1990 koska haluaa välttää häiriöitä. Knuthin itsensä mukaan hänen työnsä vaatii pitkää tutkimusta ja keskeytyksetöntä keskittymistä. Hän pyrkii oppimaan aiheesta tyhjentävästi ja sitten pureskelemaan asian muotoon, joka on ymmärrettävissä ihmisille, joilla ei ole aikaa vastaavaan tutkimiseen.

Knuthin ensimmäinen julkaistu artikkeli oli *The Potrzebie System of Weights and Measures* *[[Mad]]*-lehden kesäkuun 1957 numerossa.

## Knuthin kirjoituksia ja esityksiä
### Historian kirjoituksesta
Knuth on esittänyt puheessaan vuonna 2014 vetoomuksen, että tietojenkäsittelyn historiaa ei "tyhmennetä": tietojenkäsittelytieteen historian kirjoituksesta puuttuu teknistä sisältöä ja historian kirjoittajien pitäisi palata uralle kuten matematiikan historioitsijat ovat aina olleet. Knuthin mukaan hänen arvostamansa Martin Campbell-Kellyn vuoden 2007 artikkeli *The History of the History of Software* oli hänelle shokki: artikkeli oli pinnallinen ja täysin epätekninen.

### Ohjelmistojen patentoinnista
Knuth vastustaa triviaalien asioiden patentointia.
Knuthin mukaan algoritmit ovat luonnostaan matemaattisia asioita ja pitäisi olla yhtä lailla patentoimattomia kuin piin arvo, mutta epätriviaaleihin asioihin pitäisi olla oikeus lisensoida rajatuksi ajaksi salassapidon sijaan. Esimerkkinä Knuth esittää kysymyksen, onko vaikealla tavalla löydetty lukuarvo jotain luonnossa esiintyvää patentoimatonta vai onko siinä keksinnöllisyyttä.

## The Art of Computer Programming -kirjasarja
Knuth aloitti sarjan kirjoittamisen, koska saatavilla olevien julkaisujen taso ei ollut korkea ja useat julkaistut artikkelit olivat yksinkertaisesti väärässä. Knuth aloitti kirjoittamisen vuonna 1962, ja kolme ensimmäistä osaa julkaistiin vuosina 1968, 1969 ja 1973. *[[American Scientist]]* on lisännyt sarjan vuonna 2013 kirjajoukkoon, johon kuuluvat tiedettä muokanneet teokset. Sarjaa on painettu yli miljoona kappaletta vuoteen 2018 mennessä.

Asiat, jotka kuuluvat aiempiin osiin mutta ei ollut vielä keksitty kirjaa kirjoitettaessa julkaistaan *vaiheosina*, joista ensimmäinen on *Volume 1 Fascicle 1*.

### Julkaistuja
Julkaistut osat (uusien painoksien tiedot): 

* *Volume 1: Fundamental Algorithms*, 1997. 
* *Volume 1 Fascicle 1, MMIX: A RISC Computer for the New Millennium*, 2005. 
* *Volume 2: Seminumerical Algorithms*, 1997. 
* *Volume 3: Sorting and Searching*, 1998. 
* *Volume 4A: Combinatorial Algorithms, Part 1*, 2011. 
* *Volume 4B: Combinatorial Algorithms, Part 2*, 2023. 

### Ennakkojulkaistut vaiheet
Tietyt osat tulevista kirjoista on julkaistu ennakkoon beta-versioina. Osat on julkaistu ennen 4A- ja 4B-osien julkaisua, jotta niihin saadaan palautetta.
* *Volume 4 Fascicle 0, Introduction to Combinatorial Algorithms and Boolean Functions*, 2008. 
* *Volume 4 Fascicle 1, Bitwise Tricks & Techniques; Binary Decision Diagrams*, 2009. 
* *Volume 4 Fascicle 2, Generating All Tuples and Permutations*, 2005. 
* *Volume 4 Fascicle 3, Generating All Combinations and Partitions*, 2005. 
* *Volume 4 Fascicle 4, Generating All Trees; History of Combinatorial Generation*, 2006. 
* *Volume 4 Fascicle 5, Mathematical Preliminaries Redux; Introduction to Backtracking; Dancing Links*, 2019. 
* *Volume 4 Fascicle 6, Satisfiability*, 2015. 

### Suunnitteilla
Suunnitellut osat: 
* *Volume 4C: Combinatorial Algorithms, Part 3* (sekä muut osat, valmisteilla)
* *Volume 5: Syntaxic Algorithms* (valmisteilla, ennakoitu valmistuminen vuonna 2030)
* *Volume 6: The Theory of Context-Free Languages*
* *Volume 7: Compiler Techniques*

## Lähteet

## Aiheesta muualla

*Knuthin kotisivu . 
*