Her sektörün kendi guru, üstad, pir olarak görülen zatları var. Yazılım sektöründe de durum farklı değil. Şöyle başımızı kaldırıp devleşmiş bir üstada baktığımızda, bu adam nasıl bu kadar yetenek, kabiliyet, bilgi ve beceri sahibi olabildi diye bir soru aklımıza gelir. Aynı zamanda kendimizin bu devin yanında ne kadar küçük kaldığımızı görür, saklanacak bir yer aramamıza bile gerek kalmadan onun yanında kaybolup gideriz. Örnek mi ver diyorsunuz: Robert C. Martin, Kent Beck, Peter Norvig. Ne milletten oldukları önemli değil. Bu listede birgün mutlaka Türk yazılımcılarının da ismi yer alacak. Önemli olan nasıl üstadlaşabildikleri.
Bir yazılımcı üstad olarak mı doğdular? Yoksa ultra zekiler mi? Yaratan onlara daha mı özen gösterdi? Eğer öyle ise, neden ben ya da siz değil de, onlar? Bu soruların cevabı düşündüğümüzden daha kolay. Sizden ve benden bir farkları yok. Aynı fizyolojik özelliklere sahibiz. Onları farklı kılan bir sey var: üstad olmanın bedelini ödediler. Bu bedeli nasıl ödediklerini inceleyelim.
Noel Tichy’nin kişisel gelişim için tanımladığı üçlü çemberi tanıyor musunuz?
Noel Tichy’ye göre kişisel gelişimin sağlandığı saha Learning Zone olarak isimlendirdiği ikinci çember. Bu çember bireyin yetenek, bilge ve becerilerinin yetmediği alanı tanımlıyor. Birey bu sahaya geldiğinde, daha önce tanımadığı şeylerle karşılaştığı için bunları öğrenmek zorunda kalıyor. Comfort zone olarak tanımlanan en içteki cember bireyin kendisini geliştirmesinin mümkün olmadığı saha, çünkü birey bu sahada hakim olduğu aktiviteleri tekrarlıyor. Bildiği şeyleri tekrarlaması ona bir şey katmıyor. En dışta bulunan çember, bireyin olup bitene anlam veremediği, gidişatı kavrayamadığı, kısaca karşılaştığı durumun onu panik ettiği sahayı tanımlıyor.
Kendimizi geliştirebilmemiz için Comfort Zone’dan çıkıp, Learning Zone’a girmemiz gerekiyor. Bu ne yazık ki o kadar da kolay bir şey değil. Birincisi Comfort Zone’dan çıkmak demek, bilinmeyene doğru gitmek demek. Buna birey içgüdüsel olarak karşı koyabilir, çünkü bu geçiş bireyin içinde huzursuzluk ve tedirginlik yaratabilir. Ayrıca bu geçis bireyi akli ve ruhi açıdan çok zorlayabilir. İkincisi Learning Zone’un yeri devamlı değişiyor. Ne zaman Learning Zone’da, ne zaman Panic Zone’da olunduğunu kestirmek kolay olmayabiliyor.
Bireyin kendisini devamlı zorlayarak Learning Zone içinde kalmaya çalışması kısaca acı çekmesi anlamına gelmektedir. Kendi kişisel gelişimi için icat ettiği tüm aktiviteleri Learning Zone’da kalacak şekilde şekillendirmesi gerekmektedir. Bu bireyi zihinsel ve ruhsal olarak çok yorar. Devamlı sınırları zorlamak kolay değildir. Ama sınırları devamlı zorlamadan kişisel gelişimde yol kat etmek mümkün değildir.
Beşer ile üstad arasındaki fark burada yatmaktadır. Müstakbel üstat emin adımlarla her daim Learning Zone ve Panic Zone’da cirit atarken ve bunu yıllar boyunca hiç yılmadan yaparken, beşer yer, içer, yatar ve üstadlara hayran olur, ama kendisinin bu yüksekliklere ulaşmasının imkansız olduğunu düşünür, çünkü ya Learning Zone’un varlığından bihardir ya da sınırları devamlı zorlayacak cesareti yoktur. Beşer olarak hayatını sürdürür, üstad gibi ölümsüzleşmenin sadece rüyasını görebilir. Ama bir üstad olmak düşündüğü kadar zor değildir.
Bir örnek üzerinde bir programcının Learning Zone’a nasıl geçip, orada kalabileceğine değinmek istiyorum. Yazılımda usta ya da üstad olmanın bir yolu da iş haricinde pratik yapmaktan geçer. Bunun en iyi örneğini kod kataları teşkil eder. Programcı bir katayı ilk defa uyguladığında hemen Learning Zone’a geçer. Katayı her tekrarlayışında tekrar tekrar Learning Zone’a geçtiğine şahit olur, çünkü her tekrar ona yeni bir şeyler öğretir. Belli bir zaman sonra programcı öğrenebileceği birçok şeyi öğrenir ve içinde bulundugu Learning Zone onun için Comfort Zone haline gelir. Artık Learning Zone’un yeri değişmiştir. Programcının katayı harfiyen tekrar tekrar uygulaması ona yeni bir şeyler katmaz. Artık tekrar katayı değiştirerek yeniden Learning Zone’a geçmesi gerekmektedir, aksi taktirde olduğu yerde saymaya başlayacaktır. Programcı örneğin katayı başka bir programlama paradigması ile yeniden şekillendirebilir. Bu programcıyı tekrar Learning Zone’a katapult eder. Programcı yepyeni bir dünyayı keşfetmeye ve kişisel sınırlarını zorlayıp, aşmaya başlar.
Kendimden bir örnek vereyim isterseniz. Bu satırları yazarken Learning Zone içindeyim, çünkü düşüncelerimi ifade edebilmek için muazzam zorlanıyorum. Bunu hissediyorum. İçimde devamlı bir güç yazıyı yarım bırakarak yazmamı engellemeye çalışıyor, çünkü gidişattan hoşnut değil. Tanımadığı bir şeyler olup bittiği için zorlanıyor ve beni yazmaktan alıkoymaya çalışıyor. Bu güç benim Comfort Zone’da geride bıraktığım yazı yazma yetilerim. Onları geliştirmek için bu ve bunun gibi bir milyon yetmiş altı bin sekiz yüz doksan yedi yazı daha yazmam gerekiyor. İşte bu güç bunun bilincinde olduğu için, neden acı çekip Learning Zone ya da Panic Zone’da kalmak istiyorsun diyor ve beni devamlı Comfort Zona’a geri çekmeye çalışıyor.
Üstad olarak gördüğümüz her şahıs bu hale gelebilmek için yeterince acı çekip, bedelini ödedi. Bu acılar sadece bir iki gün, bir iki hafta, bir iki ay ya da bir iki yıl değil, onlarca yıl çekildi. Peter Norvig “Kendine on senede programlamayı öğret başlıklı yazısında her hangi bir dalda ustalaşmanın on sene gerektirdiğini söylüyor. Altını çizdiği ve bu yazının konusu olan bir şey daha söylüyor:
“The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.”
Kabaca tercüme edecek olursak: “Tartarak pratık yapmak işin sırrı: sadece tekrarlamak değil, mevcut sınırları zorlayacak bir aktivite seçip denemek, analiz etmek ve hataları düzeltmek ve akabinde tekrar etmek ve tekrar etmek.”
Üstat olmak imkansız değil. Bunun için yüksek IQ ya da yetenek gerekli değil. Ama acı çekip bedelini ödemeden kimse olamaz.
EOF (End Of Fun)
Özcan Acar
Yazılım Hakkında Genel Düşünceler kategorisinden son yazılar
- Sekiz Milyar Değişik İşletim Sistemi - July 23rd, 2022
- Gitflow ve Verdiği Zararlar - October 8th, 2021
- Çevik Süreçler Neden Dikiş Tutturamadı - February 14th, 2020
- Bilginin Evrimi - October 29th, 2019
- Yazılım Dünyasının Hızlı Çözüm Üretmek İle Olan İmtihanı - October 4th, 2019
- Yazılım Camiasından Son Gelişmeler ve Gidişat - April 30th, 2019
- Alan Borcu (Domain Debt) - January 29th, 2019
- Neden Debug Yapmak Yazılımın En Kötü Alışkanlıklarından Birisidir - March 20th, 2018
- Yeni Teknolojileri Öğrenme Konusunda Nasıl Bir Yol Haritası Oluşturmalıyım? - August 4th, 2017
- Neden Programcılık Harici İşlerle Uğraşmak Daha İyi Bir Programcı Olmayı Sağlar - June 4th, 2017
Dursun Çimen
13 Ağustos 2012Merhaba abi kaleme aldığın tüm yazılar itinayla takip ediyorum. Üniversitede eğitim veren bölüm hocalarımızdan çok çok tecrübeli ve eğiticisin abi. Keşke diğer yazılımcılarda böyle tecrübelerini ortaya koyabilseler bencillik yapmadan. Başarılanın devamını dilerim abi.
bayram ucuncu
13 Ağustos 2012Güzel bir yazı üstat,
Bu acıyı çekmek zor ama karşılığını aldığım için zevkli. Yazının dikkat çekici noktalarından biri, learning zone’da insanın yapmaya zorlandığı şeylerin, içindeki reddetme dürtülerini tetiklemesi. Bu kesinlikle doğru. Şu an önümüze 10 soruluk fizik testi koysalar merakla testi elimize alırız. ama bir ve ikinci sorudan sonra reddetme aşamasına geçeriz. Çünkü fizik bilgimiz eksik veya yoktur. Fizik uzmanıysak zevkle testi bitirebiliriz.
Bütün öğrenicilerde de durum böyledir. Ne gerek var diyerek reddedenler eleniyor. İnatla öğrenme aşamasını tamamlayanlar başarıya ulaşıyor.
Bana göre başarı hedefe ulaşmaktır. Umarım inatla öğrenme isteği olan herkes birgün başarıya ulaşır.
mabulgu
14 Ağustos 2012Pratik yapmak kesinlikle başarıya giden yolda en önemli etmen. Ancak bazıları bunun yanında “doğru zamanda, doğru yerde doğmanın” da etkili olduğunu savunuyor.
Malcolm Gladwell’in “Outliers(Çizginin Dışındakiler)” adlı kitabında bu konudan etraflıca bahsedilmiş:
http://www.idefix.com/kitap/outliers-cizginin-disindakiler-malcolm-gladwell/tanim.asp?sid=GYCBKKDP153SSIGTQTWE
Kitap hakkında:
http://www.tegep.org/tegep/eep/ContentDetails.aspx?ID=10
http://www.javaturk.org/?p=1763
http://www.misjournal.com/?p=3821
Aslına bakarsanız ben de etnik etmen ve doğru yerde doğru zamanda doğmanın dinamiklerinin oldukça etkili olduğunu düşünüyorum. Doğru yerde doğru zamanda doğmayanlar hep daha çok çaba sarfetmek, daha çok pratik yapmak zorunda, ki o kişilerin zone çemberleri düzeyi -çemberi 3 boyutlu bir sistemde(x,y,z), x ve y düzlemi üzerinde düşünürsek, z düzleminde- daha aşağılardan başlıyor. Böyle olunca da kişi Learning Zone’da çok fazla öğrenilecek şey olmadığından, kıyıda kalıp uzak denizlere açılamadığından(misal 10 sene önce internet kullanımı Türkiye’de bugünkü gibi değildi, istediğimiz zaman hepimiz google’a yazılım ile ilgili birşey yazıp araştıramıyorduk, ama ABD’de bu mümkündü), Comfort Zone’da daha çok takılıp kalıp, başarıya uzak kalıyor.
Ben bu çemberin ancak diğer ülkeden, etnik gruplardan insanlarla sosyal iletişimi artırarak -bahsini ettiğim z düzlemi üzerinde- yükseltilebileceğini düşünüyorum. Normalde iletişim kişisel başarıda çok büyük bir yer alıyorken, bunun sadece yaşanılan ülke insanları ile ilgili değil de global bir biçimde yapılması Malcolm Gladwell’in bahsini etttiği negatif parametre değerini azaltacak ve kişi sadece yurt içi değil, yurt dışı başarıyı da yakalayarak o gıptayla izlediği (biz yazılımcılar için Robert C. Martin, Martin Fowler,Peter Norvig, Kent Beck, Alaistair Cockburn… ve daha niceleri) üstatlardan biri olacaktır.
Başarıda iletişimin önemini vurgulayan bu kitabı tavsiye ederim:
http://www.idefix.com/kitap/asla-yalniz-yeme-basariyla-basarisizlik-arasindaki-ince-cizgi-iliskinin-gucu-keith-ferrazzi/tanim.asp?sid=K5YC3E0U3Y5Y85CIRH6L
Bunu Türk yazılımcılar olarak bahsettiğim global iletişime uygulayabilirsek, Özcan Hoca’nın da bahsettiği gibi üstatlar listesinde birgün mutlaka Türk yazılımcılarının da ismi yer alacak.
Bana göre biz yazılımcılar için bunu uygulamanın yolları:
*İyi bir İngilizce’ye sahip olmak. (Eric S. Raymond’ın Üstatlık Felsefesi’nde de bundan bahsedilmekte)
*Sadece yurt içinden üstatları değil, yurt dışında yaşayan üstatların bloglarını da takip etmek.
*Sadece yurt içinde değil özellikle yurt dışında yapılan Code Retreat, Coding Dojo (birlikte kod kata çalışmaları), ve diğer etkinliklere olabildiğince katılmak.
*Bu etkinliklere katılamayanlar için, katılabilenlerin topluluk ortamlarında(forum, blog vb.) ayrıntılı bir biçimde bu etkinliklerle ilgili yaşadığı deneyimleri anlatması, kısaca köprü olması(Bu konuda Özcan Hoca’nın çalışmalarını takdir etmekte, yakından takip etmekteyim.)
*Tüm bu öğrenilenlerin yurt içinde de uygulanması, yurt dışından bu etkinliklere katılımcı, misafir üstat çağırılması.
Deniz aşırı bu ilişkiler geliştikçe Learning Zone’a yeni to-learn nesneleri eklenecek ve zone seviyesi eşitlenecek ya da eşit denilebilecek seviyeye gelecek diye düşünmekteyim. Gerisi de Özcan Hoca’nın bu makalesinde bahsettiği gibi bizim kişisel çabamıza, pratiğimze kalmış. Ancak sürekli olarak Learning Zone’da kullanılacak bilgiyi genişletmek, beslemek gerek.
Bu konuda Türk üstatlarımızdan öncülük etmelerini beklemeliyiz, öncülük edildiğinde ise her türlü girişime, desteğe, yardıma açık olmalıyız.
Not;
Kendi Learning Zone’umun genişlemesinden bir örnek. Lütfen makaleleri önceden okuduysanız da sadece sıraya dikkat edin:
1-http://www.kurumsaljava.com/2012/04/07/kod-kata-ve-pratik-yapmanin-onemi/
2-http://www.kurumsaljava.com/2012/07/07/bugun-neler-ogrendim/
3-http://www.kurumsaljava.com/2012/07/20/kodkata-com/
4-http://kodkata.com/kod-kata-nedir/
5-https://www.google.com.tr/search?q=code+kata&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:tr:official&client=firefox-a
6-http://content.codersdojo.org/
Selman
15 Ağustos 2012“Bütün mesele” ye dair bir yazı, Güzel noktalara değinmişsiniz, farklı açılardan bakmışsınız.
Aslında “Bütün mesele” Mario Puzo’nun “Yazmanın bütün sırrı yeniden yazmaktır” demesi gibi.
Bu konuda benzer fikirler karalamıştım;http://www.selmangun.com/2012/05/yazmanin-butun-sirri-yeniden-yazmaktir/
Pingback: Ucuz Etin Yahnisi | Mikrodevre.com
tuna
21 Ekim 2013Guzel bir yazi. Tebrikler
Hakan Müştak
22 Ekim 2013Süper bir yazı! Masama asacağım!
Pingback: Memur Zihniyeti! | YAZILIMCI NOTLARI..
Pingback: CraftSummit’15 – Yazılım Ustalığı Konferansı | Kadın Yazılımcı
Ogrenci
06 Şubat 2017Teşekkürler değerli fikirleriniz için, beni aydınlattığınız için