Programcılıkla İlgili Akla Takılan Sorular

Merhabalar bu aralar programcılıkla ilgili bir çok soru geliyor onlara biraz olsun sizler için değinmek istedim. İsterim ki bu sorulara yüz yüze cevap vereyim ama elimizden bu kadar geliyor.

S1 : Programcılığı Öğrenmek Zor Mudur?

Evet. Programcılığı kolay öğrenemezsiniz. Hatta, programcılık en zor öğrenilen konulardan biridir. Sabır ve ilgiyle çalışmanız gerekir. ‘Bir deneyeyim bakalım’ diyerek başarıya ulaşma şansınız yoktur. Programcılık bir meslek dalıdır.

S2 : Programcılık bir yetenek midir?

Evet. Programcılık bir yetenek işidir. Bir kişi çok çalışsa, çok şey bilse iyi bir programcı olamayabilir. Programlama analitik düşünme becerisi ister. Ancak piyasa yeteneksiz bir çok programciyla doludur. Yeteneksiz ama çalışkan biri de programcı olabilir. İyi programcı olamaz ama sıradan programcı olur. Ama bir kişi zeki ve yetenekli olmadığı gibi çalışkan ve hırslı da değilse programlamayı öğrenmesi çok zor. Fen bilimlerinde, matematikte yetenekli olanlar programlama da daha şanslı olabilirler. Ancak bire bir ilişki yoktur, fen bilimlerinde yetenekli olup programlamada çok yeteneksiz bir çok kişi bulunmaktadır.

S3 : Çalışıyorum, aptal da değilim ama anlayamıyorum, sorun nerde?

Sorun, matematiği anlayamayanlarınkiyle aynı. Programalamanın belli bir mantığı vardır, onu bir kez kavrayan için gerisi çorap söküğü gibi gelir. Ama temel mantığını kavramak kolay değildir. Tıpkı matematikten anlamayanların aptal olduğunu söylemek yanlışsa (hatta bunu söyleyenlerin aptal olduğunu söylemek daha doğruysa) programlamayı anlayamayanlar için de ‘aptal’ ifadesi yanlıştır. Doğru kaynak, doğru kitap, doğru arkadaş, doğru hoca bulana kadar denenmesi lazım. Programlamayı anlayamacak kadar aptal kimse yoktur. Zeka sadece öğrenmeyi hızlandırır.

S4 : Her şeyi tam olarak anlamadan programlama yapmak doğru mu?

Elbette. Her şeyi anlamak gibi bir saplantı acemi programcılarda görülür. Anlamayak gerekemz, yapabilmek yeterli. Programlama bir bilim değil teknolojidiri. Edison ampulu icat ettiğinde bir çok bilim adamından daha az fizik biliyordu. Ama çalışan faydalı bir çok sonuç üretti. Programlama da böyledir. Programcı bir süre anlamadan bilmeden başkalarınn yaptıklarını taklit etmelidir. Çalışıyorsa, istenen işlevi gerçekleşiyorsa tamamdır. Daha sonra anlamaya, derinlemesine kavramaya çalışılmalıdır. Bir sürü şeyi anlamaya çalışan ama henüz hiç bir şey yapmamış çok sayıda insan bulunmaktadır. Öte yandan hiç bir şey anlamadığı halde çok ciddi programları, ordan burdan çalarak, kopyala yapıştırla, başkalarının yaptıklarını taklit ederek yapan bir çok programcı var. Pisagor bağıntısını anlamak gerekmez. Sadece iki kenar verilince üçüncüyü bulabilmek gereklidir. Matematikçilerden once denizciler Pisagor bağıntısını biliyor ve uyguluyorlardı.

S5 : Progamcılık için mühendislik, fen bilimleri okumuş olmak gerekli midir?

Hayır. Üniversitenin her bölümünden mezun olanlar, öğrenci olanlar hatta hiç bir üniversiteye gitmemiş olanlar da programcılık yapabilir. Çünkü programalamanın okullarda öğretilen şeylerle doğrudan ilgisi yoktur. Elbette üniversitelerde öğretilenlerin kişiye belli bir düşünme, analiz, sentez becerisi kazandırdığı için dolaylı olarak programlamaya yardımcı olduğu söylenebilir. Ancak, mühendislik, fenbilimleri ve matematiğe yetenekli ve bu alanlarda bilgili olanların programlada da başarılı olacağı gibi düşünce doğru değildir.

S7 : Programlama’ya Nerden Başlayabilirim?

En kolay dillerden. Kesinlikle C/C++, Java veya C# gibi ağır dillerden başlanmamalı. Hele C/C++, öğrenilecek en zor dildir. En kolay dil HTML. Hem öğrenmesi hem de çalıştırması kolay. Bir metin dosyası yaratıp içerisine HTML kodu yazın. Çift tıklayın browser çalıştırır. HTML’den sonra JavaScript öğrenin. Daha sonra ASP (.NET),JSP (Java),PHP dillerinden birini öğrenin.

S8 : Hangi Kaynaklardan Faydalanmalıyım?

Programlamaya giriş için önerebileceğimiz bir kitap yok. Aslında hangi dili öğrenebiliyorsanız, çevrenizde hangi dile ait kaynak ve hangi dili bilen insan varsa onu öğrenin. En büyük kaynak Internet ve İnternette en büyük kaynak da Google. Ama aradıklarınızı bulmak için ve bulduklarınızı anlamak için biraz uzmanlaşmanız gerekir. Bu da ancak zamanla olabilecek bir şey.

S9 : İngilizce bilmek gerekli mi?

Şart. Programlamanın dili İngilizcedir. Bütün dokümanlar ingilizce. phpsorunu.com sınırlı içeriğine rağmen Türkçedeki en büyük kaynaklardan biri olmuştur. Bu phpsorunu.com’un başarısı değil, türkçe sitelerin yetersizliğidir. Türkçe içerik sağlayan bütün siteler de büyük ozveri içinde çalışarak bunu sağlamışlarıdr. Ama yeterli değil. Programlama bilmek için ingilizce şart ama hiç bilmeyen biri de programlamaya başlayabilir. Bir yandan programlama çalışırken bir yandan da ingilizce öğrenmek gerekir. Bir kaç yüz kelime basit gramer bilgisi teknik dokümanları okumaya yeterli olur. İngilizce zaten basit bir dil. Teknik dokümanlarda zaten ‘enternasyonal ingilizce’ (yani basit ingilizceyle) yazılmış. Kimse teknik dokümanlarda mecaz, açık ve kapalı istiare yapmıyor. Dahası, programlamada kaynakların çoğunu yazanların ana dili ingilizce değil. O yüzden çok net anlaşılıyor. Özetle programlamaya başlamak için ingilizce bilmek gerekmez ama bitirmek için biraz gerekir.
S10 : Kursa gitmeli miyim?

Kurs şart değil ama faydalı. Yeterli değil elbette kursa gitmekle kalmayıp çalışmak gerekir. ‘Önce kursa gideyim sonra çalışırım’ düşüncesi kesinlikle yanlıştır. Önce çalışıp kursa gitmek daha iyi olur. Ama en pratiği bir yandan kursa gitmek bir yandan da çalışmaktır. Sorularınız soracak bir hoca bulmuşken faydalanmak lazım. Kursların en pahalısı en iyisi demek değildir. Ancak pahalı kurslar daha uzun süre eğitim verirler, kitap ve CD gibi kaynakları iyidir. Öte yandan hocalarının vasat, öğretim yöntemlerinin de belli bir programı takip etmekten ibaret olması olasılığı yüksektir.

S11 : Dil olarak X’i mi tercih etmeliyim Y’yi mi?

Farketmez. Hangi dilin iyi olduğu kişiden kişiye göre değişir. Ama kesinlikle kolay dillerden başlanmalı. Kesinlikle yaygın dillerden başlanmalı. Çok yeni de olmayan çok eski de olmayan diller en uygunu. Yanlış dilden başladığınıza kanaat getirirseniz diğerine geçin. Herhangi bir tanesini bilmek zaten diğerlerini öğrenmeyi kolaylaştırır.

S12 : Programcılık için Bilinmesi Gereken Konular Nelerdir?

Olabildiğince çok dil öğrenin. Bir dille kullanılan diğer dilleri öğrenmek gerekir. Örneğin Java ile Web Programlama yapacaksanız. Java, HTML, JavaScript, CSS, SQL, XML, XSL örenmeniz gerekir. .NET’le Web programama için de aynıları, sadece Java yerine C# veya VB koyun. Kesinlikle ‘Bir dilde veya konuda uzmanlaşayım, diğerleri beni iligendirmez’ demeyin. Zira piyasada her şeyi az buçuk bilenler makbul.

“Programcılıkla İlgili Akla Takılan Sorular” için 0 cevap

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir