Sain juuri valmiiksi artikkelini Psychology of Computer Programming. Siinä ei ole kovin paljon omia ideoitani ja artikkelin johdanto-osuus saattaa joistakin olla liian pitkä ja eksyä liikaa aiheen ulkopuolelle.
Päätin nyt kuitenkin toteuttaa asian näin sillä perusteella, että lavertelen mieluummin liikaa kuin liian vähän. Psykologia ja mielen filosofia ovat kiinnostavia aiheita ja saattaa olla hyvä tuoda esille niiden keskeistä problematiikkaa. Taustalla on siis minulla myös halu innostaa loogisesti ajattelevia ohjelmoijia tutustumaan ohjelmoinnin lisäksi keskeisiin filosofisiin ongelmiin, sillä heidän analyyttinen ja johdonmukainen tapansa ajatella voi mahdollisesti tuottaa hyviä tuloksia.
Analyyttisen filosofian koulukunnalla ja tietokoneohjelmoinnilla on itse asiassa erittäin paljon yhteistä metodologiaa. Ne ovat siinä mielessä lähellä toisiaan.
Oli miten oli, artikkelin kantavana teemana on lyhyesti esitellä Gerald Weinbergin uraauurtavia psykologisia tuloksia koskien ohjelmoinnin psykologiaa. Weinberg ilmeisesti muuten menehtyi tänä vuonna elokuussa mikäli oikein muistan. Lisään vielä sen verran tähän, että pitkähkön johdatusosion jaarittelun tarkoitus on toimia jonkinlaisena perusteluna sille miksi psykologia on tärkeää ohjelmoinnin kannalta, mutta toki se on sitä myös yleisellä tasolla. Puolustan siis artikkelin rakennetta sillä, että jos asiaa ei ole ajatellut aiemmin, niin teeman tärkeys ei välttämättä ole kaikille itsestäänselvä.
Tätä Psychology of Computer Programming artikkelia pidän äärimmäisen tärkeänä julkaisuna lähinnä sen takia, että siinä esitellään egoless programming metodologia. En ole keksinyt sitä itse, vaan kyseessä on vanha periaate, jonka Weinberg toi esille kirjassaan luultavasti ihan ensimmäisten joukossa. Myöskään Weinberg ei ole keksinyt egoless programmingia, vaan hän kertoo kirjassaan sitä käytetyn jo tietokoneaikojen alusta lähtien.
Loistavana esimerkkinä hän mainitsee John von Neumannin, joka oli eräs suurimmista 1900-luvulla eläneistä neroista. Weinberg paljastaa, että suunnattomista ajattelunlahjoistaan ja tieteellisistä saavutuksistaan huolimatta von Neumann oli jatkuvasti kriittinen omia ohjelmiaan kohtaan ja piti itseään kehnona ohjelmoijana. Tästä syystä hän kuulemma jatkuvasti tunki ohjelmakoodejaan muille luettavaksi, jotta niistä saataisiin eliminoitua virheet ja tyylillisesti kömpelöt ratkaisut.
Uskoakseni voimme ottaa mallia tuosta lähestymistavasta ja seurata hänen jalanjälkiään suhtautumisessamme ohjelmointiin.
Seuraavaksi toivoisin voivani keskittyä enemmän raakaan koodipuoleen ja järjestelmäylläpitoon, mutta en ole vielä päättänyt mitä projektia alan toteuttaa seuraavaksi.