Mlliyet Milliyet Blog Milliyet Blog
 
Facebook Connect
Blog Kategorileri
 

26 Mart '07

 
Kategori
Yazılım
 

Yazılım ve yaşam

Yazılım ve yaşam
 

Bir bilgisayar programı yapmak, düşünce dinamiklerini ayrıştırmak, düzenlemek ve yeniden bütünleştirmek demektir. Bir anlamda bu, evrenin işleyiş mekanizmasının soyutluğunu somuta taşımadır. Bir anlamda olmayan bir varlığa yaşam üflemektir. Gerçek Yaratıcının kişioğluna sunduğu en büyük lütuf ve verginin kendini göstermesidir: yaratıcılığın.

Madde ve ruh gibi iki boyutludur bu dünyada; donanım ve yazılım. Zaten küçükte yansıyan büyüktekinin izdüşümünden farklı olamaz ki. Donanım somuttur, beş duyu ile algılanabilir; yazılım ise soyuttur, kavramsaldır. Donanımı eskiyen bir yazılımı başka bir donanıma yüklemek mümkündür, çünkü yazılım zamansızdır ve eskimez. İnsan ruhunun zamansız olması ve asla ölmemesi gibi.

Yazılımın da kendi içinde iki boyutu vardır. Biri algoritma denen saf mantıktır. Bu o yazılımın matematiksel boyutudur. Donanımdan veya herhangi bir programlama dilinden bağımsızdır. Diğeri ise bu yazılımın uygulama boyutudur. Donanıma, işletim sistemine ve platforma bağımlıdır. Kişioğlunun da en öz bir bilinci vardır, somut yaşamdan tamamen bağımsız olan. Bu onun özde barındırdığı zamansız ilahi özün isimleşmesidir. Bir de bu kaynaktan beslenen ama yaşam denen ve beyinle yönetilen uygulama platformuna yönelik olan bir yüzü vardır.

Aslında madde ve enerjinin özde aynı olması gibi donanım ve yazılımda özde bir bütündür. Tüm donanımlar, artlarında derin bir soyut mantık ve algoritma barındırırlar. Herhangi bir yazılımı ise uygun bir bilgi işlem yongasına dönüştürmek mümkündür.

Yaşamımızı temel olarak niteleyen iki öğe vardır: nesneler ve onların eylemleri. Bir yazılımın da temelinde yine bu iki öğeden başkası yoktur. Sizin bir arabanız vardır; arabanız gider, durur, hızlanır, yavaşlar, içinde direksiyon, cam, tekerlekleri vardır vs. Yazılımınızda da pencereniz vardır; büyür küçülür, açılır, kapanır, içinde düğme, metin kutusu, açılır-kapanır pencereler bulunur vs. Yazılım, kendi içinde bir yaşam demektir. Bu en güzel kendini bilgisayar oyunlarında gösterir. Hele ağ ortamına da aktarılmışsa, size ikinci bir hayat sunma iddiasına bile girebilir.

Yazılımda sabit değerler vardır, değişkenler vardır. Bunların içinde yer aldığı akış yordamları vardır. Her bir değer ve yordam, belli bir kapsama alanı içinde yer alır ve çalışır. Değerler bazen bir yordamın içinde tanımlanır, bazen dışında, bazen bir yordamdan diğerine parametre olarak geçer, bazen yordamdan bile önce ortaya çıkar. Değerler yordamlarla buluşunca, kurallar çıkar ortaya: şu olursa böyle olsun, şöyle olmadıkça ise bu gerçekleşmesin. Döngüler ve kural deyimlerinin iç içe kucaklaşıp bütünleşmesidir, mantığın şiirleşmesidir bu.

Bir programın iş akışındaki ufak bir sorun, tüm programın çökmesine neden olabilir. Yazılım, nokta ve virgül hatasına bile tahammülü olmayan bir ortamdır. Bir döngüyü uygun şekilde yapılandırmadığınız takdirde ise sonsuz döngünün ortaya çıkması ve programın donması kaçınılmazdır. Daha derinde ise algoritmanızın kökeninde Zenon çıkmazları olabilir. İlk attığınız adımın yarım adım ve ondan sonra gelen tüm adımların ise onun yarısı olma durumudur bu. PI sayısı misali, asla tam, bütün bir adıma ulaşmayan bir adımın çıkmazıdır bu. Yaşamın da Zenon çıkmazları vardır. Bazen ufak bir çıkar, zevk veya tutku uğruna tükenen ve yok olan koskoca hayatların çıkmazıdır bu. Cehennemin sonsuz azabı, sonluda sıkışıp kalmasındandır.

Yazılım dünyası soyut olsa da durağan değildir. Uygulamaya geçtikçe ve kullanıldıkça, sürekli güncellenip yenilenir. Kim bilir, belki de bu, bizim yaşamımızın da içinde barındırdığı gizden başkası değildir. Yaşam denen deneyim özetle öğrenmedir, özde yenilenmedir.

 
Toplam blog
: 72
: 1949
Kayıt tarihi
: 11.10.06
 
 

Yazar 1975 Ankara doğumludur. Monterey Postgraduate School / California'da bilgisayar bilimi dalı..