Ohjelmoija on kooditaiteilija
Voiko ohjelmointi olla taidetta? Tätä kysymystä ei aivan joka päivä
tule miettineeksi. Asiasta on kuitenkin käyty keskustelua jo
70-luvulta lähtien, jolloin mm. Turing-palkittu ohjelmointiguru Donald
E. Knuth esitti oman
näkemyksensä.
Englannin kielen sana "art", jota Knuth käyttää, on suomenkielistä
vastinettaan "taide" monisyisempi: sen voi ymmärtää myös
"taitona". Knuthin kysymys on silti mielenkiintoinen suomeksikin --
vielä kolmenkymmenen vuoden jälkeen.
Näin Knuth ylistää alaansa: "Kun kirjoitamme ohjelmaa, se voi olla
kuin runon kirjoittamista tai kappaleen säveltämistä. Ohjelmointi
voi tuottaa niin älyllistä kuin emotionaalista tyydytystä."
"Ohjelmointi on taidetta, koska se edellyttää taitoa ja nokkeluutta,
ja erityisesti koska se tuottaa kauniita objekteja", Knuth
kiteyttää. Kukaan ei kieltänekään, että ohjelmointi on luovaa
ongelmanratkaisua, mutta mistä kauneudesta Knuth puhuu?
Kun asiaa tarkastelee prosessin sijaan lopputuloksen kannalta, voi
alkuun esittää kysymyksen: millainen on hyvä ohjelma?
Hyvä ohjelma ensinnäkin toimii oikein. Se on myös helposti
muokattavissa, helppokäyttöinen, tehokas ja luettava. Vaan kun nämä
kriteerit täyttyvät, eikö ohjelma silloin oikealle katsojalle ole
myös kaunis, oikea taidonnäyte?
"Mestarillinen ohjelmoija tekee teoksestaan lisäksi miellyttävän lukea
-- tai kehittää siihen jonkin muun tunnevaikutuksen, joka saa hänen
yleisönsä haukkomaan henkeään", hehkuttaa Taiteellisen ohjelmoinnin
ystävien seuran Toys:n
puheenjohtaja Antti-Juhani Kaijanaho.
Koodin kauneus voi olla arvo myös ohjelmointiteollisuudessa:
ohjelmoijan tai ohjelmoijaryhmän näkökulma omaan työhönsä voi olla
ratkaiseva niin viihtyvyyden, tyytyväisyyden kuin tuottavuuden
kannalta.
Knuth painottaakin persoonallisen tyylin ja kauneuden kokemuksen
tärkeyttä ohjelmoinnissa. Tärkeintä on, että ohjelmoija pystyy
nauttimaan siitä, mitä tekee. Koodinikkaroinnin näkeminen luomistyönä
ja ilmaisun välineenä voi auttaa tässä.
Markus Koljonen