Kodlama ve Bilgisayar Programlamanın Tarihi

Kodlama ve Bilgisayar

Kodlama ve bilgisayar programlama sürekli değişim ve dönüşüm içerisinde. Kodlama hastaları olarak, bilgisayarları karmaşık şeyler için nasıl programlayabildiğimiz hakkında düşünmek ve tarihe bakıldığında bunun bir süredir yapılıyor olduğunu görmek heyecan verici.

Programcıların tarih boyunca programlama ve kodlama ile yeni olasılıkları nasıl icat ettiklerini ve becerilerini (çoğunlukla matematik becerileri) kullanarak fikirlerini nasıl gerçeğe dönüştüğüne göz atalım.

İskenderiyeli Heron

Programlamanın geçmişi İskenderiyeli Heron’un yaşadığı M.S. 60 yılına kadar uzanıyor. Bu filozof inanılmaz buluşları ve makineleriyle tanınan bir matematikçi ve mühendisti. Özellikle bir makinesi vardı ki, muhtemelen o makinesi bilgisayar programlamanın evriminin kıvılcımını yaktı. Bu özel makinenin üzerinde kuklalar vardı ve makinenin altında, kuklaların belirli şeyleri yapmasını sağlamak için çekebileceğiniz bir dizi ip vardı.

Makineyi yeniden kablolayarak veya yeniden programlayarak, kuklaları farklı şeyler yapmak için hareket ettirebilirsiniz. Yani bu, hepsini parçalara ayırmadan ve yeniden toplamadan bir şeyin çalışma şeklini nerede programlanabileceğinizi veya değiştirebileceğinizi bildiğimiz ilk kayıtlı örneklerden birisi.

Joseph Marie Jacquard

Sonrasında bir ara işler en az bilgisayar programlama kadar karardı. Akabindeki takriben 1800 yılda çok az ilerleme oldu. Bir sonraki etkileyici programcının Joseph Marie Jacquard ortaya çıkacağı ve “Jacquard Dokuma Tezgahı”nı icat ederek programlamayı bir üst seviyeye taşıyacağı yer Fransa’ydı. Eğer bir dokuma tezgahının ne olduğuna pek de aşina değilseniz, halı, kilim ve battaniyelerde belirli desenler oluşturan dev bir makinedir.

Temelde bu Fransız arkadaş, birbirine dikeceği ve dokuma tezgahından geçeceği metalden yapılma bir dizi delikli kart seti kullandı (tıpkı ilk bilgisayar programlamaları gibi, hayal edebiliyor musunuz) ve tezgâh bu kartları okuyacak ve buna göre bir desen örecekti. İsterseniz Jacquard’ı bir dokuma tezgâhı programcısı olarak da kabul edebilirsiniz.

Charles Babbage

19. yüzyılın sonlarına doğru Birleşik Krallık, Londra’da birisi programlama dünyasında dalgalanmalar yaratmaya başladı. Tabii ki bu kişi aynı zamanda bir matematikçiydi (evet, şaşırtıcı bir şekilde). Bazıları tarafından “bilgisayarın babası” olarak kabul edilen Charles Babbage, sonrasında diğerlerinin (ileride bahsedeceklerimiz) daha kompleks elektronik tasarımları ve bilgisayarlarına ilham olarak kullanacağı, analitik motor denilen ilk mekanik bilgisayarı icat etti.

Ancak bu icadı gerçekleşmeden önce, hesaplamalar yapabilen bir makine hayali vardı ve bu makineye hesap makinesi dedi. Bu makineyi denemek ve yapmak için Parlamento’dan büyükçe bir bütçe istedikten sonra, aklına daha iyi bir fikrin gelmesiyle yarı yolda vazgeçti. Aklına gelmiş olan o daha iyi fikir ise analitik motordu.

Analitik Motor

Tabii bu yeni fikri için para istemek için Parlamento’ya geri gitti, ki tahmin edebileceğiniz gibi Parlamento’nun cevabı “HAYIR”, hesap makinesinde başladığın işi bitir” oldu. Babbage analitik motoru fikrinden sonra bir daha hesap makinesini tamamlamadı ve analitik motoru yapabilmek için de istediği parayı hiçbir zaman alamadı.

Kodlama ve Bilgisayar

Yani kısmen bitirilmiş hesap makinesi ve sadece tasarlanmış analitik motoruyla Babbage, başladığı işlerini asla bitiremedi. Ancak henüz yapılmamış olması, hala onun için bir yazılım yazamayacağınız anlamına gelmiyordu ve Babbage ile çok yakın çalışan birisinin yaptığı da tam olarak buydu. Adı Augusta Ada Byron Lovelace Kontesi’ydi ama biz ona Ada Lovelace diyeceğiz.

Ada Lovelace

Ada Lovelace, doğru tahmin ettiniz, bir matematikçiydi ve aynı zamanda teknik olarak dünyanın ilk bilgisayar programcısıydı ve Babbage’ın analitik motoruyla düşündüklerine ilgi duyuyordu. O kadar ki, bir İtalyan analitik motor hakkında bir kitap yazdıktan sonra kitabı İtalyanca’dan İngilizce’ye çevirdi ve makinenin nasıl çalıştığını öğrendi. Yani sadece dillerde iyi değildi, teoride teknik olarak var olmayan bu makine için bir program ya da bir dil oluşturuyordu.

Kodlama ve Bilgisayar

Ardından, daha önce olduğu gibi, programlamanın ilerleme serüveni, II. Dünya Savaşı’nın sürdüğü 20. yüzyıl ortalarına kadar bir süre duraksadı. Bu, modern bilgisayar programcılığına kadar ilerlemenin gerçekten başladığı zamandı. Almanların savaş sırasında iletişimlerini korumak için Enigma makineleri varken, İngilizler (Müttefikler) Alan Turing’e sahipti. 2014 yapımı The Imitation Game filmini izlediyseniz, bu ismi tanıyabilirsiniz. Filmi izlemediyseniz, izlemelisiniz “Benedict Cumberbatch oynuyor” ama izlemeseniz de Turing’in neden önemli olduğunu söyleyeceğiz.

Alan Turing

Alan Turing’in mesleği hakkında herhangi bir tahmininiz var mı? Evet, bir başka matematikçi deha. Almanlar ve Mihver güçleri tarafından kullanılan askeri kodları kırmak için çok gizli işler yapan Turing (kodlama ekibinin yardımıyla), kod çalışmasını azaltmaya yardımcı olan bir bilgisayar makinesi icat ederek sürekli değişen ‘Enigma’ kodunu kırmayı başardı. İcat ettiği bu makineye “Bombe” adı verildi. Müttefikler kodu kırarak Alman deniz hareketlerini anlayabildiler.

Tommy Flowers

İkinci Dünya Savaşı’nın daha sonraki aşamalarında, başka bir İngiliz bilgisayar programcılığında biraz ilerleme kaydetti; aslında matematikçi olmayan ama İngiliz Postanesi’nde mühendis olarak çalışan bir isim. İsmi Tommy Flowers’dı. İşi, telegraf röleleri ile ilgiliydi.

Eğer aşina değilseniz, temel olarak telgraf röleleri, elektromanyetik akımlar (bir transistör) aracılığıyla A noktasından B noktasına giden bir teldi. Tommy Flowers temelde bu telgraf rölelerini aldı ve programlanabilir bir bilgisayar yaptı. Günümüzde bildiğimiz bir bilgisayar gibi değildi, bu bilgisayar kelimenin tam anlamıyla içinden elektromanyetik akımlar geçen tellerden ve makaralardan oluşan bir odaydı.

İlk Bilgisayarlar

Makine “Colossus” olarak biliniyordu (isminin anlamı gibi gerçekten devasaydı). Orijinal makinenin birkaç yeniden tasarımı ve kopyasıyla, yaklaşık on birim savaş sırasında şifrelerin çözülmesine yardımcı oldu ve Müttefiklere Normandiya’daki D-Day gibi önemli savaşlarda açık bir avantaj sağladı. Çoğu savaştan sonra görevden alındı. Aslında ilk bilgisayarlar çok gizliydi ve insanlar onlar hakkında gerçekten konuşmadılar ve onunla çalışmayan insanlar 1950’lere kadar bir süre ondan habersizdi.

Colossus’un ilk bilgisayarlardan biri olarak bildiğimiz dışında, diğer ilk bilgisayar ise “Manchester Baby” idi. Temelinde bir dizi ışığı aydınlatacak bir dizi anahtar ve düğme vardı. Bunu günümüz Raspberry Pi ile kıyaslayabilirsiniz

Programlama Dilleri

Sahiden de 1950’ler bilgisayar programlamanın, programlama dilleriyle sıçrama yaptığı yıllardı. Gerçek bir programlama dili olarak kabul edilen ilk programlama dili, IBM şirketinden biri tarafından oluşturulan “Kısa Kod” adı verilen bir şeydi. Makine kodu gibi bir makineye talimat vermek yerine bir dizi önceden tanımlanmış değişken veya matematiksel ifade ile (yukarıda değindiğimiz gibi) çalışıyordu. 1950’lerde bu ifadeleri, değişkenleri ve operatörleri “derleyiciler” adı verilen kısa kodlarda derlemek için yaratılan fiilen işler vardı.

Kodlama ve Bilgisayar

Bilgisayar programlama ile ilgili işler o zamandan beri yüksek talep görüyor. IBM daha sonra kısa kodlarının üzerine inşa etti ve buna “Speedcoding” adını verdi. Speedcoding, kodlamayı daha hızlı ve etkin yapma fikrine dayanıyordu. IBM’in Speedcoding ile yaptığı açıklama, “Programlama Süresi” en aza indirilmeliydi. Sonra şu soru ortaya çıktı: “Sembolleri alıp başka sembollere çevirme fikri, esasen bilgisayarları yapmak için tasarladığımız ve inşa ettiğimiz şey değil mi ve biz bunu bilgisayarların otomatikleştirmesini sağlayamaz mıyız?” Evet, birkaç kişi ilk otomatik bilgisayar derleyicileri olan “A-0 ve Autocode”u oluşturarak bu soruyu yanıtladı.

İlk Otomatik Bilgisayar Derleyicileri

ABD Donanması subayı Grace Hopper, Amerika Birleşik Devletleri’nde A-0’ı yaratmasıyla tanındığı sıralarda, İngiltere’den Alec Glennie Autocode’u yarattı. İkisi hemen hemen aynı zamanda gerçekleştiği ve iki ülke arasında bu çeşit programlama gelişiminde iş birliği olmadığı için (ve GitHub da yoktu), her ikisi de ilk otomatik bilgisayar derleyicisini yaptıklarını iddia ettiler.

Kodlama ve Bilgisayar

Bugün hala var olan ilk programlama dili (yine) IBM tarafından John Backus adında bir adam tarafından yaratıldı. Bu programlama diline FORTRAN denilmekte. O zamanki sorun, ekranları olmadığı için bunu bir bilgisayar ekranına yazamıyor olmanız ve klavye gibi yazma araçları da olmadığı için bu dili bilgisayara yazamıyor olmanızdı. Bu yüzden onu yine de bilgisayarın yapabileceği bir şeye dönüştürmek zorundaydınız.

Antik, Yerli Kod Dilleri

FORTRAN ilk oluşturulduğunda, dili delikli bir karta kodlamalıydınız ve sonra onları bilgisayarın içine koymalıydınız. FORTRAN hala var olduğundan, dünyadaki hemen hemen her programlama dili, bugün kullandığımız bile bir şekilde Backus tarafından oluşturulan bir dile dayanmaktadır. Diğerlerinin çoğunun kökeninin geldiği, bir seferde birkaç tane oluşturduğu birden çok dil yarattı.

Kaynak: https://www.thecoderschool.com/blog/the-history-of-coding-and-computer-programming/

Berat Yusuf Öz tarafından yazıldı.

Lisans eğitimini ESOGÜ Tarih Bölümünde tamamlayan Berat Yusuf, eğitimine Anadolu Üniversitesi Tarih Anabilim Dalı Yüksek Lisans ve Anadolu Üniversitesi Çalışma Ekonomisi ve Endüstri İlişkileri Lisans programlarında devam etmekte. İktisat Tarihi, finans, para piyasaları, blok zincir ve kripto paralar ile ilgilenmektedir.

Yapay Zeka

İş Hayatında ve Günlük Yaşamda Yapay Zekâ Teknolojisinin Geleceği

Chiliz, Solana ve Coti Fiyat Analizi | 27 Ağustos 2021