Gerçekten yazılım öğrenmek, hakkını vermek istiyorum. Nereden başlamalıyım hangi programı kullanmalıyım, yazılım öğrenerek ne yapabilirim?

Yazılım Bilimi

Udemy den kurs alıp istediğin bölüme göre başlaya bilirsin yada istersen yt den istediğin bölüme göre yazılım videoları bulup başla çünkü baya zor knk kararın değişe bilir

Bütün mesajları okudum. Herkese teşekkür ederim. Python da karar kıldım. İndirdim, şimdi ne yapayım.

Google kullanarak

İlk önce alanına karar ver. Oyun mu yapmak istiyorsun. Web siteleri mi? Veya mobil App'ler mi? vs. vs. Kararını verdikten sonra araştırmalar yap YouTube'tan videolar izle mesleğin alanın zorluklarını güzelliklerini öğren. Detayları kap. Hangi alanda hangi dilde iş yapacağına karar verdikten sonra alanınla ilgili 1 algoritma kitabı alırsan çok iyi olur. Algoritma kitapları basit olur hem de temelini attırır. Ardından en iyi kurs araştırmalarına başla Udemy, coursera, YouTube yeter de artar. Türkçeye bağlı kalma İngilizce çok güzel kurslar var. Bunlarda ki İngilizce alt yazıyı Türkçeye çevirerek çalışabilirsin. Edge üzerinde Udemy kurslarında ki İngilizce alt yazıyı sayfayı Türkçeye çevirerek kullanabilirsin çalışıyor Chrome için eklenti lazım galiba. YouTube için de otomatik çeviri vardı. Öğrenirken ezber mantığıyla ilerleme hiçbir yararı olmaz. Sürekli kodla sürekli projeler mini şeyler yap. Öğrendiklerinin ne işe yaradığını anlamalısın. Senin alanında ki senden önde kişiler bul örnek veriyorum mobill App için çok iyi developerlar var. Bunları araştır bul LinkedIn ve GitHub'larını incele neler yapmışlar. Hangi kursları alıp seltifika kazanmışlar gibi gibi ne projeler yapmışlar. Sana yol gösterici olabilir. Basit seviyeyi geçtikten sonra; GitHub ve LinkedIn profilleri oluştur. Buralarda her yaptığın mini projeyi Clone'u yayınla. Açıklamalar ve linkler oluştur. Başlangıç tavsiyesi olarak da; her gün en az 2-3 saat bu işe yatırman. En zor günün de bile minimum 1 saat ayır. Alışkanlık edinmelisin. Zevk alacağın alanı seç. Oyuna ilgiliysen oyun alanına yönel. Sırf para için çalışacaksan başaramazsın.

Öncelikle "araştırma nasıl yapılır?" bu konu üzerinde duruyoruz. Öyle bir şeyi indireyim sonra başkalarına sorayım kafasıyla ilerlenmez. "Gerçekten hakkını" vermek istiyorsan önce balığı tutmasını öğrenmen lazım. Rastgele yazılar arasından bir dili seçip ondan sonra onu indirip ne yapacağını bilememek, maalesef "hakkını" vermek olmuyor. Daha yaşın gençken oturup iyice İngilizceni geliştir ve derslerine çalış. Bu şekilde öğrenebileceksin gibi durmuyor çünkü. Ondan sonra üniversite sınavına girip iyi bir üniversiteye yerleşirsin. Orada hazırlık zamanında bir şeyler katmaya çalışırsın kendine, yaparsan daha rahat olur yapamazsan biraz daha zorlanabilirsin. Bu şekilde bir şey öğrenilmez. Bilgisayar kullanabilmek ile bilgisayar kullanmak arasında çok fark var. Sadece belli şeyleri bilip hiçbir şeyi araştırmamakla olmaz yani. Hiçbir şey yapmadan bir şeyi elde edemezsin. Daha çok genel terimler hakkında bile bilgi sahibi değilsin, "hakkını" vermek istiyorsan hakkıyla konunun üzerinde durman lazım.

Aklıma bu geldi parası olan için parası yoksa veya olupta vermek istemezse tabii YouTube daha iyi.

Yukarıdaki şemanın hiçbir anlamı yok. Para kazanmak istiyorsam Java öğrenmem gerektiğini söylüyor, hayatımda böyle saçma sapan bir şema görmedim. Daha kişi yöneleceği alanla ilgili spesifik şeyleri görmeden nasıl karar verecek? Yöneleceği alanı kafasında belirtmesi hiçbir anlam ifade etmiyor. Bu başlangıçta belirlenecek bir şey değil. Zira oyun geliştirmekle oyun oynamak aynı şeyler değil. Mantıken düşününce çoğu kişi yazılıma başlarken oyun geliştirerek başlamak ister çünkü oyun oynamayı seviyordur. Fakat oyun geliştirirken nasıl bir yol haritası izleyeceği ve ne tür zorluklarla karşılaşacağı hakkında en ufak bir fikri yoktur. Benim yukarıda kast ettiğim Python developer olarak çalışması değil. Kolay bir dili öğrendikten sonra dilin mantığını, kısacası nasıl çalıştığını temel seviyede anlaması ve buna göre bir karar vermesidir. Para kazanmak isteyen birisi için spesifik bir dil yoktur, her dilde para kazanabilir ve her dilin avantaj ve dezavantajları vardır. Yaptığın işi ne kadar çok severek yapıyorsan o kadar ilerleyebilirsin. Sadece para kazanmak için yazılıma girip başarılı olan bir kişiyi daha görmedim. Çevremde o kadar çok kişiye Python dersi verdim ki artık insanların ne yapıp yapamayacaklarını veya devam edip etmeyeceklerini çok iyi anlayabiliyorum, bu yolların aynısından ben de geçtim. İlla para kazanmak istiyorsa ki böyle bir hedefle yola çıkılmaz. En kolay iş bulabileceği platform web'dir fullstack developer olarak çok daha hızlı iş bulabilir ve yüksek maaşlara çalışabilir. Zira günümüzde popülerliği hızlı bir şekilde artan iki dil Javascript ve Python'dur. Söyleyeceklerim bu kadar, bundan sonra da burasını tartışma alanına çevirme gereği olduğunu düşünmüyorum. Arkadaş öneri istedi ben de şu ana kadar tecrübelerime dayanarak elde ettiklerimi elimden geldiğince anlatmaya çalıştım.

Öğrenerek öğreneceksin. Hangi yoldan gitmek istiyorsun? Mesela Microsoft' ta stajyer olarak mı çalışmak, Fiverr gibi sitelerde web tasarım yapmak, kendi oyununu geliştirmek, mobil uygulama yapmak, teknoloji platformu açmak, yapay zeka ve derin öğrenme gibi işleri keşfetmek, blokzincir oluşturmak gibi işlerden hangisini seçersin? Yazılımda kendini çok geliştirirsin. Bir kötü yanı var. Eğer teknoloji gibi hızlı bir treni yakalamak, ayak uydurmak istemiyorsan geri kalırsın. Ancak treni yakalayan tiplerdensen hemen kavrarsın. Önce hangi yoldan gitmek istediğine bak. O yol için doğru programlama paradigmanı seç. Ondan sonra paradigmana uygun programlama dili seç. Sonra bu programlama dilinle yapacağın işi planla, hafif giriş yap. Sonra o programlama dili için bir IDE yada kod editörü bul. Sonra ise kendine bir düzenli çalışma programı belirle. O programa göre Youtube' dan yada Udemy gibi platformlardan kurs izle ve düzenli çalış. Sakın aksatma!

Google'a yazınca sana kodları sızdırılmamış oyunların ve programların kodlarını öğretmiyor.

BÖYLE..

Burası bir forum ve amacımız da fikirleri tartışmak. Bir kusurumuz olduysa affola.

YouTube den izleyerek öğreneceğim. Yazılımın içinden geçicem. Gelişmeleri paylaşırım.

Sabah inceleyeceğim teşekkür ederim.

Zaten sürekliliği sağlamak için rastgele kolay bir dil değil o kişinin ilgisini çekebilecek bir alana uygun bir dil onun sürekliliğini sağlar. Misal web front end öğrenmek ve bunun ilgisini çekebileceğini düşünen biri neden python öğrensin js için gibi en bariz buradan örnek verilebilir. Tabi kişi kendisine net bir alan seçmediyse python doğru olabilir

Bu durumda oyun geliştirmeyi dener, başarısız olur veya sıkılır. Bu alanın kendisine uygun olmadığını anlar ve vazgeçer. Ezbere tavsiye almasından daha verimli buluyorum. Diğer türlü hiç alakası olmayan bir dili öğrenirken çok daha hızlı sıkılacaktır.

Altına imzamı atarım, burada sadece soru sorarak, armut piş ağzıma düş mantığıyla yazılımcı olunmaz. İlk önce ingilizce sonra da araştırma yapmayı bilmek gerekir.

Başlangıç aşamasında önemli olan bırakmayarak sürekliliği sağlamak ve temel sorun da herkesin yazılıma başlayıp azıcık zorlandıktan sonra bırakması. Çevremde birçok kişide gördüğüm temel bir sorun. Çoğu kişi daha OOP aşamasına gelmeden veya gördükten sonra hemen bırakıyor. Syntax olarak ne kadar zor bir dille başlarsa başlangıç aşamasında yazılımı bırakması o kadar çabuk olur. Kolay bir dille başladığı zaman temelleri daha iyi bir şekilde kavrayabilir ve belirli bir yol aldıktan sonra artık bırakmama aşamasına gelebilir. Zaten bir dilin temellerini öğrenen birisinin diğer dillere alışması çok daha kısa sürüyor, kolay bir dil öğrendikten sonra o dilde devam edebilir veya spesifik bir alana yönelebilir.

Udemy'den kurs alabilirsin.

Hocam github adresinizi rica edebilir miyim? Bende şu anda Front End Developer alanında kendimi geliştiriyorum, Javascript öğrenmekteyim. Çalışmalarınızı incelemek isterim.

Hocam gözünüzü seveyim zamanınız olursa detaylı yazabilir misiniz? Okuyan yararlanan var sonuçta. Boşa yazmıyorsunuz. Şöyle bu konu açarsınız ya da rehber. Ama konu açarsanız daha fazla kişi görür. Sabitlenmesini rica edersiniz.

Bu aslında ters etki ediyor. Zor bir dilden başlayan kişinin kolay dilleri öğrenmesi çok daha kısa sürüyor. Kolay bir dilden zor bir dile geçiş sancılı olabilir. Teklifim elbette Assembly öğrenerek başlanılması değil, şahsen ben de Python yazıyorum. Her dilin diğerlerine kıyasla daha efektif olduğu alanlar vardır, bu durumda doğru dili seçmek çok önemli.

Aksine öğretiyor decompile edilmiş programlar veya oyunları bir şekilde bulabilirsin. Sosyal medya sadece bir sorun olduğunda internette araştırmayı beceremediğin zaman devreye girer.

Geniş iş imkanları Java'da var ama Python'da yok mu ya da Javascript'te? Hala tek amacı paraysa diyorsun, tek amacı para olup bu işte başarılı olan bir kişiyi görmedim. Hepsi işlerine gelmeden bıraktı. Python öğrenmenin amacı genel programlama konseptini hızlı bir şekilde kavramasını sağlamak. Alakasız dil derken anlamadım. Python'daki temel programlama bilgilerinin hepsini diğer dillerde hızlı bir şekilde kullanabilir. Senin mantığınla diyelim ki; ben machine learning alanına yönelmek istiyorum, zira yapay zekaya çok ilgim var. O zaman hemen başlamalıyım değil mi? Sonuç ne? Tabii ki hüsran. Sonra programlama ne kadar zormuş diyerek programlamayı bırakacağım. Süreklilikten kastım budur. Kişinin isteğinin önemi yoktur diye bir genelleme yapmadım. Kişi programlama temellerini öğrendikten sonra mantıklı bir seçim yapmalıdır, o seçeceği dilin de ne olduğunun bir önemi yok, tamamen kişinin zevkine kalmış. Öğrenim kolaylığı ve temeli anlaması açısından Python öğrenmenin nesi yanlış? Başlangıçta Java öğrenen bir insanın düşüncesi de diğer dillerin de benzer olduğu yönünde olacak ve muhtemelen hemen bırakacak. Bundan sonra yazdığın cevaplar ardına cevap vermeyeceğim, benim açımdan hiçbir çıkarım olmamasına rağmen bir saattir bunu tartışıyoruz, arkadaşın konusunu baltalamanın bir gereği yok. Herkes kendi düşüncesine sahip ve herkes fikirlerini arkadaşa sundu, ne sen benim fikrimi değiştireceksin ne de ben seninkini.

Youtube' da ücretsiz kaliteli kurslar varken neden parasını harcasın? Ben video bile izlemeden Java Wiki' sinden öğrendim. İsmini veremediğim birçok güzel yazılım kanalı varken para israfı saçma geliyor bence...

Sırf syntax'i sade ve basit diye alakasız bir dilden başlatmak ne kadar doğru hocam? Oyun geliştirecek birinin Python'la işi olmaz ve bu sadece yolunu uzatır. Aynısı web için de geçerli.

Yurt dışına uzaktan çalışan bir Python developer olarak söylüyorum. Yukarıdaki şemayı umursamadan, syntax olarak kolay ve anlaşılır bir dilden başlaman gerekiyor. Bunun en önemli sebebi ise programlamayı çoğu kişinin anlık bir hevesle başlayıp bırakmasından kaynaklanıyor. Birçok kişi bu işin kolay olduğunu veya bilgisayarla haşır neşir olan herkesin halledebileceğini zannediyor fakat işler öyle gitmiyor. İngilizce bilmeden bu işi sürdürebilmen mümkün değil, Türkçe kaynakların hepsi rezalet. Kısacası ilk ingilizce bilmiyorsan, ingilizce öğrenerek başlamalısın. Başlangıç dili olarak Python önerebilirim, Python geliştiricisi olman sadece hobi olarak yapacağın anlamına kesinlikle gelmiyor, bu işten para kazanman mümkün. Her gün çalışmak için belli bir vaktini ayırman gerekiyor, yoksa kendini geliştirmen mümkün değil. Çevrende ders verebilecek birisini bulursan normalden çok daha hızlı öğrenmen mümkün. Daha anlatacak çok şey var ama buradan anca bu kadar oluyor.

Google veya diğer arama motorlarını aktif olarak kullanmalısın, yazılımın %90'ı bana göre araştırmadır zaten. Kafandan bir şeyi üretmen imkansıza yakındır. Ben tüm PHP Fonksiyonlarını, Syntaxını ezbere bilsem internetsiz bir ortamda yine bir şey üretemem. İlla ki bir noktada benim de araştırma yapmam gerekir. Burada temel tavsiyeleri zaten arkadaşlar yazmış gerisi sende artık. Her şeyi buraya da sorabilirsin, bu benim için sorun değil yanıtlarım. Ama senin araştırma yönünü geliştirmemen sonradan sorun olabilir. Her zaman bir Technopat bulamayabilirsin. Umarım anlaşılabilir yazabilmişimdir. Öncelikle birazdan okuyacaklarını direkt sana yazmıyorum, genel olarak yazacağım. Yazılım dediğimiz sektör profesyonel bir iş koludur. Son yıllarda bu sanki bir zaman geçirme aktivitesi, hobi gibi algılanmaya başladı. Mesela Soru: "Canım sıkılıyor ne yapayım?" ise cevabı "Yazılım öğren" oluyor. Yapmayın lütfen.