Hocam peki programcılığa girişmek isteyen birisine (oyun hilelerinden ziyade paraya dönüştürebileceği bir alan) sen hangi dilleri önerirsin sırasıyla? Hiçbir bilgisi yok diyelim, ona göre udemy'dan set alıp başlamayı düşünüyorum
Simdi hocam, baska tavsiye veren arkadaslara kulak asmamani inatla söylüyorum. Kendimle ilgili pek detaylara girmek istemiyorum ama ben yüksek yazilim mühendisiyim 15 yildir belki daha fazla bir süredir yazilimla ugrasiyorum, isvicre'de bir firmada büyük firmalar icin yazilim gelistiriyorum, bir sürü kisiye ders verdim ve böyle forumlarda bulunmamim daha cok amaci sizin gibi arkadaslara zaman buldukca yardimci olmak. Cok uzun zamandir disardan is almiyorum daha cok yazilim, elektronik, yabanci dil vs gibi konularda bazi forumlarda yardimci olmaya calisiyorum insanlara.
O yüzden kendi tecrübelerime dayanarak kesin net bilgiler verebilirim. Ben elektronik okurken kendi basima yazilim ögrenmeye basladim.Kimse de kalkip cok sükür ki, ingilizce bilmen lazim, algoritma bilmen lazim, C ile baslaman lazim, amuda kalkip takla atman lazim gibi seyler söylemedi. Yoksa bir cok insan gibi benim de hevesim kirilirdi. Cünkü o kadar cok arkadas görüyorum ki ve cogu bana yaziyor heveslerinin kalmadigini, yapamayacaklarini vs. Önlerine sürülen seyler gereksiz yiginla zaman kaybi.
Gelelim soruna; paraya dönüstürebilecegin bir alan genis bir ifade.. Kimi facebook yapar zengin olur, kimi cakmasini yapar olamaz. Kimi Flappy Bird, angry bird oyununu yapar zengin olur, kimi olamaz.. O yüzden bu isin bir riski var. Ama dersen ki gelecek neyi gösteriyor? derim ki sana mobil ve web.
Mobile yönelmek istiyorsan, oyun üzerine kendini gelistirebilirsin eger iyi bir oyun yaparsan ve tutulursa iyi para kazanirsin cünkü marketlerde genellikle en cok satin alinan sey oyunlar oluyor. (türkiye degil de dünya pazarina yönelik düsün). Ancak yararli uygulamalar da yapabilirsin. Dil ögrenimi ile ilgili vs.
Web icin pek bir sey diyemeyecegim. Hemen hemen her sey yapilabilir. O yüzden alanini senin belirlemen gerek. Oncelikle sektörel bazda aramani yap, acik olan alana yönelik uygulama gelistir. Bu alanlarla ilgili bilgi sahibi birileriyle görüs, fikir al, potansiyel müsteri bulmaya calis vs.
Gercek bir yazilimcinin bir dile ihtiyaci yok hocam. Yani bize gelen islerde bazen vb 6.0 oluyor bazen vb.net bazen c# bazen objective-c, bazen java, bazen sadece sql bazen asp.net, php, js vs Bunlar arasinda genellikle yazilimcilar gecis yapiyor. Ben php haric hepsiyle is yapabilirim..
Ancak senin durumun biraz daha farkli. Sen direk bir alana yönelik calismak istiyorsun o zaman söyle tavsiye vereyim.
Eger oyun gelistirmek istiyorsan program olarak unity 3d yi tavsiye ederim, bir cok egitim bulabilirsin. Unity3d de C# ya da javascript ile gelistirmeler yapabilirsin. Tasarim konusunda zaten bir cok modülü marketlerden vs bulabilirsin. Bunun avantaji C# dilini cok iyi bilmene gerek olmamasi.
Eger mobil app gelistirmek istiyorsan
sadece iOS icinse swift den baslayabilirsin (objective-C ye girmene gerek yok)
sadece android icinse java ögrenebilirsin (yine java nin tümünü bilmene gerek yok, zaten java basli basina koca bir dünya)
birden fazla platform icin yapmak istiyorsan o zaman Xamarin kullanmani ve dil olarak da C# dan baslamani öneririm.
Web olayina gelince, benim alanim web degil ancak gidecegin iki zaten genellikle 2 secenek daha popüler. ya asp.net tarafi ya da php. Asp.net teknolojisi icin (asp.net mvc ögren ögreneceksen) c# kullan yine. Tabi bunun haricinde yine java (jsp) ile de yapabilirsin ancak pek yaygin bir sey degil..
Son olarak hizlica basit toollar gelistireyim dersen son zamanlarda özellikle avrupada cok popüler olan python a da bakabilirsin. Python ile gerek web, gerek mobile gerek masaüstü yazilimlari programlayabilirsin.
Bahsettigim seyleri biraz kendince arastir ve hangisi kafana yatiyorsa onla devam et..
Simdi gelelim isin önemli noktasi ve diger arkadaslarin söylemek isteyip de söyleyemedigi seylere.
Yabanci dil özellikle ingilizce kaynak bakimindan cok zengin imkanlar önüne acar. Benim kriterlerime göre, birisi ingilizce bilmiyorsa ben o kisiye yazilimci gözüyle asla bakmam. Cünkü teknoloji sürekli gelisen bir sey ve yazilimci dedigin bu yeni teknolojilere bir an önce adapte olmasi gerek. Birilerinin türkce kaynak yazmasi bir hayli zaman alacagi icin, sadece türkce ile giden biri kendini belli bir seviyeye kadar gelistirir ve kaynaklar kisitli oldugu icin belli bir asamadan sonra ögrenim süresi uzar. O yüzden hedefin iyi bir yazilimci olmak ise evet kesinlikle ingilizce bilmen lazim. Ancak baslangic asamasinda hic gerek yok.
Algoritma; bunu cok duyarsin, yillardir hem elektronik, hem bilgisayar hem de mobil yazilimi yapmis olmama ragmen hala 2 aylik programcilarin bile "algoritma olmadan olmaz aga" demelerine bir türlü anlam veremiyorum. Algoritma denilen sey duragan degil kaygandir. Yani tek bir algoritma diye bir sey yok. Yapilan ise göre algoritma farklilasir, zamana göre ücrete göre dile göre vs vs algoritma degisir ve ayni ise bile farkli algoritmalar hazirlanabilir. O yüzden algoritma öyle kitapla ögrenilecek bir sey degildir.
Algoritma cözüme gidis yoludur. Her problem farkli olacagi icin hepsinin cözüm yolu farklidir, problem ayni olsa bile farkli cözüm yollari da olabilir. Biri sag kulagini sag elle tutar, biri sol elle, biri dilini dokundurur biri ayagiyla tutar
Cözüm yolunu nasil ögrenirsin? Pratik yapa yapa ögrenirsin hocam. Onüne bir problem ciktiginda eski tecrübelerini kullanarak problemi cözersin ya da gidecegin yolu tarif edersin. Bu olayi kitapla ögrenmen mümkün degil. Deneye yanila kod yazayacaksin, yazdigin eski kodlari yeni ögrendigin kodlarla yapmaya calisacaksin, baskalarinin kodlarini okuyup anlayacaksin bol bol pratik yapacaksin bunlar da cözüm yolunu keskinlestirir

Ben hayatimda hic algoritma kitabi okumadim. Algortima ve veri yapilari dersi aldim ama sagolsun hocalarim da anlayisli oldugu icin (yurtdisinda almistim tabi dersi), kendi yöntemimle güzelce gectim dersi
Gözünde cok büyütme, sadece kendine bir alan ve bir dil belirle ve calismaya basla. Görsel egitimin yaninda bir kitap edinmeni tavsiye ederim. Cünkü videolarda zaman sikintisi oldugu icin bir cok konu atlanabiliyor ya da gözden kaciyor ama kitaplarda daha detayini bulabilirsin. O yüzden ögrenecegin dil ile ilgili bir kitap temin edip o kitapla birlikte devam edersen iyi olur.
Kimsenin hevesini kirmasina izin verme cünkü o kadar cok insan gördüm ki, matematik olmadan olmaz diyenden tut da kursa gitmezsen olmaz diyene kadar. Hic alakasi yok hocam. Eger bir örnek istiyorsan beni alabilirsin. Ben kendi basima ögrendim, 3 ayda 2 tane 1000 er sayfalik vb 6.0 kitabi bitirerek basladim. Hayatimda hic yazilim kursuna gitmedim. Universitede de aldigim yazilim ve elektronik derslerinin cogunda zaten bilgim oldugu icin ordan da bir sey ögrenmedim. Velhasil kelam, elini tasin altina koy ve otur calis. Gerisi kendiliginden gelir. Yeri geldiginde de ihtiyacin olan seyleri zaten sen fark edeceksindir.
Bu yaziyi sadece senin icin degil de belki yeni baslamak isteyen arkadaslar olursa onlar da faydalansin diye biraz daha uzun tuttum. Sorulariniz olursa cekinmeden sorabilirsiniz. Zaman buldugum müddetce cevaplamaya calisirim.
Kolay gelsin