Dennis Ritchie'nin Ekim ayındaki kaybı, yaşamına yönelik geç kalmış bir ilgiyi açığa çıkardı. Arkasından yayımlanan yazılar, Amerikalı mühendisin gösterişten kaçınan, alçak gönüllü kişiliğini övdü, günümüzün bilgisayar teknolojisine yaptığı derin etkiyi vurguladı.

1983 yılında bir başka büyük mühendisin adına verilen Alan Turing ödülünü alan, 1999'da Ulusal Teknoloji Madalyası'na Ken Thompson ile beraber değer görülüp, Bill Clinton tarafından onurlandırılan Ritchie'nin geliştirdiği teknolojilerin, inşa ettiği eserin ayrıntıları ise kamuoyunun kavrayışından uzak kaldı. “İşletim sistemi” ve “programlama dili” gibi terimler tüketicinin sözcük haznesinde mevcuttur ama kavramsal içerikleri anlaşılmak için fazlasıyla teknik bulunur. Oysa teknolojinin ürünlerini gittikçe daha az tereddüt ile hayatına davet eden bir neslin ve bu nesli bilgilendirme iddiasında olan medyanın, neyin fazlaca teknik olduğuyla ilgili kanaatlerinin de değişmesi beklenirdi. Teknik olanın büyüden arındırılması, onu bileşenlerine ayırmakla ve taşların hangi sıra ile üst üste dizildiğini anlamakla mümkün olabilir. Yaşamı boyunca teknoloji ilahlarının arasına yükselmeyi reddeden, kanaat önderliğinden, modern zaman kahinliğinden kaçınan Ritchie'nin, baskın bir toplumsal karakter tarafından gölgelenmemiş eserinin önemi ise, ilgilenen herkes için böyle bir ufuk açma imkanı taşımasıdır.

Dennis Ritchie

Dennis Ritchie, bilgisayar biliminin ufak ve inatçı bir çekirdek grubun dışında ciddiye alınmadığı tuhaf bir çağda kariyerine başladı. Harvard'dan fizik ve matematik dallarında diploması vardı ama kendi sözünü ciddiye alacak olursak, fizikçi olmak için yeterince zeki olmadığını farketmiş ve bilgisayarları kullanarak bir şeyler inşa etme fikri tarafından cezbedilmişti. 1967'de Bell laboratuvarlarında işe başladığında ortağı Ken Thompson, PDP-7 bilgisayarları üzerinde çalışan bir işletim sistemi geliştiriyordu, o zamana kadar programlama dilleri ile yalnızca teorik olarak ilgilenmiş Ritchie de bu işletim sisteminin yazıldığı B programlama Dili'ni geliştirmeye uğraştı. B'yi düzeltip ilerlettikçe kapsamını değiştirdi ve geniş uygulama derinliğine sahip bir araç yarattı. Geliştirdiği programlama diline, ortağı ile beraber önce “NB” (New B) ismini vermeyi tasarladılar, zamanla bu yeni programlama dili “C” adını dönüştü.

PDP-7 bilgisayarları üzerinden çalışan “C”'yi başka makinelere taşımaya kalktıklarında, beklediklerinden daha fazla ve daha derin sorunlarla karşılaştılar. Ritchie'ye göre, bir programlama dilini bir çok makineye taşımaya uğraşmaktansa, üzerinde çalışacağı, kendi içinde bütünlüklü bir sistemi taşınabilir olarak tasarlayıp geliştirmek daha kolay olacaktı. Unix'in temel vaadi buydu. Ken Thompson'ın makine dili ile yazdığı ilk versiyonunun aksine Unix'in 1972 senesinde geliştirilen ikinci sürümü C ile yazıldı. Bir işletim sisteminin çekirdeğinin makine dilinin dışında bir programlama dili ikullanarak geliştirilmesi o dönem için teknolojik bir eşiktir.

C programlama dilinde, geliştiricilerinin aşina olduğu birçok programlama dilinin, üzerine inşa edildiği “B” nin izleri görülebilir ancak bu yeni aracın doğasını belirleyen etken, onun amacıdır. C, bir işletim sistemi geliştirmek üzerine tasarlanmıştı bu nedenle makine dilinin erişimine sahip olmalıydı. Katı gereksinimlerine rağmen, dilin yapısal olarak soyutlamaya olanak verecek geliştirmelere uygun olması onun cevheridir. C düşük seviye erişimi ile, yüksek seviyedeki soyutlamaları birleştiren tuhaf ve melez bir yaratıktır. Böyle bir aracın tasarım açısından kusursuz olması, tutarlılık taşıması beklenemezdi ama sistem yazılımlarında endüstri standardı olmasının, üzerine geliştirilen sayısız teknolojinin temeli olabilmesinin nedeni de aynıdır. Yaratıcısına göre “C” makine dilinin erişimine ve ne yazık ki makine dilinin kolaylığına sahip bir programlama dilidir.

C kullanılarak geliştirilen Unix, Bell Laboratuarlarının sahibi AT&T'in bilgisayar sektörüne girmesini engelleyen 1958 tarihli bir dava nedeniyle ticari bir ürüne dönüşemedi. AT&T ürettiği tüm yazılımları kaynak kodu ile beraber isteyen kuruluşlara lisanslamaya kanuni olarak yükümlü idi. Ancak Unix üzerinde tam zamanlı çalışan Thompson, talep eden başka mühendislere, yazılımı kasetlere ve disklere kaydederek el altından dağıtmayı sürdürdü. Bell Laboratuarları AT&T'den ayrılıp Unix'in para ile satılmasının önündeki engeller ortadan kalkıncaya kadar birçok üniversite ve bağımsız kuruluş bu yeni işletim sistemini çeşitli mimarilere uyarlamıştı. Daha da önemlisi, Unix'in elden ele serbestçe dolaşan kaynak kodu, sistem yazılımları ile meşgul olan herkes için başat bir başvuru kaynağına dönüşmüştü. Seksenli yıllarla beraber süratle üretilmeye başlanan sayısız işletim sisteminin neden ilhamını Unix'te bulduğunu anlamak zor değildir.

Unix ile başlayan C dili, on sene içerisinde birçok platforma yayılmış, mühendisler C dili için kendi ihtiyaçlarına uygun derleyiciler yazmışlardı. Tüm bu farklı derleyicileri ortak bir zeminde buluşturma amacı ile, Amerikan Ulusal Standartlar Enstitüsü (ANSI) 1983 yılında bir komite kurdu. Altı sene süren çalışmalar C dilinin, C89 ya da C90 adı verilen evrensel bir bilgisayar diline dönüşmesi ile sonuçlandı. C89, C dilinin yerel sürümlerindeki yenilikleri olduğu kadar, yeni nesil C sayılabilecek C++'nın dile yaptığı bazı geliştirmeleri de ana kaynağa geri döndürüyordu. Bu bakımdan C dili, benzersiz sayılabilecek bir sürekli genişlemenin ve geliştirmenin alanıdır. Teknolojinin mucidi Dennis Ritchie ise bu çabaya mesafesini koruması da ilginçtir. Ona göre tüm standartlaştırma uğraşları, teknik olmaktan çok politik idi.

Richard Stallman'ın 1983'te kurduğu GNU'nun etrafında şekillenen özgür yazılım hareketinin iki büyük eseri, Linux ve BSD, birer Unix türevi sayılmasalar bile Unix temel alınarak tasarlanmışlardı. Ayrıca bu yazılımlara önemli katkılar sağlamış herkes, temelde birer C programcısı idi. Linux ve FreeBSD, kaynak koduna isteyen herkesin katkı yapabildiği, açıklık prensibi ile ilerleyen projelerdir. Linux çekirdeğinin kaynak koduna katkı yapan onlarca programcı olmasına karşın, Linus Torvalds ve Alan Cox gibi kişilerin, teknik sorumluluklarının yanında birer ruhani lider gibi görülmelerini, açık sözlü politik tavırlarına bağlamak mümkündür. Zira ne Ken Thompson ne de Dennis Ritchie bu türden bir sorumluluğu yüklenmemişti. İki Amerikalı mühendisin Bell Laboratuarlarında tasarladığı Unix ve C dili, birbirlerinden destek alarak öyle büyüyüp yaygınlaşmışlardı ki mucitlerinin etki alanından çoktan uzaklaşmışlardı. Ritchie'ye göre C dili, tuhaf ve hatalı olmasına karşın müthiş bir başarıydı.

Bilgisayar bilimi tarihçisi Paul E. Ceruzzi'ye göre Dennis Ritchie; “Çok tanınan bir isim değildir ama dikkatle bakılırsa eserinin izleri her yerde görülebilir”. Ritchie için Batılı medya organlarında yayımlanan ölüm ilanları da, bu değerli bilim adamını kamuoyuna anımsatmaktan öteye gitmedi. Zira politik bir figüre dönüşmeyip mühendis ve bilim adamı olarak kalmayı tercih eden, inşa etmeyi tartışmaya yeğleyen Ritchie'ye hakkını vermek için eserini anlamaya çalışmak gereklidir. Günümüz insanı için büyüye değil neredeyse bir doğa kuvvetine dönüşmüş olan teknolojinin tarihi, Ritchie gibi büyük mühendislerin, sürekli şekil değiştiren, genişleyen, üst üste inşa edilen eserlerinin tarihidir.

Ufuk Kocolu
NtsMag 2012