Yazilim muhendisi olunmaz, cunku uzerinde calistigin hemen her konu sanilanin aksine 4 islemden cok daha fazla matematik gerektiriyor.
Baslangic - orta seviyelerde yazdiginiz kodlarda arka planda donen matematigi sizin icin opak hale getiren lib ve framework'ler kullaniyorsunuz. Bu da matematik bilmeden de islemleri yapabileceginiz gibi bir yanilgi uyandiriyor.
Ancak daha once esi benzeri yapilmamis bir projede calistiginizda ya da elinizdeki kutuphanelerin tam olarak istediginiz seyi yapmadigini anlayip daha uygun hale getirecek sekilde customize etmeye calistiginizda bunu fark edeceksiniz.
Ornegin veritabanina soket acip bu soketler uzerinden baglanti optimizasyonu yapmak istiyorsunuz. Her programlama dilinde bunu implemente etmis pooling algoritmalari bulunur. Isletim sistemleri de bunu thread'ler icin yapar. Ancak kendiniz Airflow gibi orkestrasyon projelerinde calisirsaniz kendi scheduling algoritmanizi yazmaniz gerekebilir, isin gereksinimine gore scheduling optimizasyonu yapmaniz icin. Onun da temeli Scheduling theory ->
Scheduling theory - Encyclopedia of Mathematics
SQL implemente eden tum dilleri ve bunlarin uzerinde calisan veritabanlari Set theory uzerine calisir. Yeni baslayanlar veritabani olayini MySQL, PostreSQL ya da MSSQL 'den ibaret sanabilirler ama cok daha fazla ozellesmis veritabanlari var. ( Streaming, Write optimized time series vs ) Bu veritabanlarini da yine muhendisler yaziyor; gokten zembille inmiyorlar. O halde ne bilmek gerekiyor? Set Theory. ->
Set theory - Wikipedia
Ilkokulda kimsenin sallamadigi Venn Semasi aslinda buna giris.
Fonksiyonel programlama yapacaksan Monad (
Monad (functional programming) - Wikipedia ) , Sifreleme ya da hashing uzerinde calisiyorsan number theory, Image manipulasyonu yapacaksan layerin algoritmalarini bilmen, anlaman ve modifiye etmen gerekiyor. Bir resmi farkli segmentlere ayiran ve object detection yapan CNN algoritmalarinin da arkasinda kocaman matematik var. (
Fast R-CNN: What is the Purpose of the ROI Layers? | Baeldung on Computer Science ). Oyun programlamaya girmiyorum bile.
Matematik bilmeyen adam elindeki agac fotografini 30 derece egecek kodu yazamaz. Baskasinin yazdigi "rotate(30)" fonksiyonuna muhtac kalir.
Yazdigim bu uzun mesaja ragmen, matematik bilmeden yazilimci olunur mu sorusunun cevabi Evet, olunur. Ama sadece baskalarinin yazdigi kutuphanelere bagimli kalacak sekilde giris - orta seviye is yaparsin. Teknolojiye yon veren bir calismada adin gecmez. Yazilim muhendisi de tanim geregi matematik bilen adamdir. ( Bilmeyip de mezun olduysa ona diploma veren universitenin ayibi )