İyi bir programcının hangi özelliklere sahip olması gerekir?

taydin

Yönetici
Yönetici
#1
Bir kere her şeyden önce şunu ifade edelim: Programcılık bir doğal yetenek değildir, yani programcı doğulmaz :D Programcılık, gereken emeği ve sabrı ortaya koyan herkesin öğrenilebileceği bir iştir. O yüzden, burada bir programcının sahip olması gereken özelliklerden bahsederken, sahip olunması gereken yeteneklerden bahsetmiyorum, öğrenilmesi gereken şeylerden bahsediyorum.
 

taydin

Yönetici
Yönetici
#2
===== İNGİLİZCE BİLMEK =====

İngilizce bilmeyen, iyi programcı değildir, bu kadar net söylüyorum! Eğer programcılık yapmak istiyorsanız, ingilizceyi mutlaka öğrenmelisiniz. Konu ile ilgili en iyi kitaplar, en iyi youtube videoları, en iyi internet siteleri hep ingilizcedir. Elektronik komponent üreticilerinin datasheet'leri ve application note'ları ingilizcedir.

Burada izlenecek yöntem ne olmalı? İşi gücü bırakıp bir sene ingilizce öğrenip sonra elektroniğe geri dönmek bence iyi bir metot değildir. Bir yanda ingilizce öğrenmek, bir yandan da elektroniğe devam etmek lazım. İngilizceyi öğrenirken, ingilizce teknik doküman ve videoları da izlemeye çalışmalıyız. Teknik ingilizce, günlük hayatta konuşulan ingilizceden daha kolaydır.

Önemli olan ve acil olan, teknik bir makaleyi okuyup kırk kere sözlüğe bakmadan tam olarak anlamak, teknik bir video'yu seyredip kırk kere pause etmeden, alt yazı açmadan anlamaktır. Kendinizin sıfırdan makale yazması, veya ana dili ingilizce olan birisi ile akıcı muhabbet etmek acil değildir, bunlarda kendinizi yavaş yavaş geliştirebilirsiniz.
 

taydin

Yönetici
Yönetici
#3
===== 10 PARMAK HIZLI KLAVYE KULLANABİLMEK =====

İki parmakla, kuş gagalaması usulü program yazan, iyi programcı değildir! Bu da çok net! Neden mi? Çünkü iki parmakla program yazan, en basit programı yazmak için bile çok orantısız derecede fazla çaba sarfetmek zorundadır. O yüzden çok fazla şeyi denememiş, çok farklı şey görmemiştir, o hızla deneyemez de! Yazımı yavaş olduğu için program yazarken sürekli Copy/Paste yapar, Paste sonrası değiştirilmesi gereken yerlerin hepsini değiştiremez. Copy/paste'den dolayı program satırları iyi hizalanmamıştır, bir sürü gereksiz tab ve boşluk vardır, program dağınıktır, özensizdir.

Peki ne yapmak lazım? 10 parmak klavye kullanımını öğreten yazılımlar var, bunlardan satın alıp hızınızı şöyle dakikada 50 kelime seviyesina çıkarmanız lazım. Usul de ingilizceyle aynı. Her gün belli bir süre 10 parmak klavye çalışılacak, geri kalan zamanda da programcılık ve ingilizceye zaman ayrılacak.
 

taydin

Yönetici
Yönetici
#4
===== İYİ BİR EDİTÖR SEÇMEK VE BUNU İYİ SEVİYEDE KULLANMAK =====

Burada hangi editörü seçmeniz gerektiğini söylemeyeceğim, ama o editörün sahip olması gereken özellikleri belirteceğim:

1) Eğer farklı işletim sistemlerine yönelik program yazacaksanız, editörünüz birçok işletim sistem altında, aynı özellikler ve büyük ölçüde aynı tuş kombinasyonları ile kullanılabilmeli.

2) Eğer gömülü sistemlere yönelik program yazacaksanız, editörünüz RS232 seri terminalde veya SSH/TELNET terminalinde de kullanılabilmeli.

3) Editör, kullanılan programlama diline göre metini renklendirebilmeli (syntax highlighting).

4) Fonksiyonları ve özellikleri çok ayrıntılı bir şekilde özelleştirilebilmeli. Bunun için de kendi özelleştirme dili olmalı.

5) Program derleyicileri ile sıkı bir entegrasyonu olmalı. Örneğin, editör içinden derleme yapıp, ortaya çıkabilecek hata satırlarına sizi kolayca götürebilmeli.

Bu özellikleri sağlayan fazla editör yok piyasada. Ama GNU Emacs ve VIM editörleri bu özelliklerin tamamını sağlıyor.

IDE denen geliştirme ortamlarının editörlerine kendinizi alıştırmayın. Bunlara bağımlı kalırsanız, grafik ortamı olmayan bir sunucu sisteminde çalışırken, sudan çıkmış balığa dönersiniz. Aynı şekilde RS232 seri terminal ile veya SSH ile bağlandığınız uzaktaki bir sistem üzerinde dosyaları düzenleyemezsiniz.

Ben kendim Emacs kullanıyorum. Emacs'i öğrenmek zordur, ilk başta çok söversiniz, ama bir kere alıştıktan sonra kesinlikle bırakamayacağınız, çok güçlü bir programcı editörüdür.
 
Son düzenleme:

theroot

Kayıtlı Üye
#4
Ben de Emacs kullanıyorum, ve arada bir başka editörleri de deniyorum. Ama eninde sonunda Emacs'e geri dönüyorum :rolleyes: En çok gıcık olduğum şey, Emacs'in arama, derleme ve başka sonuçları göstermek için rastgele yerlerde pencere açması. Yeni dosyalar açınca da kafasına göre diğer pencelerin boyutlarını değiştirmesi.
 

taydin

Yönetici
Yönetici
#5
===== ÜZERİNDE ÇALIŞTIĞINIZ İŞLETİM SİSTEMİNİ İYİ TANIMAK =====

Kullandığınız işletim sisteminde "Administratör" olarak yapılması gereken bütün işleri doğru ve uygun bir şekilde yapabiliyor olmalısınız. Program kurulumu/kaldırılması, sistem ayarlarının en optimum çalışmaya uygun hale getirilmesi, sistem servislerinin başlatılıp durdurulması, görev listesine bakınca görülen süreçlerin ne olduğunun veya hangi kategoride olduğunun bilmelisiniz.
 
Üst