Deo zbornika Uvod u programiranje kroz C

Zašto je programiranje zabavno?

Email Twitter LinkedIn Facebook Google

zabava

Zašto je programiranje zabavno? Koje užitke može njegov praktikant očekivati kao nagradu?

Prvo, radost pravljenja stvari. Kao što dete uživa u svojoj piti od blata, tako i odrasli uživaju u pravljenju stvari, posebno onih koje su njihove sopstvene kreacije. Mislim da je ovaj užitak slika Božjeg užitka stvaranja stvari, iskazan u neponovljivosti i novini svakog lista i svake pahulje.

Drugo, zadovoljstvo pravljenja stvari koje su korisne drugim ljudima. Duboko unutra, mi želimo da drugi koriste naš rad i prepoznaju ga korisnim. U ovom pogledu, programiranje se suštinski ne razlikuje od dečjeg prvog glinenog držača olovki za “tatinu kancelariju”.

Treće je fascinacija slaganjem složenih predmeta u povezane pokretne delove, i posmatranje njihovog rada u suptilnim ciklusima, u kojima se odvijaju posledice načela ugrađenih od početka. Isprogramiran računar ima svu fascinaciju fliper mašine ili džuboks mehanizma, izvedenu do krajnosti.

Četvrto je radost stalnog učenja, koja izvire iz neponavljajuće prirode zadataka. Na ovaj ili onaj način problem je uvek nov, i rešavajući ga uvek nešto naučimo: nekad praktično, nekad teorijski, nekad oba.

Konačno, tu je užitak rada u tako pokornoj sredini. Programer, poput pesnika, radi tek neznatno udaljen od čiste misli. On gradi dvorce u vazduhu, od vazduha, stvarajući naporom mašte. Retki mediji stvaranja su tako gipki, tako jednostavni za poliranje i preradu, tako podesni za realizaciju veličanstvene konceptualne tvorevine.

Ipak programerski kontrukti, za razliku od pesničkih, su stvarni u smislu da se kreću i rade, proizvode vidljive učinke, različite od njih samih. On štampaju rezultate, crtaju slike, proizvode zvuke, mrdaju ruke. Magija mitova i legendi se ostvarila u naše vreme. Neko utipka čarobnu reč, i prikaz na ekranu oživi, pokazujući stvari koje nikada nisu bile niti su mogle biti.

Izvor: Frederick P. Brooks Jr., The Mythical Man-Month, 1975. Prevod: Damjan Pavlica