19. jaanuar 2017

Miks õppida programmeerimist hobina?


Miks õppida programmeerimist hobina? - Kristi_Proge_Blog
Foto: EFF Photos
Peale seda kui läbisin TÜ "Programmeerimine maalähedaselt" kursuse ja sellest oma tuttavaid teavitasin, ise enda üle uhkust tundes, on minult korduvalt küsitud, et miks otsustasin oma vabast ajast programmeerimist õppida. Teatavasti ei plaani ma hakata elukutseliseks programmeerijaks. Sel nädalal alustasin oma järgmise TÜ veebikursusega "Programmeerimise alused".

Aga miks siis programmeerimine (ja mitte keevitamine, iluuisutamine või näiteks sokikudumine)? Selles veidi isiklikumas postituses mõtisklengi veidi sellel teemal, mis mind programmeerimise juures võlub ja miks üldse õppida programmeerimist, kui eesmärk pole töötada programmeerijana.

Probleemide lahendamise väljakutse

Peamine põhjus on see, et mulle meeldib probleemidele lahendusi leida. Programmeerimine seisnebki ju selles, et sul on mingi idee või probleem ning sul tuleb välja mõelda, kuidas seda ideed teostada või probleemi lahendada. Ja see on suurepärane tunne, kui oled mingi probleemi kallal pikalt pead murdnud ja vaeva näinud ning siis viimaks lahenduse leiad! Programmeerimine pakubki seda mõnusat tunnet, kuid mitte ainult. Programmeerimisel on sul tulemuseks midagi reaalselt nagu näiteks robot, mis liigub mööda joont või programm, mis arvutab automaatselt liitintressi, või oma hobisid tutvustav kodulehekülg või programmeerid hoopiski oma esimese muusikapala. Praktiline väljund motiveerib.

21. sajandi oskused

Tegeledes programmeerimisega areneb nii probleemide lahendamise oskus, kriitiline kui ka loogiline mõtlemine ning loovus. Neid oskusi ei lähe vaja ainult koodikirjutamisel, vaid peaaegu kõigis eluvaldkondades olgu selleks siis laste kasvatamine, ideest toote arendamine või ettevõtlusega tegelemine. Kui nüüd mõelda sellele, milliseid oskusi peetakse oluliseks 21. sajandil, et olla edukas (tööturul), siis väga sageli nimetatakse top 10-s ka neid nelja oskust. Lisaks nendele arenevad kannatlikkus ja püsivus, sest pead tegelema probleemiga kuni lahenduse leidmiseni. Mitte iga lahendus ei tööta, mis tähendab, et tuleb uus lahendus välja mõelda; või su programm ei käivitu, sest seal on viga, mis tähendab, et pead vea leidma ja siluma. Vigade leidmine ei ole üldse lihtne ning nõuab kannatlikkust ja püsivust.

Eneseväljendusoskus

Arendad eneseväljendusoskust. Kui sul on probleem ja vajad sellega abi, siis pead suutma end arusaadavalt väljendada. Seda enam, et kuna erinevate inimeste mõtlemine ei tööta täpselt samamoodi, siis oma mõttekäigu teisele selgitamine ei olegi nii lihtne. Kuid mida rohkem praktikat, seda paremini see välja tuleb.

Matemaatika rakendamine

Koodikirjutamine arendab matemaatilisi võimeid. Osaliselt on programmeerimine ja matemaatika seotud seetõttu, et (tekst)ülesannete lahendamise protsess on sarnane programmeerimisülesannete lahendamisega. Näiteks tuleb sul välja selgitada, millised algandmed on sul juba olemas ja kuidas saad neid oma lahenduses kasutada. Samuti pakub koodikirjutamine võimaluse matemaatikatunnis õpitut praktikas rakendada. Näiteks kui sinu ülesandeks on koostada programm, mis arvutab inimese kehamassiindeksi ja annab teada, kas ta on alakaaluline, normkaalus või ülekaaluline, siis ilma matemaatiliste teadmisteta ei ole seda programmi võimalik koostada. Mulle on matemaatika alati meeldinud ja mulle pakub suurt heameelt see, et saan kunagi koolis õpitud asju meelde tuletada ja programmeerimisel kasutada.

Teised põhjused

Programmeerimise õppimise 'kõrvalnähtuseks' on see, et areneb funktsionaalne lugemisoskus, mida läheb vaja nii teooriast aru saamiseks kui ka ülesannete lahendamisel. Teinekord peab ühte ja sama lõiku või ülesannet mitu korda läbi lugema, et sellest probleemi lahendamiseks vajalik informatsioon üles leida.

Leiad uusi sõpru ja tuttavaid. Kuigi programmeerimine ei ole sotsiaalne tegevus, siis selle õppimisel on sotsiaalne külg täitsa olemas. Osaledes kursustel saad tuttavaks uute ja huvitavate inimestega, kellega sul on sarnased huvid. Samuti saad nüüd osa võtta vestlustest arvutite ja programmeerimise teemadel, mis varem olid sinu jaoks võõrad ja mõistetamatud.

Kokkuvõte

Võttes pika jutu kokku, siis programmeerimist tasub õppida, sest
  • arendad probleemide lahendamise oskust, kriitilist mõtlemist ja loogilist mõtlemist; 
  • arendad loovust;
  • suureneb kannatikkus ja püsivus;
  • saad ise midagi oma teadmiste ja oskustega luua;
  • arendad matemaatilisi võimeid;
  • saad matemaatikas õpitud teadmisi praktikas rakendada;
  • õpid end selgemini väljendama;
  • arendad funktsionaalse lugemise oskust;
  • leiad uusi tuttavaid.

Lõpetuseks

Et see postitus lõpuni aus oleks, siis pean üles tunnistama kaks asja. Esiteks, et tegelikult tahtsin peale gümnaasiumi lõpetamist programmeerijaks õppida, aga olles õrnema soo esindaja, ei jätkunud mul tol ajal julgust nii mehist ala õppima minna. Teiseks, programmeerimine ei ole mulle enam ainult hobi. Viimase pooleteise aasta jooksul olen saanud neid teadmisi ja oskusi mingil määral ka tööalaselt kasutada.

Jälgi KristiProget Facebookis.