kodlama öğrenmeye nereden başlamalıyım / Sıfırdan kodlama öğrenmek istiyorum nereden başlamalıyım? - Sorcev

Kodlama Öğrenmeye Nereden Başlamalıyım

kodlama öğrenmeye nereden başlamalıyım

Yazılıma Nereden Başlamalıyım?

Yazılım öğrenmek istiyorum ancak,

  • Yazılım ile daha önce hiç ilgilenmedim, yazılıma nereden başlamalıyım?
  • Yazılımda başarılı olmak için üniversite mezunu olmam gerekiyor mu?
  • Yazılımın hangi alanında kendimi geliştirmeliyim?
  • Yazılım dilleri nelerdir?
  • Yazılım dili öğrenmek için nasıl çalışmalıyım?

Gibi sorular aklınızı mı kurcalıyor?

O halde "Yazılıma Nereden Başlamalıyım?" yazısını okuyun, yazılım dilleri nelerdir, öğrenin ve zaman kaybetmeden kendinize bir yazılım öğrenme yol haritası çizin.

Yazılıma nereden başlamalıyım?

Yazılım öğrenmek aslında zor değil ancak bilgi karmaşasından ve neyi ne zaman öğrenmemiz gerektiğini bilmiyor olmamızdan dolayı kolay olan bu süreci çok zor olarak görüyoruz ki; bana göre önümüzdeki en büyük engel bu, yani yazılım öğrenme sürecini zor olarak görmemizdir. 

Bundan dolayı doğru bir yönlendirme ve doğru bir kaynağa ihtiyacımız var, aksi halde yanlış yönlendirme ve yanlış kaynaklardan dolayı yazılım öğrenme süreci çok fazla uzuyor hatta çoğu zaman da kolay olan bu süreci zor gibi görüp vazgeçmemize neden olabilir.

Özetle beklentilerimize göre bir yazılım alanı seçip, alanın gerekliliklerini yerine getirmemiz ve bu süreçte de doğruluğu kanıtlanmış bir kaynak seçiminde bulunmamız yazılım açısından hayati önem taşımaktadır.

Yazılım dilleri nelerdir, her hangi bir ön bilgiye sahip değilseniz, yazılıma nereden başlamalıyım hiç bir fikriniz yoksa sakın endişelenmeyin. Öncelikle kendinize güveninizin tam olması gerekiyor çünkü yazılım dillerini öğrenme sürecinde sürekli sorunlarla karşılaşıyoruz ve bu sorunlara cevap ararken de sürekli yeni konular öğreniyoruz ayrıca bildiğimiz konulara da daha farklı bakmaya başlıyoruz. İşte yazılım öğrenmeyi tanımlayan kelimeler sorun ve soruna cevap arama

Herkes bu yoldan geçiyor ve karşılaştığımız sorunlar, problemler bizim gelişmemizi sağlıyor. Bu yüzden öncelikle sorunların bizi yıldırmaması gerekiyor. Bu da başta kendimize güvenmemizi gerektiriyor.

Üniversite mezunu olmam gerekiyor mu?

Yazılım ile ilgileniyorsanız mutlaka mesleki bilginiz her şeyden önde olmalıdır. Yani Üniversite mezunu olup etkin bir yazılım bilgisine sahip değilseniz iş bulma sürecinde zorlanmanız çok doğaldır. Bu aslında sadece yazılım için değil her mesleki beceri isteyen meslek dalı içinde bu şekildedir. 

Eğer ki; yazılım ile alakalı bir Üniversite mezuniyetiniz yoksa bu durumda kurumsal firma başvurularında çok iyi bilginiz olsa bile çoğu zaman göz ardı edilebilirsiniz çünkü kurumsal firmalar için yazılım bilgisinin yanında üniversite mezuniyeti de çoğunlukla önemlidir.

Çok iyi yazılım bilginiz var bu durumda iş bulamaz mıyım? 

Kesinlikle bir çok iş fırsatına sahip olabilirsiniz. Orta ölçekli firmalar sizin neler yapabildiklerinizle ilgilenirler. İyi bir yazılım bilgisi size iyi ücretli bir çok iş fırsatı getirebilir. Üstelik her hangi bir firmaya bağlı olmadan kendi başınıza da bir çok müşteri bulup güzel gelir elde edebilirsiniz. Bu şekilde her hangi bir firmadan bağımsız çalışan kişiler "freelancer" olarak adlandırılır.

Yazılımın hangi alanında kendimi geliştirmeliyim?

Genel olarak yazılımı 3 ana grup altında ele alabiliriz. Tabi ki her grup altında bir çok alt başlık sayabiliriz. Hatta farklı gruplardan da bahsedebiliriz ancak biz yazılım öğrenmeye yeni başlıyoruz ve en genel haliyle,

  • Web geliştirme,
  • Mobil uygulama geliştirme,
  • Masaüstü uygulaması geliştirme,

şeklinde bir gruplama yapabiliriz.

Her hangi bir platform odaklı yani web, mobile ya da masa üstü için yazılım geliştirmeye başlamadan önce bu platformalar için kullanacağınız programlama dili seçimini yapmanız gerekiyor. Çünkü her kullandığınız programlama diliyle genellikle web geliştirme, mobile uygulama geliştirme ya da masa üstü uygulama geliştirme yapabilirsiniz. Bu yüzden önce hangi programlama dilini kullanmak istiyorsunuz bunu seçmelisiniz.

Seçebileceğiniz bazı popüler yazılım dilleri;

Yazılım dilleri nelerdir?

Bir programlama dili ile yapabileceklerinizi diğer programlama diliyle de çoğu zaman yapabilirsiniz. Çünkü her programlama diline özel farklı platformlar için geliştirilmiş kütüphaneler hazırlanmıştır.

Örneğin; C# programlama dilini öğrendiğinizde funduszeue.info mvc ile web projeleri, winform ya da WPF ile masa üstü projeleri ya da Xamarin ile android ve IOS mobile uygulamaları geliştirebilirsiniz. Burada önemli olan bir programlama dilini iyi öğrenmenizdir.

Bu aşamada eğer seçiminiz C# ise, sıfırdan programlama mantığını öğrendikten sonra C# programlama dilini detaylı bir şekilde öğrenebileceğiniz "Uygulamalı C# Programlama Eğitimi : Yeni Başlayanlar"  isimli kursuma katılabilirsiniz.

Programlama mantığını öğrenip kullanacağınız dili seçtikten sonraweb geliştirme, mobile uygulama geliştirme ya da masa üstü uygulama geliştirme alanına geçiş yapabilirsiniz. 

Web Geliştirme ile mi ilgilenmek istiyorsunuz? 

Web Geliştirmenin popülerliği ve iş fırsatları tartışılmaz bir gerçektir. Web geliştirme alanındaki gelişmeler, güncellemeler çok fazla olduğundan, sürekli yeni teknolojiler çıktığından dolayı bu alan ile ilgilenecek kişilerin bilgilerini sürekli güncel tutmasıyla çok iyi iş fırsatlarına sahip olmaları yüksek ihtimaldir. 

İsterseniz kurumsal bir firmaya girip çalışabilirsiniz, isterseniz de freelancer olarak çalışıp güzel gelir elde edebilirsiniz. Hatta kendi sitelerini kurup Google adsense reklamlarıyla çok güzel gelir elde eden bir çok kişiden biri olabilirsiniz.

Web Geliştirme alanı 3 ana alt başlık altında ele alınabilir.

  1. Frontend
  2. Backend
  3. Full-Stack Web Geliştirici

Frontend geliştiriciler hangi konuları öğrenmelidir?

Eğer seçiminiz Frontend ise daha çok görsel yaratıcılık kabiliyeti ön plana çıkmaktadır. Çünkü tasarım yeteneği bir görüntünün web sayfası üzerinde nasıl yapıldığı ile çok alakalı değil. Bir görüntünün web sayfasına nasıl aktarılacağını bilmekten başka bir de görsel bakış açısının varlığı ile de alakalıdır. En basitiyle hangi renk hangisiyle daha uyumlu görünür. Ya da tasarım nasıl olsa kullanıcıya daha güzel görünür gibi.

Web tasarım alanında başarılı olmak için görsel yeteneğinizi html ve css bilgisi ile birleştirip güzel tasarımlar yapabiliyor olmalısınız. Scss ve sass öğrenmeniz daha etkin css yazmanızı sağlayacaktır.

Frontend alanında sistemli bir şekilde zaman kaybetmeden başarılı olmak için "Komple Uygulamalı Web Geliştirme" kursuma katılabilirsiniz. Bu kursa katılarak web tasarım konularından olan Html, Css, Javascript, Bootstrap ve JQuery kullanımını iyi bir şekilde bol uygulama yaparak öğrenebilirsiniz.

Html ve css bilgisini herkes yapar beni frontend alanında öne çıkaracak konu ne olur derseniz de; size tavsiyem javascript dilini çok iyi öğrenmenizdir.  

Son zamanlarda Javascript'in popülerliği ile çıkan bir çok Javascript türevi kütüphane ile birlikte artık web sayfaları üzerinde mobile uygulama tarzında çalışan Single Page Application (SPA) diye isimlendirilen tek sayfalık web uygulamaları ile mutlaka karşılaşmışınızdır. Javascript tabanlı bu yapıların en başında Angular, React ve VueJs gelmektedir ve Javascript tamamen Frontend alanında değerlendiriliyor. 

Backend geliştiriciler hangi konuları öğrenmelidir?

Web Programlama alanı tasarımdan çok daha farklı bir alandır. Statik bir web site tasarımı yapmaktan öte sitenize bir yönetim paneli hazırlayıp içerikleri gene bir web site üzerinden düzenlemek isteyebilirsiniz ki bu tip siteler daha çok tercih edilir. Örneğin sosyal medya hesaplarındaki bilgi güncellemesini hesabımız üzerinden girip yaptığımız gibi.

Web Programlama alanında başarılı olacak kişilerin daha çok algoritma mantığına sahip olmaları gerekir. Matematiksel zekâ sayesinde muhakeme gücünün daha iyi olması bu alandaki kişileri çok daha ön plana çıkarıp daha başarılı hale getirmektedir.

Matematiksel zekâm çok iyi değil programlama alanında başarılı olamaz mıyım diye düşünüyor olabilirsiniz.  Evet, matematiksel zekâsı iyi olan kişiler dediğimiz gibi programlama alanında daha başarılı olurlar ancak bu hiç başarılı olunmayacağı anlamını kesinlikle taşımıyor. Normal zekâya sahip her kişi bu alanda başarı sahibi olabilirler önemli olan düzenli ve doğru kaynak ile çalışmaktır.

Backend geliştirici olmak istiyorum tüm web programlama dillerinin hepsini bilmek zorunda mıyım?

Kesinlikle hayır. Sadece bir web programlama dilinde başarılı olmanız sizi sonuca götürür. Sonuçta yapacağımız web sitesi son kullanıcı için hep aynıdır. Bu web sitesinin funduszeue.info mvc ile mi, nodejs ile mi ya django ile mi geliştirildiği hiç önemli değildir. Tüm web programlama dilleriyle dinamik yönetim paneli olan bir web uygulaması geliştirebilirsiniz.

Birçok web programlama dilini aynı anda öğrenmeye çalışmak hedefe ulaşma zamanımızı uzatır. Bir dili iyicene öğrendikten sonra başka bir dil öğrenebilirsiniz ancak aynı anda çalışmak süreci uzatabileceği gibi sizi başarıya götürecek olan çalışma hevesinizi kaçırabilir. Bu yüzden bir web programlama dilini iyicene öğrendikten sonra eğer arzu ederseniz başka bir web programlama dili öğrenmeniz çok daha iyi olacaktır.

Sonuç olarak her web programlama dili Http protokolü üzerinde işletilen istek ve talepleri işleten bir mekanizmadır yani arka taraftaki işlemler hep aynıdır dolayısıyla bir web programlama dilinin mantığını iyi anlayan biri diğer web programlama dilini de kısa zamanda anlayacaktır.

Eğer ki hedefiniz freelancer olarak çalışmak ise bu durumda hangi web programlama dilini öğrendiğinizin çok bir önemi yoktur çünkü web sitesi yaptırmak isteyen kişi için önemli olan sitenin kullanımı ve görüntüsüdür.

Özetle; bir web programcısı olmak istiyorsanız web tasarım alanı ile ilgilenmenize çoğu zaman gerek olmayabilir. Kurumsal bir firmada çalışıyorsanız web tasarım zaten ekibiniz tarafından yapılır siz sadece programlama kısmında kod yazarsınız. Eğer ki freelancer olarak çalışacaksanız bu durumda web tasarımını ücretsiz ya da küçük bir ücret karşılığında satın alıp programlamasını yapabilirsiniz.

Hangi web programlama dilini kullanacaksanız kullanın ilk başta programlama mantığınızı geliştirmeniz ve iyi bir algoritma kurma yeteneğine sahip olmalısınız. Programlama mantığı üzerine hazırlamış olduğum geniş kapsamlı bir kursum mevcut. Bu kursa katılmanızı tavsiye ederim.

"Uygulamalı C# Programlama Eğitimi : Yeni Başlayanlar" isimli kursuma katılmanız size büyük fayda sağlayacaktır. Kursta sıfırdan programlama mantığı dahil olmak üzere bir çok programlama konusunu öğrenip her hangi bir web programlama platformunu öğrenebilecek alt yapıya fazlasıyla sahip olacaksınız.

Full-Stack Web Geliştirici hangi konuları öğrenmelidir?

Full-Stack Web Geliştirici olmak istiyorum çünkü bir web sitesinin tasarımı ve programlaması dahil her ayrıntısını kendim yapmak istiyorum diyorsanız öğreneceğiniz konular fazlaşıyor.

Full Stack Web Developer 'lar daha çok freelancer olarak çalışan kişiler ile küçük-orta ölçekli şahıs firmalarında çalışan kişilerden oluşmaktadır.

Freelancer çalışanlar yaptıkları sitelerin web tasarım ve web programlama kısımlarını olduğu gibi kendileri düşünmesi gerekir ve aynı şekilde şahıs firmalarında çalışan kişilerde genellikle aynı pozisyondadırlar ki; firmalar hem tasarım için hemde programlama için ayrı kişiler çalıştırmak istemezler.

Full-Stack Web Geliştiricilerin iş fırsatları çok daha fazladır. Bu alan tam bana göre diyorsanız size önerebileceğim muhteşem bir full stack web geliştirici kursum var. Üstelik a’dan z’ye her hangi bir ön koşula sahip olmadan planlı bir şekilde ilerleyebileceğiniz tam 62 saatlik "Komple Uygulamalı Web Geliştirme" Kursuma kayıt olursanız bir full stack web geliştiricinin bilmesi gereken tüm konuları ortalama ayda, günde saatinizi ayırarak planlı bir şekilde ilerlemeniz durumunda öğrenebilirsiniz. Bir web sitesinin a’dan z’ye her aşamasını kendiniz hazırlayıp muhteşem web sitelerini hazırlayabilirsiniz.

Ayrıca udemy üzerinde hazırlamış olduğum bir başka Full-stack web geliştirme kursu olan Nodejs Kursu: Baştan Sona FullStack Web Geliştirme kursuma da katılabilirsiniz. "Komple Uygulamalı Web Geliştirme" kursu ile Nodejs Kursu: Baştan Sona FullStack Web Geliştirme kurslarım arasındaki fark backend dillerinin farklı olmasıdır. Yani her iki kursun fronend kısmı aynı ancak kullandıkları web programlama dilleri farklıdır. Tercihiniz C# ile funduszeue.info mvc mi yoksa Javascript ile Nodejs mi ?

Full-stack web geliştirici hem web tasarıma hakim hemde en az bir web programlama diline hakim kişilerden oluşur. Dolayısıyla web tasarım açısından baktığımızda bilmemiz gereken en temel konular Html ve Css olmalıdır.

Html ve Css bilmemiz en gereken temel konulardır ve eğer ki web tasarım konusunda çok daha hızlı ilerlemek kısacası tasarım için çok vakit harcamak istemezseniz hazır css kütüphaneleri kullanmanızı şiddetle tavsiye ederim.

Hazır css kütüphanelerinden en bilinenleri Twitter firmasının hazırladığı Boostrap kütüphanesi ve Google firmasının hazırladığı Material kütüphanesidir. Bu kütüphanelerin bir başka avantajı ise sundukları Javascript bileşenleridir. Örneğin bir image slider'i saniyeler içinde yapabilirsiniz.

Bir Full-stack web geliştiricinin sıfırdan tasarımlar yapması genellikle zaman kaybettirir. Dolayısıyla tasarımı sıfırdan yapmak yerine hazır template kullanımı yapmak büyük avantaj sağlar. Bazı örnek tasarımları indirip bu tasarımlara program yazarak dinamik hale getirdiğimiz sitemizi kısa sürede yayına hazır hale getirebiliriz.

Peki bir full-stack web geliştirici olarak web tasarım işimizi ister sıfırdan başlayarak hazır hale getirebiliriz istersek de hazır css (bootstrap,material) kütüphanesi ile tasarımı kısa sürede oluşturabiliriz. Ya da tasarım aşamasıyla hiç uğraşmadan hazır bir template üzerinden programlama işimize geçiş yapabiliriz.

Tasarımları daha etkileşimli ve hareketli hale getirmek için mutlaka Javascript bilmeliyiz. Javascript tarayıcıda çalışan (NodeJs'i düşünmezsek) bir programlama dilidir. Örneğin bir butona tıkladığımızda bir pencerenin açılması Javascript ile olmaktadır. 

Web tasarımlarınıza hareketlilik ve yetenek kazandırmak için mutlaka iyi bir javascript bilgisine ihtiyacımız vardır. Modern Javascript Kursu : Sıfırdan İleri Seviyeye isimli kursuma katılarak detaylı bir Javascript bilgisine sahip olabilirsiniz.

Javascript dili son zamanlarda çok popüler hale geldi çünkü artık Javascript sadece tarayıcıda çalışan bir programlama dili değildir artık Javascript'i NodeJs sayesinde server tabanlı bir dil olarakta kullanabiliyoruz. Yani aynen C# dili neyse, Java dili neyse Javasscript dilini de aynı amaçla kullanabiliyoruz. Javascript dilini kullanarak web geliştirme yapmak istiyorsanız nodejs kullanabilirsiniz. Nodejs bir derleyicidir ve nodejs bünyesinde kullandığımız yazılım dili tamamıyla Javascript in kendisidir.

Son zamanlarda Javascript'in popülerliği ile çıkan bir çok Javascript türevi kütüphane ile birlikte artık web sayfaları üzerinde mobile uygulama tarzında çalışan Single Page Application (SPA) diye isimlendirilen tek sayfalık web uygulamaları ile mutlaka karşılaşmışınızdır. Javascript tabanlı bu yapıların en başında Angular, React ve VueJs gelmektedir.

Modern Javascript Kursu : Sıfırdan İleri Seviyeye isimli kursuma katılarak, güzel bir Javascript programlama bilgisi edindikten sonra özellikle ES6/ES7 Javascript programlama dili kullanımını öğrendikten sonra Angular kütüphanesi öğrenmeniz size kesinlikle artı katacaktır. Angular Dersleri: Baştan Sona Uygulamalı Projelerle Öğrenin isimli kursuma katılmanız Angular 8'i kısa zamanda öğrenmenizi sağlayacaktır.

Javascipt tabanlı kütüphaneler ile yapabildiğimiz mobile tarzında, web sayfalarında çalışan uygulamaların ios ve android uygulamasına da kolaylıkla çevirilebilmesi ve android, ios için native kod yazmak zorunda olmamamızdan dolayı bu kütüphanelerin popülerliliği çok fazla artmıştır. Dolayısıyla son zamanlardaki en popüler programlama dillerinden birinin Javascript olduğunu kolaylıkla söyleyebiliriz.

Yıllardır bildiğimiz ve sadece tarayıcı bünyesinde çalışan Javascript programlama dili artık Nodejs yapısıyla tarayıcı dışında da çalışabilir hale geldi bu durumunda Javascript'in popüler hale gelmesindeki etkisi çok büyük.

Modern Javascript tekniklerini ayrıntılı bir şekilde ele alarak hazırlamış olduğum ayrıntılı Modern Javascript Kursu : Sıfırdan İleri Seviyeye  isimli kursuma katılıp angular, react ve daha bir çok Javascript türevi yapılar için güzel bir temel oluşturabilirsiniz.

Modern Javascript Kursu : Sıfırdan İleri Seviyeye  kursumuzda Javascript'in temel dil özelliklerini, tarayıcıdaki Javascript yani Dom yapısını ve tüm modern Javascript tekniklerini öğreniyoruz. Yaklaşık 22 saatlik Modern Javascript Kursu : Sıfırdan İleri Seviyeye  kursuma kayıt olmanızı tavsiye ederim.

FullStack web geliştiriciler hangi web programlama dillerini kullanabilirler?

Bir çok web programlama platformu mevcuttur. Bunlardan en çok bilinenleri;

  • funduszeue.info Web Form
  • funduszeue.info Mvc
  • funduszeue.info Core Mvc
  • Php
  • Java
  • NodeJs
  • Ruby on Rails
  • Python (Django, Flask)

Şeklindedir.

Eğer hedefiniz kurumsal bir firmada çalışmak ise bu durumda daha popüler olan web programlama dillerini tercih etmeniz gerekir ki; Türkiye şartlarında en popüler web programlama dillerinden biri funduszeue.info mvc ‘dir.

funduszeue.info Web form ile funduszeue.info Mvc platformlarını karıştırmamak gerekiyor. funduszeue.info Mvc yapısı birçok popüler web programlama alternatifleri ile aynı yapıyı yani "model-view-controller" yapısını kullanmaktadır.

Web tasarım ve Web Programlama derslerini içeren 62 saatlik "Komple Uygulamalı Web Geliştirme" kursuma kayıt olarak bir full-stack web geliştirici olabilirsiniz. funduszeue.info derslerini ayrıntılı bir şekilde anlattığım bu kurs size funduszeue.info platformunu detaylı bir şekilde öğretecektir.

Kursumuzda bir çok dinamik uygulama yapmaktayız. Öne çıkan uygulamalardan bazıları Blog ve Ürün katalog uygulamasıdır. Yönetim paneli dahil üyelik sistemlerini, alışveriş süreçlerini, ürün ekleme, silme, güncelleme ve listeleme işlemlerini anlattığım bu uygulama örnekleri ile vakit kaybetmeden funduszeue.info yapısını öğrenin.

Microsoft, funduszeue.info mvc nin yanında cross platform olarak yani windows haricindeki işletim sistemlerinde de funduszeue.info uygulamalarının geliştirilmesi ve host edilebilmesi için funduszeue.info core yapısını geliştirmeye başlamıştır.

Eğer ki funduszeue.info core ile ister IOS ister Linux ortamında uygulama geliştirmek isterseniz sadece funduszeue.info core platformuna özel detaylı 34 saatlik Asp .Net Core 2 Mvc Kursu : Sıfırdan İleri Seviyeye kursuma katılabilirsiniz.

funduszeue.info Core yapısını öğrenenler için bir diğer tavsiye ettiğim kurs ise Katmanlı Mimari ile E-Ticaret Kursu: Core Mvc isimli kursumdur. Katmanlı Mimari ile E-Ticaret Kursu: Core Mvc kursumda core mvc projelerimizi katmanlı mimari ile Repository Pattern' ını kullanarak geliştirmeyi öğreniyoruz ve kursumuzda baştan sona bir e-ticaret projesini katmanlı mimari ile geliştirip ödeme sistemi dahil her aşamasını yönetiyoruz.

Dinamik web uygulamaları için iyi bir veritabanı bilgisine ihtiyacımız vardır ve Microsoft ürünlerini kullanarak web, masaüstü,mobil uygulamalar için kullanabildiğimiz Entity Framework Core yapısını detaylı bir şekilde anlattığım Baştan Sona Entity Framework Core Dersleri isimli bir kursum daha mevcut.

Yazılım dili öğrenmek için nasıl çalışmalıyım?

Yazılım öğrenmek için doğru kaynağa ulaştım ve ne öğrenmem gerektiğine karar verdim diyorsanız artık yazılım öğrenme sürecine disiplinli bir şekilde başlayabilirsiniz. Size bazı tavsiyelerim olacak;

  • Konuyu ilk başta çalışın ve mutlaka öğrendiklerinizi yazıp deneyin.
  • Ezberleme yolunu asla tercih etmeyin. Sadece anlayın ve yaptığınız uygulamaları mutlaka arşivleyin ve ihtiyaç halinde kendi kaynaklarınızdaki örneklerden yardım alın bunda hiç bir sorun yok önemli olan anlamanız zaten zamanla bakmadan da yapabiliyor olacaksınız. Bu yüzden en başta konuları iyicene özümsemeden ezberlemenizin size hiç bir faydası olmaz hatta sizi yavaşlatıp bu işten soğutabilir.
  • Bir gün de saatlerce çalışmak yerine gün içinde daha az vakit ayırarak çalıştığınız gün sayısını arttırın. Zamana yayarak çalıştığınızda mutlaka anlamanız daha kolaylaşır.
  • Anlamadığınız bir konunun üzerine mutlaka gidin sakın vazgeçmeyin.
  • Youtube ya da başka kaynaklardan düzensiz olarak farklı farklı kaynaklara bakarsanız kafanız çok kolay bir şekilde karışabilir bu yüzden doğru kaynak üzerinden ilerleyin.
  • Karşılaştığınız bir problemde hemen sormak yerine mutlaka araştırma yapıp sorunu kendiniz halletmeye çalışın.

Umarım "yazılıma nereden başlamalıyım" yazımız size faydalı olmuştur.

Yazılım Öğrenmeye Nereden Başlamak Gerek?

Kodcu Herifolarak WebTekno'da yine çok merak edilen bir konuya parmak sokuyoruz. Son zamanlarda çok sık sorulan "Yazılım öğrenmek isteyen, yazılımcı olmak isteyen yada bir proje yapmak isteyen kişiler yazılım öğrenmeye nereden başlamalıdır?" sorusuna cevap veriyoruz.


Yazılım Öğrenme Kaynakları

Daha önce ki bir kaç yazıda da belirttiğim gibi yazılımı farklı kaynaklardan öğrenebilirsiniz. Bu kaynakları başlıca okul, kurs, kitap, görsel eğitim setleri ve internet siteleri olarak sıralayabiliriz.

Bu kaynaklara daha sonra ki yazılarımızda daha ayrıntılı bir şekilde gireriz fakat kendi kendine yazılım öğrenmek isteyenler için yazılıma başlama noktası çok büyük sıkıntı olduğunu belirtmekte fayda var. "Yani başlasam devamı gelecek kesin ama nereden başlayacağımı bilmiyorum" durumu söz konusu.

Önce Seçiminizi Yapın

Bir yazılımı öğrenmeye nereden başlamanız gerektiğini bulmaktan önce karar vermeniz gereken en önemli nokta Web sitesi mi, Windowsiçin program mı yoksa mobil platformlar için uygulamalar yapmak mı istiyorsunuz buna karar verin.

Son yıllarda mobilde ciddi bir sıçrama var, herkes mobil uygulama geliştirip paranın dibine vurmak istiyor. Hele ki o Flappy Bird oyununu yapan eleman yüzünden mobil uygulama yapıp, gecede 50 bin dolar kazanmayı düşünüp, uygulama yaptıktan sonra "bir zamanlar fakir ama gururlu bir genç vardı İşte o mobil uygulama yaptı ve b.k gibi para kazandı" sahnesinin hayalini kuranlar baya bir arttı. Böyle bir sahneyi yaşama ihtimalinin çok büyük oranda şans olduğunu, bu nedenle yazılımı kesin çok para kazanacağınızı düşünerek değil sevdiğiniz için yapın diye defalarca dile getirdim.

Kendinizi Test Edin

İzlediğim bir konferansta seyircilerden biri konuşmacıya soru sorarken şunu söylemişti "Ben grafikerim. Yazılım öğrenmeye çok çabaladım, çok uğraştım fakat öyle bir yeteneğim olmadığını sonunda anladım". Bu sözü duyana kadar yazılımın yetenek gerektiren bir şey olduğunu hiç düşünmemiştim. Çünkü bir şeyi başarmak için tek yapılması gerekenin başarana kadar çalışmak olduğuna inanan biriyim. Dolayısıyla söz konusu yetenek o şeyi başarmak için gösterdiğiniz çabadır. Fakat herkesin başarana kadar çaba göstereceği şeylerde farklıdır. Yani bir kişi yazılımcı olmak için gerektiği kadar çaba göstermeyip, grafiker olmak için gösterebilir. 

Bu nedenle sizde "acaba ben yazılımcı olabilir miyim? Bende o yetenek yada gerekli çabayı gösterebilecek azim var mı?" sorularını soruyorsanız kendinizi en kolay kodlama dilleri olan HTML ve CSS 'yi öğrenerek test edebilirsiniz. HTML ve CSS 'in yazılım dilleri olmadığını belirtmekte fayda var. Bu iki dil dinamik değil statik dillerdir, dolayısıyla HTML ve CSS vesilesi ile bir butona tıklandığında bir işlem yaptıramazsınız. Sadece görsel işlemler yapabilirsiniz. Bu sayede "Fatal Error", "Error Code: " gibi hatalar almaz, kafanız karışmaz, siniriniz bozulmaz. 

Yazılıma Geçiş Aşaması

HTML ve CSS, Matematiğin çarpım tablosu gibidir. Eğer HTML ve CSS 'yi uğraşmanıza rağmen anlamıyorsanız Kosinüs, Sinüs gibi konuları da anlamanız çok zor demektir. Eğer HTML ve CSS 'i severek, merakla, azimle, zevk alarak ve sıfırdan basit bir web sayfası yapabiliyorsanız yazılıma geçebilirsiniz.

"Yok ben HTML ve CSS ile uğraşmayayım, direk yazılıma geçeyim" derseniz de yazılımcı olabilirsiniz. Fakat Web Yazılımcı olamazsınız. Çünkü funduszeue.info yada PHP öğrenip web yazılım yapmak istemeniz durumunda kesinlikle HTML ve CSS 'te bilmek zorundasınız. Windows ve Mobil uygulama yapmak için HTML ve CSS bilmek hayati önem taşımıyor fakat dediğim gibi bu durumda yazılım öğrenmeye çalışmanız en azından yazılım mantığını daha zor anlamanıza neden olabilir.

Kesinlikle Proje Üretin

Bir yazılımı öğrenmenin en ideal yolu proje üretmektir. Sıfırdan, tek başınıza basit bir proje üreterek yazılımı çok daha verimli bir şekilde öğrenirsiniz. Örneğin Web yazılım için sıfırdan blog sitesi yazmaya çalışın, mobil için matematik testi hazırlayın, Windows için ajanda programı yapın. Bunların para kazandırıp kazandırmayacağını yada işinize yarayıp yaramayacağını düşünmeyin. Sadece yazılımı öğrenmek ve kendiniz geliştirmek için yapın

Çünkü yapmaya çalıştığınız o küçük proje sayesinde bir amacınız olur ve o amaca ulaşmaya çalışarak öğrenirsiniz. Örneğin blog sitesi yapacaksınız diyelim. Direk aklınıza şunun gelmesi lazım; "bir yazı yazıcam ve bunu veri tabanına kayıt etmem gerekicek. Bunu nasıl yaparım?" sonra gireceksiniz Google'a, öğrenmeye çalıştığınız kodlama dili ile ilgili "veri kayıt işlemi" tarzında arama yapacaksınız. Çıkan sonuçlardan size hitap eden bağlantılardaki anlatımları inceleyecek ve anlayarak uygulayacaksınız. 

Bu anlatımlarda adam size "if metodunu kullanıyoruz" diyecek, sizin bu durumda "if metodu nedir?" diye merak etmeniz gerekecek ve tekrar Google 'a girip "if metodu nedir?" diye arama yapacaksınız. Orada çıkan bağlantılardaki anlatımlarda "String" kelimesini kullanacak bu sefer gidip "String nedir?" diye araştıracaksınız. Bu yüzden Bir Yazılımcı Nasıl Düşünür? başlıklı makalemde yazılımcı meraklı bir düşünce yapısına sahiptir dedim.

SONUÇ

WebTekno 'da yazılımla ilgili yazılarıma yapılan yorumlarda iki şey dikkatimi çekiyor. Yazılım öğrenmenin zorluğundan ve sektörel sıkıntılarından bahsettiğim konularda, yazılım bilmeyenler şevklerinin kırılmalarından, yazdığım kadar sıkıntılı olamayacağından dem vururken, yazılımı bilen ve yazılım ile uğraşan kardeşlerim yazdıklarıma sonuna kadar katılıp, yazdıklarımdan daha karanlık bir tablo çizen yorumlar yapıyor=)

Ben bu zamana kadar hiç bir makalemde yada yorumumda "sakın yazılımcı olmayın, yazılım kötüdür" demedim. Sadece yazılımcılık yolunda yürürken, yazılım vesilesiyle havada duran paraya odaklanıp yürürseniz, önünüzdeki taşları göremezsiniz ve en kısa sürede düşersiniz. Benim yazılarımın amacı size önünüzdeki taşları göstermek. İlk defa söylemiyorum, muhtemelen son kez de olmayacak; Her ne yapmak istiyorsanız onu en iyi şekilde yapmak için elinizden gelen en iyi çabayı gösterin ve asla vazgeçmeyin.

Kodcu Herifolarak WebTekno 'da bir yazımızın daha sonuna geldik gençler. Bir sonraki yazıda tekrar görüşene kadar kendinize iyi bakın

Emoji İle Tepki Ver

nest...

çamaşır makinesi ses çıkarması topuz modelleri kapalı huawei hoparlör cızırtı hususi otomobil fiat doblo kurbağalıdere parkı ecele sitem melih gokcek jelibon 9 sınıf 2 dönem 2 yazılı almanca 150 rakı fiyatı 2020 parkour 2d en iyi uçlu kalem markası hangisi doğduğun gün ayın görüntüsü hey ram vasundhara das istanbul anadolu 20 icra dairesi iletişim silifke anamur otobüs grinin 50 tonu türkçe altyazılı bir peri masalı 6. bölüm izle sarayönü imsakiye hamile birinin ruyada bebek emzirdigini gormek eşkiya dünyaya hükümdar olmaz 29 bölüm atv emirgan sahili bordo bereli vs sat akbulut inşaat pendik satılık daire atlas park avm mağazalar bursa erenler hava durumu galleria avm kuaför bandırma edirne arası kaç km prof dr ali akyüz kimdir venom zehirli öfke türkçe dublaj izle 2018 indir a101 cafex kahve beyazlatıcı rize 3 asliye hukuk mahkemesi münazara hakkında bilgi 120 milyon doz diyanet mahrem açıklaması honda cr v modifiye aksesuarları ören örtur evleri iyi akşamlar elle abiye ayakkabı ekmek paparası nasıl yapılır tekirdağ çerkezköy 3 zırhlı tugay dört elle sarılmak anlamı sarayhan çiftehan otel bolu ocakbaşı iletişim kumaş ne ile yapışır başak kar maydonoz destesiyem mp3 indir eklips 3 in 1 fırça seti prof cüneyt özek istanbul kütahya yol güzergahı aski memnu soundtrack selçuk psikoloji taban puanları senfonilerle ilahiler adana mut otobüs gülben ergen hürrem rüyada sakız görmek diyanet pupui petek dinçöz mat ruj tenvin harfleri istanbul kocaeli haritası kolay starbucks kurabiyesi 10 sınıf polinom test pdf arçelik tezgah üstü su arıtma cihazı fiyatları şafi mezhebi cuma namazı nasıl kılınır ruhsal bozukluk için dua pvc iç kapı fiyatları işcep kartsız para çekme vga scart çevirici duyarsızlık sözleri samsung whatsapp konuşarak yazma palio şanzıman arızası