Programlamanın Tao´su 5. ve 6. Kitap

0
FZ
5. Kitap - Bakım

Ve şöyle dedi usta programcı:

"Bir program üç satırı geçtiyse bir gün mutlaka bakıma ihtiyaç duyar."
5.1

İyi kullanılan bir kapıya yağ gerekmez.
Akan su kir tutmaz.
Ne düşünceler ne de sesler boşlukta hareket edebilir.
Kullanılmayan yazılım çürür.

Bunlar büyük sırlardır.

5.2

Bir müdür bir programcıya üzerinde çalıştığı programı ne kadar sürede bitirebileceğini sordu. "Yarın bitecek," diye cevapladı programcı tereddüt etmeden.

"Bu bana pek gerçekçi gelmedi açıkçası," dedi müdür. "Açık konuş, ne kadar sürer?"

Programcı durup biraz düşündü. "Eklemek istediğim bir iki özellik daha var. İki hafta alır," dedi.

"Bu bile iyimser bir beklenti!" diye ısrar etti müdür, "Bana kısaca programın ne zaman tamamlanacağını söyler misin?"

Programcı bunu kabul etti.

Yıllar sonra, müdür emekli oldu. Emekliliğini kutlama yemeğine çıkarken programcıyı bilgisayarı başında uyurken gördü. Sabaha kadar program yazmıştı.

5.3

Bir gün bir çırak programcıya bir muhasebe paketi yazma görev verildi.

Çırak günlerce deliler gibi çalıştı ancak usta programı incelediğinde sistemde bir ekran editörü, genelleştirilmiş grafik rutinleri, bir tür yapay zekâ arabirimi bulunduğunu gördü. Muhasebeye yönelik hiçbir şey yoktu.

Usta bu noktaya dikkat çekince çırak biraz bozuldu, "Lütfen bu kadar sabırsız olmayın, süreç içinde muhasebe fonksiyonlarını da ekleyeceğim."

5.4

İyi bir çiftçi ekinini ihmal eder mi?
İyi bir öğretmen en aptal öğrenciye bile kötü davranır mı?
İyi bir baba bir çocuğunu açlığa makhum eder mi?
İyi bir pogramcı programının bakımını yapmayı reddeder mi?

6. Kitap - Yönetim

Ve şöyle dedi usta programcı:

"Programcılar çok ve yöneticiler az olsun - o zaman herkes çok daha üretken olur."

6.1

Yöneticiler bitmek bilmeyen toplantılar yaparken programcılar oyun yazar. Muhasebeciler son dönem kârlarından bahsederken programcıların bütçesi kesilmek üzeredir. Bilimadamları gökyüzünden bahsederken ortalığı bulutlar kaplar.

Gerçekten de programlanın Tao'su bu değildir.

Yöneticiler kendilerini adadıklarında, oyun programları ihmal edilir. Muhasebeciler uzun dönemli plan yaptıklarında uyum ve düzen geri döner. Bilimadamları eldeki problemleri incelemeye başladıklarında problemler çözülür.

Gerçekten de programlamanın Tao'su budur.

6.2

Programcılar neden üretken değildir?
Çünkü vakitleri toplantılarda harcanır.

Programcılar neden isyankardır?
Çünkü yönetim işlerine çok fazla karışır.

Programcılar neden tek tek istifa ederler?
Çünkü kendilerini tüketilmiş hissederler.

Kötü yönetim için çalışmışlardır ve artık işlerine değer vermiyorlardır.

6.3

Bir yönetici kovulmak üzere iken onun için çalışan bir programcı yeni bir program geliştirdi, bu meşhur olup çok sattı ve yönetici yerini korudu.

Yönetici programcıya prim vermeye çalıştı ancak programcı reddetti ve dedi ki "O programı yazdım çünkü fikir hoşuma gitmişti, bu yüzden de ödül beklemiyorum."

Bunu duyan yönetici, "Bu programcı bir çalışanın görevlerini mükemmel bir şekilde anlamış durumda, o halde onu yönetici danışman yaparak onurlandıralım!" dedi.

Bunu duyan programcı bir kez daha reddetti ve dedi ki: "Benim varlık amacım programlamak. Terfi edersem herkesin vaktini çalarım. Şimdi bana müsaade. Üzerinde çalıştığım bir program var da."

6.4

Bir yönetici programcılarına gidip dedi ki: "İş saatlerinizle ilgili olarak, artık sabah 9'da gelecek ve akşam 5'te çıkacasınız." Bunu duyar duymaz çoğu programcı hemen oracıkta bastı istifayı.

Bunu gören yönetici dedi ki: "Pekala, pekala. O halde iş saatleerinizi kendiniz ayarlayın, proje zamanında yetiştiği sürece özgürsünüz." Tatmin olan programcılar öğlen gelip sabahın erken saatlerine dek çalışmaya başladılar.

Görüşler

0
elrond
Yaw FZ Win2K Azerice topikinde Her S/W de Bug olur olmazsa olmaz diye yazdığımda, kimin patchleri fazla kimin az s***k yarışı başladığında neredeydi bu yazı ;-)

Bir kerede oturup dairenin alanını hesaplayan program yazın, kod ilk bittiğinde çalışırsa bir şeyler yanlış gidiyordur.
0
sundance
Hadi len orada haksızsın alenen :) Tabi ki her S/W`de bug olur ama bizim burada bahsettigimiz ısrarla koskocaman bir Bug`da (WinDos) S/W kırıntıları aramak :) O olmuyor işte.
Programcılıgın TAO`suna gelince, COBOL hakkındaki satırı Windows`a uygulayıver ;)
0
FZ
Tarih: 2002, şubat.
Yer: Bir tanıdığın ablasının evi. Abla ile diyalog.

-Hmm, demek Hacettepe Matematik'te okudun. Ne güzel. Nerede çalışıyorsun?
-Türkiye İş Bankası'nda. Programcı olarak.

Kahvesinden bir fırt çeken FZ dayanamayıp sorar:

-Hmm, peki hangi programlama dilini kullanıyorsunuz?
-COBOL

Kahvesinden çektiği fırtı püskürtmemek için kendini zor tutan FZ'nin şaşkınlığı yüzünden okunmaktadır. Genç kız ise sakindir.

-Nasıl yani? COBOL mu?
-Evet.
-Peki ya veritabanı falan?
-COBOL ile yazılmış bir veritabanı kullanıyoruz. Büyük IBM Mainframe sistemler falan.

FZ sessizce kahvesini içerken derin bir tefekküre dalar...
0
conan
cobol'un yaraticisi bilim kadininin adina yapilan bir parkin arkasinda oturuyorum :)
0
FZ
Ben de bazen okuldaki Ada Lovelace bilgisayar laboratuvarının önünden geçiyorum ;-) [Alan Turing laboratuvarından az ileridee ;-) ]
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Freemind Türkçe!

batasoy

Açık kaynak kodlu "zihin haritası" programı Freemind artık Türkçe. Program hakkında Türkçe bilgiye buradan ulaşabilirsiniz.

Özellikle öğretmenlerin, proje hazırlayanların ve yazılım geliştiricilerin çok işine yarayacağını düşünüyoruz. Windows kurulum paketi hazır; GNU/Linux içinse birkaç gün daha beklemek gerekecek.

Programı www.pozitifpc.com adresinden indirebilirsiniz.

Google MapReduce İlerleme mi Gerileme mi?

FZ

Geçenlerde Yahoo'da veri analizi üstüne güzel bir sunum veren Facebook veri anali şefi Jeff Hammerbacher günlüğünde Google MapReduce'u feci eleştiren bir makaleye yer vermiş: MapReduce: A major step backwards.

Video: Smalltalk, bir video, bir IDE ya da test-driven development üstüne...

FZ

Eski Smalltalkçulardan Kent Beck, Test-Driven Development By Example kitabında genellikle Java ve çok az bir yerde de Python kullanıyor. Lakin üstadın zaman zaman hayıflandığını görüyoruz, "ah şimdi elimin altında Smalltalk, Smalltalk IDE ve Refactoring Browser" olsaydı diye.

Neden?

Belki de cevabı burada yatıyor:

Yeni Wiksis 1.1, Wiki İçeriği Oluşturma Yazılımı

anonim

CyrocomGPL'd tarafından GPL lisansı ile sunulan Türkçe Wiki yazılımının yeni sürümü çıktı.Yeni özellikleri:tablo desteği, yönetim alanı, şifre koruması olarak sıralayabiliriz. Şifre koruması desteğiyle artık içerik değiştirme işlemini wiki modunda (şifre girmeden) ve kişisel mod'da (şifre girerek) yapabileceksiniz. Şifre sistemi ile wiksis, artık kişisel sitelerin yapımında dahi kullanılabilecek!

Emerge: Bir StarLogo Videosu

FZ

Animasyon konusunda uzmanlaşan James Mortensen'in, StarLogo kullanarak hazırlamış olduğu Emerge videosu, çok basit kurallara göre hareket eden etmenlerin (agent), çok etmenli sistemde (mutliagent system) ne tür düzenlere yol açtıklarını gösteriyor.

Müziklerle de zenginleştirilmiş bu videoda her kuralın önce ismi ardından da yol açtığı örüntü (pattern) canlı bir şekilde görüntüleniyor. Karmaşık sistemlerin, toplumsal örüntülerin, vb. fenomenlerin modellenmesi ile uğraşanların ve "hacker" amblemi olarak seçilmiş "Game of Life"ın başka şeylerle bağlantısını görmek isteyen meraklı "hacker"ların ilgisini çekebilecek bir video.