Yazılım - Uygulama geliştirme süreçlerinin mekanik unsurları olan Geliştiricilerin (Developers) karşılaştıkları sorunları aşmak için kullandıkları bir çok yöntem vardır. Örnek olarak; bir hata aldığınızda (exception);

  1. Google'a danışırız.
  2. Anahtar kelimeler ile arama yapıp sorunu çözebilecek kod parçacığını ararız.
  3. Kod parçacığını projemize uygun hale getirip Kopyala - Yapıştır ile sorunu çözeriz! (değişken ve fonksiyon isimleri değiştirilirek)

Harika bir iş çıkardınız değil mi?

Yanlış...

Eğer bu yolu takip ederseniz, en sonunda kopyala yapıştır yöntemi ile birlikte gelen diğer sorunları da aşmanız gerekecektir. Her defasında bu adımları deneyeceksiniz! Peki ya sonra... Projeniz veya modülünüz kontrolden çıkmış bir hal alıp bu işi daha ilerlere götürme hevesinizi başka bir bahara bırakmış olacaksınız!

Peki 5 farklı yol ile çözüm tekniklerini ve kod kabiliyetlerimizi nasıl arttırabiliriz?

1.Google Olmadan da Kod Yazabilmeyi Başarmalısınız.

Bir kod parçacığının, herhangi bir programlama dilindeki döngü tipinin veya bir nesnenin gerçekte tam olarak ne iş yaptığını, nelere etki ettiğini ve daha başka ne amaçla kullanılabileceğini tam olarak anlamanız gerekmektedir. Bu sayede kavrama ve bilgi seviyemizi arttırabiliriz. Örneğin Dosya İşlemleri veya arama modülünüzü geliştirirken karşılaştığınız bir sorunu çözdüğünüzde kullandığınız progralama diline ait Framework - Kütüphane veya API dokümanlarına göz atabilirsiniz!

2.Kapsamı Özetleyin, Konuyu Daha Üst Başlıkla Araştırın

İstinai durumları yönetirken bir çok tipte hata yapısını kullanabilirsiniz. Örneğin bir dosyaya erişemediğinizde karşılaşabileceğiniz FileNotFoundException bir tip olabilir. Bu noktada sadece hatanın çözümü yerine File Handling kapsamı ile sorunu bütünsel ele alarak yola devam edebilirsiniz. Bu prensibi kullanarak; Dosya işlemlerinde nelerden kaçınmanız gerektiğini kavrayabilir, hata ile yüzleşmeden tüm önlemleri yolun başında almış olursunuz!

3.Sorunu Çözmek İçin Her Kaynağa Başvurun

Tüm olasılıkları deneyip sonuca ulaşamadığınızda;
Stackoverflow u kullanarak problemi topluluğa iletebilirsiniz. Sorunuzun daha önceden sorulmadığından emin olmanız faydanıza olacaktır. Reddit - Programlama Öğrenme abonesi olabilir ve daha bir çok kanalı buradan takip edebilirsiniz. Uzmanlığını istediğiniz bir programlama diline ait forumu yakından takip etmeniz bazen bir sorunla karşılaşmadan dahi bilgi havuzunuzdan faydalanmanıza olanak sağlayacaktır.
Sosyal ağlar üzerinde kurulan (LinkedIn, Google+) gruplar aracılığıyla paylaşılan tecrübeleri gözlemleyebilirsiniz!
Blog yazarlarına, arkadaşlarınıza veya öğrenci iseniz öğretmenlerinize her konuda sorabilir, danışabilirsiniz! "Soru soran öğrenci her yerde sevilir..."

4.Kod Depolarından Faydalanın

Başta benim favorim github olmak üzere, kod depolarının haftalık bültenlerine üye olun. Commit - Pull Request - Issues vb. terimlere aşina olmanız hata çözümleme ve takip etme işlemlerinin global versiyonuyla tanışmanıza olanak sağlayacaktır. Kendinize bir hesap açıp ister kod parçalarınızı ister projelerinizi veya notlarınızı bu depolar üzerinden yönetebilir, hız kazanabilirsiniz!

5.Derin Nefes Al, Dışarı Çık, Kahveni Yudumla ve Bakış Açını Değiştir!

Her ne kadar uzman ve kendine güvenen bir yazılım geliştirici olsak da "basiretin bağlandığı" anın farkına varabilecek erdemliğe erişmek yararlı olacaktır. Öylesine ufak bir hata günlerinizi aldığında ve çözüme ulaştığınızda rahatlamadan ziyade pişmanlığın perçinlendiği hisseder, yüreğinizde kopan fırtınaları dindirmeye güç yetiremez olabilirsiniz! Bu durumda yapılabilecek ve yüksek oranda birçok kişide işe yarayan hava, konu ve mekan değişimi tedavisini deneyebilirsiniz! Aşırı odaklanma (ipin ucunu kaçırma) ve kendini tekrarlama yılgınlığını yaşamamak, yeniden zindeliği kazanmak sizi güçlü kılar.

Her zaman yapacak çok işimiz var...