“Učila bih programiranje ali ne znam matematiku”. Ovo je rečenica koju sam čuo mnogo puta, a poslednji put juče od stare prijateljice. Nema veće zablude za neprogramere od ove! Ako zanemarimo pojedine specifične oblasti, programiranje nema mnogo veze sa matematikom, odnosno ima koliko i sa srpskim jezikom.

Kao programeri, svakodnevno se susrećemo sa jezičkim i gramatičkim pitanjima - funkcije nazivamo u imperativu, logičke vrednosti u pasivu, a da ne pominjemo sate i sate mozganja oko najprikladnijeg imenovanja promenljivih.

S druge strane, za pet godina programiranja najsloženija matematička operacija kojom sam se bavio, verovatno je bila računanje širine kolona, tako što širinu ekrana podelimo brojem kolona. Toliko o programerskoj matematici.

Naravno, postoje specifične oblasti koje zahtevaju napredno matematičko znanje (na primer sistemsko programiranje ili 3D grafika), ali ovde govorimo o svakodnevnom programerskom poslu, koji se uglavnom svodi na web, android ili iOS.

Zabluda da se programeri pretežno bave matematikom potiče iz činjenice što se programiranje studira na tehničkim naukama. Ali programiranje se suštinski svodi na logiku i sasvim komotno bi se moglo učiti na filozofskom fakultetu.

Matematika je naravno korisna. Da biste razumeli kao računar radi, bitno je znati binarne, heksadecimalne i druge brojčane sisteme. Takođe, za programiranje velikih sistema neophodno je koristiti algoritme, koji opet imaju veze sa matematikom. Možda je baš matematika taj činilac koji će izdovojiti vrhunskog programera od gomile ostalih, ali ovde ne govorimo o tome da postanete Ajnštajn, već da postanete prosečan, štaviše veoma dobar programer.

A kada to postanete, onda možete učiti matematiku.