Yazılım Tarihi ⏱ 9 dk okuma

Geçmişten Günümüze Yazılım Dilleri Tarihçesi

9 Eylül 1947. Grace Hopper ve ekibi Harvard Mark II bilgisayarının arızasını incelediğinde, röleler arasında sıkışmış bir güve buldu. Tarihte kayıtlara geçen ilk bilgisayar "bug"ı böyle ortaya çıktı.

4 Mart 2026

O küçük güvenin vücuda getirdiği kelime — "bug" — bugün hâlâ yazılım dünyasında kullanılıyor. Bu detay aslında çok şey anlatıyor: programlama tarihinin her köşesinde insan hikayeleri var. Sadece teknik gelişmeler değil, öfkeler, hayal kırıklıkları ve "bu daha iyi olabilir" diyen bireyler.

İşte o bireyler ve yarattıkları dillerin kısa ama dolu tarihi.

1950'ler: Makinenin Dilinden İnsanın Diline

1954 – 1959

İlk bilgisayarlar yalnızca makine dili anlıyordu: 0'lar ve 1'ler. Her komut, her adres elle giriliyordu. Assembly dili bir adım öne geçti; sembolik isimler makine talimatlarının önüne geçti. Ama hâlâ oldukça zor ve hataya açıktı.

1957'de IBM'den John Backus ve ekibinin yaptığı şey gerçek bir devrimdi: FORTRAN (Formula Translation). Matematiksel ifadeleri insan okuyabileceği biçimde yazmanıza izin veriyordu. IBM mühendislerinin büyük çoğunluğu bu projeye inanmıyordu; "makineye matematik öğretemezsiniz" diyorlardı. Yanıldılar. FORTRAN, bilimsel hesaplama ve mühendislik alanında onlarca yıl hüküm sürdü; bazı uygulamalar bugün hâlâ FORTRAN ile çalışıyor.

1960'lar: İş Dünyası İçin Bir Dil — COBOL

1959 – 1970

Grace Hopper bu kez başka bir sorunun peşindeydi: programcılar çok azdı, iş dünyasının hesap ihtiyacı çok fazlaydı. Çözüm, İngilizceye yakın, matematikten uzak, muhasebecilerin anlayabileceği bir dil olmalıydı. COBOL (Common Business-Oriented Language) bu fikirle doğdu.

Hopper'ın "self-documenting code" vizyonu yıllar önce ortaya attığı bir kavramdı. COBOL kodu neredeyse düz İngilizce cümlelere benziyordu. Eleştirmenler "bu kadar sözcüklü bir dil verimsiz" dedi. Ama COBOL iş dünyasını fethetti.

📊 COBOL Bugün Hâlâ Çalışıyor

Dünya genelinde hâlâ 800 milyar satır COBOL kodu aktif olarak çalışıyor. ABD'deki ATM makinelerinin büyük çoğunluğu, kamu kurumlarının bordro sistemleri ve bazı büyük bankaların çekirdek sistemleri COBOL'a dayanıyor. COBOL geliştiricilerinin ortalama yaşı 55 üzerinde — bu ciddi bir sürdürülebilirlik sorununa işaret ediyor.

1970'ler: C ve Unix — Her Şeyin Temeli

1972

Bell Labs'ta Ken Thompson ve Dennis Ritchie bir işletim sistemi yazıyordu: Unix. Assembly ile yazılmış bu sistem, farklı donanımlara taşınamıyordu. Çözüm için yeni bir dile ihtiyaçları vardı: düşük seviyeli ama taşınabilir, hızlı ama okunabilir.

Ritchie'nin C'si tam da buydu. Unix, C ile yeniden yazıldı. Ve ardından bir mucize gerçekleşti: C, Unix'ten çok daha uzun yaşadı. Bugün yazılmış neredeyse her işletim sistemi çekirdeği, her gömülü sistem, her kritik kütüphane C veya C++'ın mirasını taşıyor. Linux, Windows, macOS kernelleri C ile yazıldı. Python'un kendisi C ile yazılmış.

1980'ler: Nesne Yönelimli Dünya

1980 – 1991

Yazılım büyüdükçe karmaşıklık arttı. Binlerce satır prosedürel kod, bakımı imkânsız "spagetti koda" dönüşmeye başladı. Çözüm fikri aslında 1960'larda Smalltalk ile ortaya çıkmıştı: nesneler. Gerçek dünyanın yapısını taklit eden, veri ve davranışı bir arada tutan modüler birimler.

Bjarne Stroustrup, C'ye nesne yönelimli özellikler ekleyerek C++'ı yarattı. "C ile uyumlu ama daha güçlü" hedefi onu büyük sistemlerde standart kıldı. Oyun motorları (Unreal Engine), tarayıcılar (Chrome, Firefox) ve işletim sistemi bileşenleri C++ ile yazılmaya devam ediyor.

1990'lar: Java, Web ve 10 Günde Yazılan Dil

1991 – 2000

Sun Microsystems'te James Gosling ve ekibi, farklı cihazlarda çalışan gömülü sistemler için bir dil geliştiriyordu. Doğan dil Java'ydı ve sloganı "Write Once, Run Anywhere"di. JVM (Java Virtual Machine) sayesinde Java kodu derlendikten sonra Java çalışan her platformda çalışıyordu.

Web patlamasıyla Java herkese ulaştı. 2000'lerin kurumsal backend dünyasını Java şekillendirdi. Android'in ilk 10 yılı Java üzerine inşa edildi.

Ama 1995'in belki en ilginç hikayesi başka bir yerde yaşandı. Netscape, tarayıcısına dinamik bir scripting dili eklemek istiyordu. Brendan Eich bu dili 10 günde yazdı. JavaScript adını verdi. Şimdi dünyanın en yaygın kullanılan programlama dili.

2000'ler: Python'un Yükselişi ve Web'in Dilleri

2000 – 2010

Guido van Rossum 1991'de Python'u yayımlamıştı ama asıl yükselişi 2000'lerde geldi. "Kodun okunabilirliği önemlidir" felsefesi, Python'u akademi ve veri bilimi dünyasıyla buluşturdu. Basit sözdizimi ve güçlü standart kütüphanesi onu hızla popüler kıldı.

PHP web'in büyük bölümünü çalıştırıyordu — WordPress, Facebook'un ilk halleri. Ruby on Rails, 2005'te web geliştirmenin nasıl hızlı ve eğlenceli olabileceğini gösterdi ve bir jenerasyonu etkisi altına aldı.

2010'lar: Bulut, Mobil ve Yeni Paradigmalar

2010 – 2020

Apple 2014'te Swift'i duyurdu; Objective-C'nin yerini alacak modern, güvenli bir iOS/macOS dili. Google 2011'de Kotlin'i benimsedi; Android geliştiricilerin Java'dan geçiş süreci hızlandı. 2012'de Mozilla'dan Graydon Hoare, Rust'ı hayata geçirdi: memory safety garantisi veren, C performansına sahip, modern bir sistem dili.

Google, 2009'da geliştirdiği Go'yu Docker (2013), Kubernetes (2014) ve Terraform gibi araçların dili haline getirdi. Cloud-native ekosistemi Go üzerine inşa edildi.

2020'ler: AI Destekli Kod ve Geleceğin Dilleri

2021 – Günümüz

GitHub Copilot'un 2021'de tanıtılması, kod yazma pratiğini kökten değiştirdi. AI artık kod tamamlamıyor; tam fonksiyonlar, sınıflar ve test dosyaları üretiyor. Dil tercihi hâlâ önemli ama önümüzdeki on yılda bu tercihin doğası değişebilir.

C++'ın halefi olma iddiasıyla iki yeni dil sahne aldı: Google'ın Carbon'u (2022) ve Chris Lattner'ın (Swift'in yaratıcısı) Mojo'su (2023). Mojo, Python ile tam uyumlu ama sistem programlama hızında çalışıyor — özellikle AI donanım programlama için tasarlandı.

💡 Tarihten Çıkan Ders

Her büyük programlama dili bir sorunun cevabıdır. FORTRAN mühendislerin hesaplama sorununu, COBOL iş dünyasının ölçekleme sorununu, C donanım bağımlılığını, Java platform uyumsuzluğunu, Python okunabilirlik sorununu çözdü. Rust bellek güvenliğini, Go concurrency karmaşıklığını ele aldı. Dili değil, sorunu anlarsanız hangi dilin neden var olduğunu da anlarsınız.

📌 Önemli Noktalar