Programlamanın Tao´su 1. ve 2. Kitap

0
FZ
1. Kitap - Sessiz Boşluk

Ve şöyle dedi usta programcı: "Sadece TCP/IP kullanarak uzaktaki makinanın işletim sistemini anlayabildiğinde tapınaktan ayrılmanın zamanı gelmiş demektir."
1.1

Sessiz boşlukta gizemli bir şey oluştu. Tek başına hareketsiz bekleyen o şey yine de sürekli hareket halindedir. Tüm programların özünde yer alır o. Adını bilmiyorum onun, bu yüzden Programlanın Taosu diyeceğim.

Tao büyükse işletim sistemi büyüktürr. İşletim sistemi büyükse derleyici büyüktür. Derleyici büyükse uygulama büyüktür. Kullanıcı mutludur ve dünyada uyum hüküm sürer.

Programlamanın Taosu uzaklara gider ve sabah rüzgarı ile geri döner.

1.2

Tao makina dilini doğurdu. Makina dili assembler'ı doğurdu.

Assembler derleyiciyi doğurdu. Şimdi ortalıkta onbin tane programlama dili var.

Ne kadar alçakgönüllü olsa da her dilin bir amacı vardır. Her dil yazılımın Yin ve Yang'ını ifade eder. Her dilin Tao içinde bir yeri vardır.

Ancak mümkünse COBOL ile programlamayın.

1.3

Başlangıçta sadece Tao vardı. Tao Mekânı ve Zamanı doğurdu. Bu yüzden Zaman ve Mekân programlamanın Yin ve Yang'ıdır.

Tao'yu anlamayan programcılar programları için bir türlü yeterli zamana ve mekana sahip olmazlar. Tao'yu anlayan programcılar ise hedeflerine varmak için gerekli zamana ve mekana daima sahiptirler.

Başka türlü nasıl olabilirdi ki?

1.4

Bilge programcıya Tao'dan bahsedildiğinde onu takip eder. Ortalama programcıya Tao'dan bahsedildiğinde onu araştırma gereği duyar. Aptal programcıya Tao'dan bahsedildiğinde kahkahalarla güler.

Eğer gülmezse, duyduğu gerçek Tao değildir.

En yüksek ses işitilmesi en zor olandır.
İleri gitmek geri çekilmeye götürür.
Büyük yetenek kendini olgunlukta gösterir.
Mükemmel bir programın bile hataları vardır.

2. Kitap - Eski Ustalar

Şöyle dedi usta programcı:

"Üç gün program yazma ve hayat anlamsızlaşır."

2.1

Eski zamanlarda yaşayan programcılar gizemliydi. Onların düşüncelerini takip edebilmemiz mümkün değil, bu yüzden sadece görünüşlerini tarif etmekte yetineceğiz.

Suyu geçen bir tilki gibi uyanık. Savaş meydanındaki general gibi dikkatli. Misafirlerini ağırlayan ev sahibi gibi nazik. Yontulmamış tahta blok gibi basit. Derin mağaralardaki sular gibi karanlık.

Onların kalplerindeki ve kafalarındaki sırları kim bilir?

Cevap sadece Tao'dadır.

2.2

Büyük usta Turing bir gün rüyasında bir makina olduğunu gördü ve uyandığında dedi ki: "Bilmiyorum ki acaba ben rüyasında bir makina olduğunu gören Turing miyim yoksa Turing olduğunu gören bir makina mıyım!"

2.3

Büyük bir firma için çalışan bir programcı bir yazılım konferansına gider ve sonra dönüp müdürüne rapor verir: "O firmalarda çalışan programcılar nasıl insanlar! Kötü davranıyorlardı ve dış görünüşleri ile ilgilenmiyorlardı. Saçları uzun, giysileri eski püskü, kırış kırıştı. En güzel odamızı batırdılar ve benim prezentasyonum esnasında gürültü yapıp durdular."

Müdür bunun üzerine dedi ki: "Seni oraya asla göndermemeliydim! O programcılar fiziksel dünyanın ötesinde yaşarlar. Hayatı saçma, bir tür tesadüf kabul ederler. Sınır tanımaksızın hareket ederler. Sadece programları için yaşarlar. Neden toplumsal kurallara uysunlar ki?...

Onlar Tao'nun içinde yaşarlar."

2.4

Bir çırak ustaya sordu: "Bak şurada bir programcı var, hiç tasarım yapmadan program yazıyor, dokümantasyon hazırlamıyor ve test etmiyor. Ancak kimi gördüysem onun dünyadaki en iyi programcı olduğunu söylüyor. Bu nasıl olabilir?"

Usta cevap verdi: "O programcı Tao'yu bilir. Tasarım kaygısını aşmıştır, sistem göçtüğünde öfkelenmez, evreni olduğu gibi kabul eder. Dokümantasyon kaygısın aşmıştır, bir başkasının onun koduna bakıp bakmaması umurunda değildir. Test etme kaygısını da aşmıştır çünkü yazdığı her program kendi içinde mükemmel, şık ve rahattır, amaçları hemen belli eder kendini. Evet, gerçekten de o Tao'nun gizemlerine ermiştir."

Devam edeyim mi? ;-)

Görüşler

0
butch
etmelisin
0
tongucyumruk
Kesinlikle devam... Daha birkac gün önce Unofficial Delphi Developer's FAQ'da aynı metnin ingilizcesine rastlamıştım... daha yeni başlamıştım okumaya bir anda bu haberi girdin... İngilizcesini zaten okuyorum türkçesi de sanıyorum ki çok iyi bir kaynak olacaktır...
0
ebola
çook güzel, devamini merakla bekliyoruz..
0
python
devam etmelısın ewt ewt devam et bencede ...
0
Tone

14 Yıl sonra Devam Edermi Acep ?.

0
Tone

Ben -manasız bir şekilde nedendir bilmiyorum ama -14 yıl önceki posta yorum yazarak tozunu almak istemiştim. :) Sonu.ta 14 yıllık bir blog yazısı. Her zaman görülmüyor. Neyse.. Bu arada diğer seriyide öğrenmiş oldum. Onlarıda okuyacağım hemen. Teşekkürler..

0
butch

İyi yaptınız. Sayenizde etraflıca tozunu almış olduk serinin :)

Görüş belirtmek için giriş yapın...

İlgili Yazılar

Nanoweb, PHP ile web sunucusu

butch

Niye sorusuna "Ağırlıklı olarak web uygulamaları için geliştirilmiş bir programlama diliyle web sunucusu yazma fikri çok komik" diye cevap vermiş programın yaratıcısı. Evet, Nanoweb PHP ile yazılmış, PHP, CGI, SSL, Mysql destekleyen bir web sunucusu. Fikrin komikliği kadar aslında programın gayet ilgi görmesi ve modüler yapısı sayesinde hızla gelişiyor olması da komik. Bir inceleyin derim.

Ch: C/C++ Yorumlayıcısı

Tarık

Ne kadar başarılı olduğu tartışılır fakat C/C++ programlama dillerini kullanarak yorumlanabilir programlar yaratma fikri oldukça ilginç olsa gerek. Zira birçok yorumlanabilir dilin C dilinden esinlenerek geliştirildiğini ama C dilinin yapı itibariyle yerli çalıştırılabilir dosya (native executable) üretmeye daha yatkın olduğunu düşünürsek.

StarLogo'nun Yeni Versiyonu Duyuruldu

ahmetozdemir

Modelleme ve simülasyon yazılımı StarLogo'nun yeni versiyonu StarLogo TNG (The Next Generation) Preview 2 duyuruldu. Bu sürümdeki en büyük özellik Preview 1'den her bakımdan daha hızlı olması.

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.

ikiwiki: Bir Wiki Daha Mı? Yoksa Daha Fazlası Mı?

FZ

ikiwiki alışageldiğimiz wiki tarzı içerik yönetim sistemlerinden biraz daha farklı. Veriyi depolamak için Subversion ve Git kullanan ikiwiki, sözdizim olarak Markdown'ı benimsemiş durumda. Blog olarak da kullanılabilme özelliğine sahip ikiwiki sistemi favori editörünüzle "offline" olarak çalışıp istediğiniz zaman wikiyi güncellemenize de izin veriyor. Detaylı özellik listesi burada.

Not: Haber verdiği için roktas'a teşekkürler.