Günümüzden geçmişe gidildiğinde karşılaşılan en eski medeniyet yapısı olarak, ülkemizin topraklarında yer alan Göbekli Tepe [1] arkeolojik kalıntılarına ile karşılaşılmaktadır. Birçok bilimci tarafında yapılan incelemelerde bölgenin tapınak, mezarlık ya da beslenme alanı gibi çeşitli çıkarımlar yapılmıştır. Fakat kesin bir çıkarım yapılmasına neden olacak bir bulgu ile karşılaşılamamıştır.

Image for post
https://www.goturkey.com/destinations/gobeklitepe

Göbekli Tepe, hangi amaç ile yapıldığı ile ilgili net bir bulgu olmasa da toplum kültürünün ve meslek ustalığının ortaya çıkışının belirgin örnekleri vardır. Çünkü 40 ile 60 tonluk kaya parçalarının şekillendirilmesi ve kabartmalarının oluşturulması, taş ustalığının bir meslek oluşmasına örnek verilebilir. Aynı şekilde 22km ile 15km çap alan uzaklığından çalışmaların birçok insan ya da yöntem ile taşınmasının sağlanması, bir kültürün ve toplumun oluştuğunu söyleyebilmemize olanak sağlamaktadır.

Ülkemiz topraklarında başlayan ustalık ve kültür kalıntıları, günümüzde çeşitli isimler alsa da bulunduğumuz takım ya da topluluğun kültürü ve meslek ile zaman içerisinde varlığını göstermektedir. Zamanın öncesin de taş ustalığı gibi meslekler hayattın içinde önemi yüksek olurken, günümüzde yazılım geliştirme mesleği de bir o kadar hayattın içinde ve bir o kadar değer katıyor.

Yazılım geliştirme, bu topraklarda başlamadıysa da kültür ve meslek olarak dünyanın başka bir yerinde ustalaşma evresine gelmiştir. 2009 yılında yazılım geliştirme mesleğinde bir ustalık ürünü olduğunu kabul eden bir grup insan, “Yazılım Ustalığı (Zanaatkârlığı) Manifestosu” [2] isimli yayını yayınladı. Bu yayın ile yazılım geliştirme mesleğinin ustalığının değerlerini ortaya koydular.

Sadece çalışan yazılıma değil, ustaca üretilmiş yazılıma da

Sadece değişikliğe cevap vermeye değil, sürekli değer katmaya da

Sadece bireylere ve etkileşimlere değil, profesyoneller topluluğuna da

Sadece müşteri ile işbirliğine değil, üretken ortaklığa da

Değer vermeye kanaat getirdik. Sol taraftaki maddeleri takip etmekle birlikte, sağ taraftaki maddeleri vazgeçilmez bulmaktayız. [2]

Yazılım geliştirme ustalaşma sürecinde sektöre yön verilmesi ile ilgili çalışan kişilerin izinden gittiğiniz de yazmış oldukları bazı kitaplarda konu ile ilgili aşağıdaki şekilde bahsetmişleridir.

Martin Fowler, “Refactoring” [3] kitabında söyler ifade ediyor;

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.

Herhangi bir insan bilgisayarın anlayabileceği kod yazabilir. İyi programcılar ise insanların anlayabileceği kod yazarlar.

Max Kanat-Alexander, “Code Simplicity” [4] kitabında söyle ifade ediyor;

The difference between a bad programmer and a good programmer is understanding. That is, bad programmers don’t understand what they are doing, and good programmers do. Believe it or not, it really is that simple.

İyi programcıyla kötü programcı arasındaki fark anlamadır. Yani kötü programcılar ne yaptıklarını anlamazlar, iyi programcılar ise anlarlar. İster inanın, ister inanmayın ama bu gerçekten bu kadar basittir.

Laurie Sparham/Amazon Studios
Rosamund Pike as Marie Curie in Marjane Satrapi’s “Radioactive.” Laurie Sparham/Amazon Studios

Yazılım ustalığı değerleri ve olgunlaşma sürecinde yol göstericileri ile sürekli öğrenme yoludur. Bu ustalık süreci Nazım’ın “Yaşamaya Dair” [5] şiirinde belirttiği gibidir. Bazen bir hastane projesinde hasta ve doktorların işlerini basitleştirirken, bazen de bir uçağın tüm bakımlarının ve bakımı yapan kişilerin süreçlerini takip edecek ve insan yaşamlarını kurtaracak kadar önemlidir.

Yasamak sakaya gelmez,

Büyük bir ciddiyetle yasayacaksın

Bir sincap gibi mesela,

Yani, yasamın dışında ye ötesinde hiçbir şey beklemeden

Yani, bütün işin gücün yasamak olacak.

Yaşamayı ciddiye alacaksın,

Yani, o derecede, öylesine ki,

Mesela, kolların bağlı arkadan, sirktin duvarda,

Yahut kocaman gözlüklerin,

Beyaz gömleğinle bir laboratuvarda

İnsanlar için ölebileceksin,

Hem de yüzünü bile görmediğin insanlar için,

Hem de hiç kimse seni buna zorlamamışken,

Hem de en güzel,

En gerçek şeyin yasamak olduğunu bildiğin halde.

Bizler alaylı ya da mektepli olarak ayrılarak değil, bu mesleği bir kültür ve ustalığa giden bir yol olarak görmeliyiz. Çünkü bu süreç için atacağımız her adım, yazılım geliştirme topluluğunun ustalaşmasını, kültürünü geliştirecek ve değerlerin sahiplenmesine olanak sağlayacaktır.

[1] Klaus Schmidt, Göbekli Tepe, 2014

[2] Yazılım Ustalığı (Zanaatkârlığı) Manifestosu, https://manifesto.softwarecraftsmanship.org/#/tr

[3] Martin Fowler, Refactoring, 2008

[4] Max Kanat-Alexander, Code Simplicity, 2012

[5] Nâzım Hikmet Ran, Üç Şiir, 2016

Written by

Software Architect, Enterprise Agile Coach, Informatics Enthusiast #SoftwareArchitecture #EnterpriseArchitecture #DevOps #LeanEnterprise

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store