Adam And Eve
[Paul Anka]
45'lik - 1960
Birkaç kuşak üzerinde derin etkiler bırakan Paul Anka pop müziğin en tanıdık simalardan biri şüphesiz. 1960’ta 45’lik olarak piyasaya sürülmüş olan Adam And Eve şarkısı Adem ile Havva’nın bilinen hikayesini konu alıyor...
Seneler önce Ottawa’da yürürken Paul Anka caddesiyle karşılaşıncaya kadar ben onu hep Amerikalı sandım. 2006’daki İstanbul konserine gidemediğim için ise hala yanarım…
[Blog] C#'taki Yapı ve Sınıf Nesneleri Nerede Yaratılıyor?
Pek çok C# programcısının sınıf ve yapı kavramlarıyla stack ve heap kavramlarını yanlış bir biçimde ilişkilendirdiğini görüyorum. Örneğin, “yapı nesneleri stack’te sınıf nesneleri heap’te tutulur” biçiminde yanlış anlaşılmaya yol açacak bilgiler veren yerli ve yabancı çok sayıda yazı ve makaleyle karşılaştım. Konuya biraz açıklık getirmek istiyorum.
[Makale] UNIX/Linux Sistemlerinde Dosya Betimleyicilerinin Anlamı
UNIX/Linux sistemlerinde her prosesin proses tablosu yoluyla erişilen bir dosya betimleyici tablosu (file descriptor table) vardır. Dosya betimleyici tablosu bir gösterici dizisi biçimindedir. Betimleyci tablo içersindeki her gösterici açılmış bir dosyanın bilgilerinin tutulduğu ve ismine dosya nesnesi (file object) denilen bir veri yapısını gösterir. open fonksiyonundan elde edilen dosya betimleyicisi (file descriptor) prosesin dosya betimleyici tablosunda bir indeks belirtmektedir.
[Makale] UNIX/Linux ve Windows Sistemlerinde Proseslerin Çalışma Dizinleri
Her prosesin bir çalışma dizini (current working directory) vardır. UNIX türevi sistemlerde prosesin çalışma dizini proses fork fonksiyonuyla yaratılırken üst prosesten alınır. exec işlemleri sırasında da yaratılmış olan prosesin çalışma dizini değişmez. Yani bu sistemlerde bir proses bir alt proses yarattığında yaratılan alt prosesin çalışma dizini üst prosesin çalışma dizini ile aynı olacaktır. Windows sistemlerinde de alt prosesin çalışma dizini onu yaratan proses tarafından CreateProcess API fonksiyonu çağrılırken belirlenir. Her iki grup işletim sisteminde de prosesin çalışma dizini daha sonra belirli sistem fonksiyonlarıyla değiştirilebilmektedir.
[Makale] Portable Executable Dosya Formatında CLI Metadata Tablolarının Organizasyonu
.NET, Mono ve Rotor gibi CLI (Common Language Infrastructure) standartlarına uygun ortamlardaki assembly dosyaları PE (Portable Executable) dosya formatını kullanmaktadır. PE dosya formatı Micosoft’un 32 ve 64 bit Windows sistemlerinde kullandığı genel amaçlı çalıştırılabilir (executable) bir formattır. Bu format tıpkı UNIX/Linux sistemlerinde kullanılan ELF (Executable and Linkable Format) gibi bölümlerden (sections) oluşur. Bölümlerin içerisinde programın yüklenmesi ve çalıştırılabilmesi için gerekli bilgiler vardır.
[Blog] Bilgisayar Bilimleri İçin İki Kategorizasyon Sistemi
Bir nesne ya da olgunun bütün içerisindeki yerinin belirlenmesi ve diğer nesne ya da olgularla ilişkilerinin betimlenmesi sürecine kategorizasyon deniyor. Kategorizasyonun sentezlemeyi artırarak öğrenmeye katkıda bulunduğunu söyleyebiliriz. Sentezleme süreci de anlamsal bellek (semantic memory) içeriğindeki ilişkileri sağlamlaştırıyor olabilir.
Band on the Run (Wings-1973)
20 seneden fazla bir zamandır günde kemiksiz en az 7 saat (ilerleme amacıyla yapılan çalışmaları kastediyorum. Para kazanmak için yapılanları değil). Bunun yarısı teorik yarısı pratik çalışma...
"Hocam, babanız ne iş yapıyor?.."
Burçlara inanmam. Bence tam bir zırvalık. Toplumun burçlara yoğun ilgisi 80'li yıllarda başladı galiba. İşte o zamanlarda bir gün Ortaköy'deki bir çay bahçesinde bir grupla oturmuş sohbet ediyorduk. Gruptan bir kız bana burcumu sordu. "Bilmiyorum" dedim. O da bu kez ne zaman doğduğumu sordu. Ben de söyleyince "aaa sen oğlaksııın" demesin mi? Tuhaftır, tam olarak ne zamandı, kimler vardı hiç hatırlamıyorum. Ama o yüz ifadesini çok iyi hatırlıyorum.
Ben de eskiden Bell Lab'ın B'sinden ya da BCPL'in B'sinden geldiğini sanırdım. Fakat Ken Thompson bir röportajda karısı Bonnie'nin B'sinden geldiğini şaka yollu söylüyor. Nasıl, romantik değil mi?
Teknik olarak bir atomun anahtar sözcük olması için derleyicinin ona diğer değişken atomlardan farklı bir işlem uygulaması gerekir. Yani anahtar sözcükler parse işlemi sırasında diğer değişkenlerden (identifiers) ayrılmaktadır. Halbuki C ve C++'ta her ne kadar main fonksiyonunun diğer fonksiyonlardan farklı bir özelliği varsa da derleyici bu bu ismi gördüğünde buna diğer değişkenlerden farklı bir işlem uygulamamaktadır. main derleyici tarafından değil, bağlayıcı (linker) tarafından aranır. Ayrıca main anahtar sözcük olmadığı için bu isimde başka değişkenler bildirilebilir.
Bunu bilemem. Bundan sonra kaç kişinin görev alacağına ve bu işe ne kadar zaman ayıracağımıza bağlı. Fakat iki sene içerisinde biteceğini umuyorum.
Gereken bir düzine koşulun neredeyse hiçbiri tam olarak sağlanmadığından darbe marbe olmaz; güldürmeyin beni... Zaten en küçük bir risk olsa bazı çevreler bu kadar pervasızca hareket edebilir mi ? :-). Tabi yine de temkinli konuşmakta yarar var. Yeterli koşullar oluşursa bırakın Türkiye'yi Amerika'da, İngiltere'de ve hatta Fransa'da bile darbe olur :-).
Şu anda kod optimizasyonu üzerinde çalışıyorum. Optimizasyonsuz beta versiyonunun Eylül 2009'da çıkacağını umuyorum.
Olanı incelemek ya da değiştirmek hiçbir zaman sizi onları yazanların düzeyine getirmez. Bu kafayla da bir yere varılmaz. Zaten dediğiniz yazılımları yazanlar da sizin kafada olsalardı bu yazılımlar asla gerçekleştirilemezdi.Şunu unutmamak gerekir ki bu tür projeler gerçekleştirilirken pek çok kişi yetişmekte ve önemli deneyimsel kazanımlar elde edilmektedir. Belli aşamalardan geçmemiş olan bizim gibi ülkelerin bu kazanımları kestirmeden elde edebilmeleri mümkün değildir. Zaten teknolojiyi dışarıdan alarak onların önüne geçmiş olan bir ülke modeli de yoktur.
Malesef hayır. Bazı ürünler vardır çok bir işe yarayacağını sanırsınız, fakat pek bir işe yaramazlar. El bilgisayarları da böyle işte.
She Loves You / I'll Get You (The Beatles-1963)
İlhan Selçuk.
The Beatles.
En iyi olduğunu sandığınızdır. Bu konuda sizi ikna edemem.
CSD C ve Sistem Programcıları Derneği