Yazilimda baslangic yapacagin seye gore olmaz.
Web sitesi yapacaklar da, mobil uygulama gelistirecekler de, MRI cihazi programlayacaklar da ayni sekilde baslar. Sonradan spesifik alanlarda uzmanlasirlar.
Once Ingilizce. Sonra Algoritma, veri yapilari, data , network, isletim sistemleri, daginik & butunlesik sistemler, programlama dilleri, compiler, gramer gibi core yazilim muhendisligi bilgileri. Elbette bunlari anlayacak seviyede matematik bilgisi gerekiyor. Matematigini bilmedigin seyin teorisini anlamazsin. Ornegin bilgisayar sistemlerinde memory de tuttugun sayilarin en yaygin standartlarindan birisi
IEEE 754
standardidir ve temel bir bakista dahi memory de bilgi tutmak, erismek ve kullanmak icin dahi ne kadar matematik bilgisi gerektigi gorulebilir. ( Discrete math en kiymetlisi ) Ornegin bu mesaji okudugun console'da
0.1 + 0.2 isleminin sonucuna bakarsan 754 u is ustunde yakalarsin
Eki Görüntüle 2603474
Iyi muhendisi kotu muhendisten ayiran sey; bu ve bunun gibi pek cok farkli kuramin nasil bir araya geldigini anlamasi ve sistem dizayn ederken efektif sekilde kullanabilmesi, hesaplarina dahil edebilmesidir.
Temel kavramlardan sonra da hangi alanda gelistirme yapacaksan ilgili alanda tecrube kazanip sektore uygun lib ve framework ogrenmen gerek.
Uzun bir maraton bu ve bahsi gecen konulari dogru kaynaklardan alaninda uzman insanlardan ogrenmen ya da dogru metodoloji ve siralama ile ogrenmen gerek.
Genel prensip olarak; ogrendigin sey zaman gectikce degismeyen bir sey ise ( ornegin sayilar teorisi ) kitaplar en iyi kaynaktir. Dolayisiyla CS icin de oyle. Gidip reputasyonu yuksek okullarin online kurslarina bakarsan da muhtemelen ders materyali olarak yine kitap oneriyorlardir. Ogrendigin sey zamanla surekli degisim halindeyse, yayimlandigi resmi kaynak en iyi kaynaktir. Programlama dilleri, kutuphaneler vs bu kategoride yer alir. Cunku gunceldir, direkt sen ve senin gibiler icin tasarlanmistir ve dogru & kapsayici olmak durumundadir. Elbette bu ogrenme yontemine gore de degisir.
Temel kavramlari ogrendigin dilin bir onemi yok. Amac temeli anlamaktir cunku. Ileride web sitesi yaparken C# kullanacagim, o halde C# ile baslayayim ki temelden asinaligim olsun gibi bir sey yok. Zira temelin olunca istedigin dilde istedigini yaparsin ( fizibil ise ).
Forumlarda genelde yeni baslayanlar icin bu alanda bilgisiz tavsiyeler bol oluyor; "Kardes sen web sitesi yapacaksin PHP ile basla, Ertem Zoptrik'ten PHP ile adim adim kursunu al 12 saate kralsin" , "Haci sen embedded yapacaksan C ile baslayacaksin, Uzeyir Tatak'tan Gommeli Kurs al biraz pahali ama uzmansin bitince" seklinde yanlis bilgi cok fazla. Bunlarin en iyisi, en iyi ihtimalle, eger guncel bilgi iceriyor ve egitmenin sektor tecrubesi uygun ise; yuzeysel bilgi verebilirler.
Bu dediklerim "kafamda bir proje var, onu yapmak istiyorum" tarzi insan modeli icin uygun degil. Bunlar "Ben bu isi hakkiyla ogrenmek istiyorum" diyen insan modeli icin gerekli. Aksi durumda kurs ve workshop ile pratik bilgi alip yalnizca istedigin seyi yapacak kadar ogrenmek daha mantikli. Ya da parasini verip yaptirmak. Kod yazmak sanildigi kadar pahali bir is degil, 200-300$ a cogu seyin kodunu iyi kotu yazip sana verecek bir Hintli bulursun.