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

DCP-Portal Gelişiyor... v4.5

anonim

Tamamen Türk içerik yönetimi uygulaması DCP-Portal'ın yeni sürümü çıktı. Yönetici alanı yeniden geliştirilen DCP-Portal, 4.5. sürümünde benzerlerinden çok daha kolay ve konfigüre edilebilir bir sistem yönetimi imkanı sunuyor. İçerisinde dosya yükleme, WYSIWYG tarzı bir HTML editör bulunduran yazılım, içerikler eklenirken ve/veya güncellenirken hiçbir HTML bilgisine gerek duymuyor.

Açık Kaynak Kodlu Üretim Yönetim Sistemi

anonim

Ehil, modüler Üretim Yönetim Sistemi, sunduğu geliştirme ortamı ile veritabanı etkileşimli uygulama tasarımlarında çok büyük avantajlar getireceğe benziyor.

Sylpheed: Hızlı, Sağlam, Kaliteli

conan

Bir süredir mail okuyucusu (okutucusu daha doğru sanırım :) olarak Sylpheed kullanmaktayım. Hiroyuki Yamamoto'nun bu harika yazılımını biraz olsun tanıtabilmek için bu yazıyı yazmaya karar verdim.

Ruby Nesnelerine Kalıcılığı Öğretmek

anonim

Dünyada en çok sevilen programlama dili olduğu söylenen Ruby ile sunucu taraflı uygulama geliştirmek için elimizde RoR gibi kullanması çok kolay ve işlevsel bir arayüz var.

Peki ya masaüstü uygulamalarımız için Hibernate benzeri kalıcık araçları karşısında Ruby'de alternatif yok mu?

Tabii ki var. Og (Object Graph) ile Ruby nesnelerine nasıl kalıcı olacaklarını öğretmek çok kolay olsa da, bu makale ile daha kolay olacak.

istanbuLX: Yerli İşletim Sistemi

FZ

2001 yılında, işletim sistemleri konusunda yerli bilgi ve yazılım üretmek amacıyla başlattığımız 'istanbuLX İşletim Sistemi' projesi tamamen kamuya açılmaktadır. Önümüzdeki ay ekibin genişletilmesi işlemi tamamlanacaktır.

Açık kod felsefesi ile geliştirilen projenin tüm geliştirme safhaları kamuya açık hale getirilecektir. Bu aşamada, siz değerli Türk kullanıcıları/geliştiricileri de projeye katılabilir, geliştirilmesine yardımcı olabilirsiniz. Proje herkese açık olup haberleşme listemiz istanbulx@istanbulx.org adresinde hizmete girmiştir. Üye olmak için istanbulx-subscribe at istanbulx.org adresine boş bir e-posta atmanız yeterlidir.

istanbuLX, tasarım aşaması ve geliştirme aşaması belli ölçüde bitirilmiştir. İlk versiyonu 0.1.1-farabi olarak 14 Kasım 2001'de, ikinci versiyonu ise 0.1.5-sinan olarak 15 Şubat 2004'te çıkarılmıştır. Son versiyonu 15 Ağustos 2004 tarihinde 0.1.6-sinan olarak çıkarılmıştır. Bu versiyonu aşağıdaki bu adresten edinebilirsiniz.