Malá noční úvaha nad programováním

Programování je zvláštní druh lidské činnosti. Leží totiž na pomezí mezi třemi disciplínami: vědou, inženýrstvím a uměním.

Věda je to ve chvíli, když vás problém donutí odsednout od počítače a přemýšlet. Když musíte vzít do ruky papír a tužku a vše si kreslit. Když vymyslíte vlastní geniální algoritmus na něco a pak na Googlu zjistíte, že jste právě vymysleli ten nejlepší, co je lidstvu známý. Když na zkoušce ze složitosti během hodiny sami odvodíte důkaz, který jste předtím na přednášce nechápali, a máte z toho radost celý den. Když si pro vlastní potěšení napíšete simulaci Turingova stroje v PHP. Když vám závorky v Lispu najednou nepřijdou jako zas tak strašná překážka bránící jeho zkoumání. Zkrátka když se vám programování zdá být po matematice druhou myšlenkově nejčistší činností na světě.

Inženýrství je to tehdy, když sepisujete požadavky, specifikace a odhadujete čas tvorby programu. Když při projektu postupujete podle přesné metodiky. Když chápete, že u programů jsou strávený čas, kvalita provedení a investované peníze spojenými nádobami. Když víte, že váš program není dokonalý, a chcete změřit, jak moc. Když pečlivě vkládáte chyby a requesty do bug-tracking systému a třídíte je podle priority. Když disciplinovaně píšete testy, komentáře a dodržujete v kódu pravidla, jejichž popis zabírá pět stran A4. Když vám paralela mezi stavěním budov a tvorbou programů nepřijde uhozená. Zkrátka když jste programování akceptovali jako normální obor lidské činnosti.

Umění je to tehdy, když řeknete "tenhle program je elegantní" nebo "tohle je čistý kód". Když máte z programu estetický požitek. Když se nad nějakým obratem v cizím kódu zasmějete, protože vám přijde vtipný. Když máte ochromující pocit, že nevíte, jak něco udělat, a potom vás řešení onoho problému napadne ve spánku. Když si ze dvou možných způsobů řešení čehosi vyberete instinktivě ten správný a neumíte to racionálně zdůvodnit. Zkrátka když při programování nemyslíte, ale cítíte.

A všechny tyhle věci mě na programování strašně moc baví.

Feb 1, 2005 – 2:42

Comments

tomas kouba
tomas kouba
Oni i popeláři by si, kdyby měli zájem, našli zdůvodnění, že jsou tolik a tolik chytří a vyjímeční. Dokonce možná i více než (my) programátoři... :-)

Tomas
David Majda
[4] Hmm, zrovna u popelářů bych ho tedy chtěl slyšet :-)

BTW tohle není žádné zdůvodňování vyjímečnosti, spíš záznam mých myšlenek a pocitů okolo programování v uvedenou noční hodinu.
David Majda
[6] Dík. Jinak Jani, ono je jedno, kam se nakonec vrtneš. Stejně se dřív nebo později udusíš smíchy ve spánku u mě na koleji, jak praví má věštba ;-)
Zdenek
Zdenek
Muj nazor ze je to remeslo, protoze do inzenyrske faze se to jeste nedostalo.
Ale to je jen moje myslenka :-).

Add comment

It is not possible to add comments to posts older than one month.