Yazılımın tarihi

Vikipedi, özgür ansiklopedi

Yazılım, işlemci tarafından yürütülmek üzere programlanmış dijital bilgisayarların belleğinde saklanan bir dizi programlanmış talimattır. Yazılım insanlık tarihinde yeni bir gelişmedir ve Bilişim Çağının temelini oluşturur.

Ada Lovelace'in 19. yüzyılda Charles Babbage'ın Analitik Motoru için hazırladığı programlar genellikle disiplinin kurucusu olarak kabul edilir. Ancak Lovelace ve Babbage'nin zamanının teknolojisinin bilgisayarını yapmak için yetersiz kalması nedeniyle matematikçinin çabaları yalnızca teorik olarak kaldı. Alan Turing, 1935 yılında yazılım için bir teori geliştiren ilk kişi olarak kabul edilir ve bu teori, bilgisayar bilimi ve yazılım mühendisliği olmak üzere iki akademik alanın oluşmasına yol açar.

1940'ların sonlarında, ilk depolanmış programlı dijital bilgisayarlara yönelik ilk nesil yazılımın talimatları, genellikle ana bilgisayar bilgisayarları için yazılan, doğrudan ikili kodla yazılmıştı. Daha sonra, ev bilgisayarının ilerlemesinin yanı sıra modern programlama dillerinin geliştirilmesi, montaj dilinden başlayarak ve işlevsel programlama ve nesne yönelimli programlama paradigmalarıyla devam ederek mevcut yazılımların kapsamını ve kapsamını büyük ölçüde genişletecektir.

Depolanan programlı dijital bilgisayarlardan önce[değiştir | kaynağı değiştir]

Bilgisayar biliminin kökenleri[değiştir | kaynağı değiştir]

Bir kavram olarak hesaplamanın kökeni abaküs, Antikythera mekanizması, usturlaplar, Mekanik Astronomik saatler ve Mekanik Hesap Makineleri gibi cihazlarla çok eskilere dayanmaktadır.[1] Antikythera mekanizması oldukça karmaşık bir antik mekanik Astronomik cihazın örneğidir.[2]

Ancak bu cihazlar tamamen donanımdan oluşuyordu ve herhangi bir yazılıma sahip değillerdi; bilgi işlem güçleri doğrudan kendi özel biçimlerine ve mühendisliklerine bağlıydı.

Yazılım, genel amaçlı bir işlemci kavramının (şu anda Turing makinesi olarak tanımlanan) yanı sıra, programları içeren yeniden kullanılabilir rutinler ve matematiksel işlevlerin ayrı ayrı saklanabileceği, başlatılabileceği ve durdurulabileceği ve yalnızca insanlık tarihinde yakın zamanda ortaya çıktığı bilgisayar belleğini gerektirir.

Bilinen ilk bilgisayar algoritması 19. yüzyılda Ada Lovelace tarafından Analitik Motor için, Luigi Menabrea'nın Bernoulli sayıları üzerine çalışmasını makine eğitimi için tercüme etmek üzere yazılmıştır. [3] [3] Ancak bu yalnızca teorik olarak kaldı; bu iki matematikçinin yaşamı boyunca mühendisliğin Analitik Motoru oluşturmak için daha düşük düzeyde olması yetersiz kaldı[kaynak belirtilmeli].

İlk modern yazılım teorisi Alan Turing tarafından 1935 tarihli Entscheidungsproblem (karar problemi) uygulamasıyla Hesaplanabilir sayılar adlı makalesinde ortaya atıldı.[4]

Bu, sonuçta hem yazılımı hem de yazılımın yaratılmasını inceleyen bilgisayar bilimi ve yazılım mühendisliği gibi ikiz akademik alanların yaratılmasına yol açtı. Bilgisayar bilimi daha teoriktir (Turing'in makalesi bilgisayar biliminin bir örneğidir), oysa yazılım mühendisliği daha pratik konulara odaklanır.

Ancak 1946'dan önce, şimdi anladığımız şekliyle yazılım – saklanan program dijital bilgisayarların hafızasında saklanan programlar – henüz mevcut değildi. İlk elektronik bilgi işlem cihazları, onları "yeniden programlamak" için yeniden kablolandı. İlk elektronik bilgisayarlardan biri olan ENIAC, büyük ölçüde daha önce insan bilgisayarı olarak çalışan kadınlar tarafından programlandı. [3] [5] Mühendisler programcılara ENIAC kablolarının planlarını veriyor ve onlardan makineyi nasıl programlayacaklarını bulmalarını bekliyorlardı. [5] Programcı olarak çalışan kadınlar, gösteriler için bağlantı panellerini birbirine bağlayarak ENIAC'ı ilk halka açık tanıtım için hazırladılar. [5] [5] [3] Kathleen Booth, 1950 yılında Birkbeck Koleji'nde üzerinde çalıştığı bilgisayarların programlanmasını kolaylaştırmak için Assembly Dilini geliştirdi.[6]

Grace Hopper ve UNIVAC

Grace Hopper, Harvard Mark I'in ilk programcılarından biri olarak çalıştı. [7] Daha sonra bilgisayar için 500 sayfalık bir kılavuz hazırladı. [7] Hopper, Mark II'de arızaya neden olan bir güve (bug) bulduğunda çoğu zaman yanlışlıkla "hata" (bug) ve "hata ayıklama"(debugging) terimlerini icat ettiğine inanılır; [8] ancak bu terim aslında güveyi bulduğunda zaten kullanılıyordu. [8] Hopper ilk derleyiciyi geliştirdi ve fikrini 1950'lerde Mark bilgisayarları üzerinde çalışmaktan UNIVAC üzerinde çalışmaya taşıdı. [9] Hopper ayrıca UNIVAC'ı programlamak için FLOW-MATIC programlama dilini geliştirdi. [8] Yine UNIVAC'ta çalışan Frances E. Holberton bir kod geliştirdi , C-10, programcıların klavye girişlerini kullanmasına izin verdi ve 1951'de Sıralama-Birleştirme Oluşturucuyu yarattı. [8] [10] Adele Mildred Koss ve Hopper da bir rapor oluşturucunun öncüsünü yarattılar. [8]

Bilgisayar yazılımının ilk günleri (1948–1979)[değiştir | kaynağı değiştir]

Claude Shannon (1916–2001), "Bir Matematiksel İletişim Teorisi"(A Mathematical Theory of Communication) adlı makalesinde, bir bilgisayarı programlamak için ikili mantığın nasıl uygulanabileceğine dair bir taslak sundu. Daha sonra ilk bilgisayar programcıları, bilgisayarlara çeşitli görevleri yerine getirme talimatı vermek için ikili kod kullandılar. Ancak süreç oldukça zorluydu. Bilgisayar programcıları, bilgisayara ne tür verileri saklaması gerektiğini söylemek için uzun ikili kod dizileri sağlamak zorundaydı. Kod ve verilerin, anahtarların kaydırılması veya kartlarda önceden tanımlanmış konumlara delikler açılması ve bu delikli kartların bir bilgisayara yüklenmesi gibi çeşitli sıkıcı mekanizmalar kullanılarak bilgisayarlara yüklenmesi gerekiyordu. Bu tür yöntemlerde eğer bir hata yapılırsa tüm programın baştan yüklenmesi gerekebilir.

Program depolanan bir bilgisayarın elektronik hafızasında bir yazılım parçasını tuttuğu ve bunu başarılı bir şekilde çalıştırdığı ilk sefer, 21 Haziran 1948'de Manchester Üniversitesi'nde Manchester Baby bilgisayarında saat 11:00'dı. Tom Kilburn tarafından yazılmıştır ve 2^18 = 262,144 tam sayısının en yüksek faktörünü hesaplamıştır. Büyük bir deneme böleni ile başlayarak 262.144 sayısını tekrarlı çıkarma işlemiyle böldü ve kalanın sıfır olup olmadığını kontrol etti. Değilse, deneme bölenini bir azalttı ve işlemi tekrarladı. Google, Manchester Baby'yi "yazılımın doğuşu" olarak kutlayan bir anma töreni yayınladı.

FORTRAN, 1950'lerde IBM'de John Backus liderliğindeki bir ekip tarafından geliştirildi. İlk derleyici 1957'de piyasaya sürüldü. Dil, bilimsel ve teknik hesaplamalar için o kadar popüler oldu ki, 1963 yılına gelindiğinde tüm büyük üreticiler bilgisayarları için FORTRAN'ı uygulamaya koydu veya duyurdu.[11][12]

COBOL ilk kez 1959'da Mary K. Hawes'in işletmeler arasında paylaşılacak bir bilgisayar dilinin nasıl oluşturulacağını tartışmak üzere (Grace Hopper'ın da dahil olduğu) bir toplantı düzenlediğinde ortaya çıktı. [8] Hopper'ın COBOL ile yaptığı yenilik, programlama yazmanın yeni bir sembolik yolunu geliştirmekti. [7] Programlaması kendi kendini belgeliyordu. [9] Betty Holberton, [8] yılında Devlet Matbaasına sunulan dilin düzenlenmesine yardımcı oldu. FORMAC, 1960'lı yıllarda Jean E. Sammet tarafından geliştirildi. [8] Programlama Dilleri: Tarih ve Temeller (Programming Languages: History and Fundamentals) (1969) adlı kitabı etkili bir metin haline geldi. [8] [13]

Apollo Projesi[değiştir | kaynağı değiştir]

Margaret Hamilton, kendisinin ve ekibinin Apollo görevi bilgisayarları için yazdığı bir kod yığınının yanında.

Apollon'un Ay Görevi, iniş modüllerindeki bilgisayarları programlayacak yazılıma dayanıyordu.[14][15] Bilgisayarlar "Basic" adı verilen bir dille programlandı (Dartmouth'ta aynı dönemde geliştirilen BASIC programlama diliyle hiçbir ilişkisi yoktur). [16] Yazılımın ayrıca bir dizi rutinden oluşan bir yorumlayıcısı ve hangi programların ne zaman çalıştırılacağını belirleyen bir yönetici (günümüz işletim sistemi gibi) vardı. [16] Her ikisi de Hal Laning tarafından tasarlandı. [16] Daha önce ABD SAGE hava savunma sistemi üzerinde çalışırken yazılım güvenilirliği sorunlarıyla ilgilenen Margaret Hamilton da Apollo yazılım ekibinin bir parçasıydı.[14][17] Hamilton, Apollo bilgisayarlarının yerleşik uçuş yazılımından sorumluydu.[14] Hamilton, yazılım operasyonlarının sadece makinenin bir parçası olmadığını, aynı zamanda yazılımı çalıştıran insanlarla da karmaşık bir şekilde ilgili olduğunu düşünüyordu. [16] Hamilton ayrıca NASA'da çalışırken "yazılım mühendisliği" terimini de icat etti.[18]

Apollo görevlerindeki bilgisayarların gerçek "yazılımı", manyetik çekirdeklerden geçirilen tellerden oluşuyordu. [16] Telin manyetik çekirdekten geçtiği yer "1"i, telin çekirdeğin etrafından dolaştığı yer ise "0"ı temsil ediyordu. [16] Her çekirdek 64 bit bilgi depoladı. [16] Hamilton ve diğerleri, yazılımı delikli kartlara delikler açarak oluşturacaklardı; bunlar daha sonra yazılımın simüle edilebileceği bir Honeywell ana bilgisayarında işlenecekti.[14] Kod "sağlam" olduğunda, "Küçük Yaşlı Hanımlar" olarak bilinen kadınların teller üzerinde çalıştığı Raytheon'daki manyetik çekirdeklere dokunmak üzere gönderildi.[14] Programın kendisi "yok edilemezdi" ve Apollo 12'nin başına gelen yıldırım çarpmalarına bile dayanabiliyordu. [16] Bilgisayarların kablo bağlantılarının yapılması birkaç hafta sürdü ve bu süre zarfında yazılım geliştirme dondu. [16]

Hamilton, programlamayı test etmek için simülatörleri kullanırken, kodun kullanımı sırasında insan hataları yapıldığında tehlikeli hatalar üretebileceğinin yollarını keşfetti.[14] NASA, astronotların eğitimleri nedeniyle hata yapmayacağına inanıyordu. [16] Hamilton'un sistem çökmesine yol açacak hataları önlemek için kod programlamasına izin verilmedi, bu nedenle program belgelerine koda açıklama ekledi.[14] Hata kontrol kodu ekleme fikirleri "aşırı" olduğu gerekçesiyle reddedildi.[14] Bununla birlikte, Hamilton'ın tam olarak olacağını tahmin ettiği şey, Apollo 8 uçuşunda gerçekleşti; insan hatası, bilgisayarın tüm navigasyon verilerini silmesine neden oldu.[14]

Yazılımın donanımla paketlenmesi ve yasal sorunları[değiştir | kaynağı değiştir]

Daha sonra yazılım, Data General, Digital Equipment ve IBM gibi orijinal ekipman üreticileri (OEM'ler) tarafından donanımla birlikte paketlenerek birden fazla müşteriye satıldı. Bir müşteri, o zamanlar piyasadaki en küçük bilgisayar olan bir mini bilgisayar satın aldığında, bilgisayar önceden yüklenmiş yazılımla birlikte gelmiyordu, ancak OEM tarafından istihdam edilen mühendisler tarafından kurulması gerekiyordu.[ <span title="This claim needs references to reliable sources. (September 2013)">kaynak belirtilmeli</span> ]

Bu paket, 1969'da uygunsuz "bağlama" nedeniyle IBM'e dava açan ABD'li antitröst düzenleyicilerinin dikkatini çekti ve bunun bir antitröst ihlali olduğunu, yazılımını edinmek isteyen müşterilerin bunu yapmak için donanımını da satın alması veya kiralaması gerektiğini iddia etti. Ancak dava, ABD Adalet Bakanlığı tarafından uzun yıllar süren yıpratmanın ardından "haksız" olduğu sonucuna varılarak düşürüldü.[19]

Data General aynı zamanda paketlemeyle ilgili yasal sorunlarla da karşılaştı – ancak bu durumda bu, olası bir rakibin açtığı hukuk davasından kaynaklanıyordu. Data General, Data General Nova'yı tanıttığında Digidyne adlı bir şirket, RDOS işletim sistemini kendi donanım klonunda kullanmak istiyordu. Data General, yazılımlarının lisansını vermeyi reddetti ve "paketleme haklarını" talep etti. ABD Yüksek Mahkemesi, 1985 yılında 9. devre temyiz mahkemesi kararının davaya bakılmasına izin vererek Digidyne v. Data General adında bir emsal oluşturdu ve Data General, lisansın yalnızca DG donanımının yasa dışı bağlama düzenlemesi ile sınırlandırılmasına karar verildiği için sonunda işletim sistemini lisanslamak zorunda kaldı.[20] Bölge Mahkemesi, "hiçbir makul jüri üyesinin, çok daha büyük rakiplerin bulunduğu bu büyük ve dinamik pazarda, Data General'ın "yasadışı bir bağlantı düzenlemesi yoluyla ticareti kısıtlama pazar gücüne sahip olduğunu" tespit etmesine rağmen işletme Temyizde sistemin donanıma yönelik olarak yasa dışı olduğuna hükmedildi.[21]

2008 yılında Psystar Corporation'a, OS X'in önceden yüklendiği yetkisiz Macintosh klonlarını dağıttığı için Apple Inc. tarafından dava açıldı ve karşı dava açıldı. Karşı davadaki argümanlardan biri - Data General davasına atıfta bulunarak - Apple'ın, işletim sistemini yasa dışı bir şekilde Apple bilgisayarlara bağlayarak OS X uyumlu bilgisayarlar pazarında hakimiyet kurmasıydı. Bölge Mahkemesi Hakimi William Alsup, Bölge Mahkemesinin 20 yıl önce Data General davasında verdiği karara göre, ilgili pazarın yalnızca tek bir işletim sistemi (Mac OS) değil, Mac OS dahil tüm PC işletim sistemleri olduğunu söyleyerek bu iddiayı reddetti. ve Mac OS'nin bu daha geniş pazarda hakim bir konuma sahip olmadığını belirtti. Alsup'un kararında ayrıca, telif hakkıyla korunan ürünlerin bağlanmasının her zaman yasa dışı olduğuna ilişkin şaşırtıcı Data General emsalinin , Illinois Tool Works Inc. - Independent Ink, Inc. davasındaki karar tarafından "örtük olarak reddedildiği" de belirtildi.[22]

Paketlenmiş yazılım (1960'ların sonlarından günümüze)[değiştir | kaynağı değiştir]

Bağımsız olarak paketlenmiş yazılımlar (ne bireysel bir müşteri için "tek seferlik" olarak üretilen ne de bilgisayar donanımıyla "paketlenmiş" yazılımlar) üreten bir endüstri, 1960'ların sonlarında gelişmeye başladı.[23]

Unix (1970'ler – günümüz)[değiştir | kaynağı değiştir]

Unix, popüler ve çok etkili hale gelen ve bugün hala var olan ilk işletim sistemiydi. Günümüzde Unix'in en popüler çeşidi macOS'tur (daha önce OS X ve Mac OS X olarak adlandırılıyordu), Linux ise Unix ile yakından ilişkilidir.

Mikrobilgisayarların yükselişi[değiştir | kaynağı değiştir]

Ocak 1975'te MITS, Altair 8800 mikrobilgisayar kitini posta siparişi ile satmaya başladı. Microsoft, aynı yılın sonlarında ilk ürünü Altair BASIC'i piyasaya sürdü ve amatörler bu kitler üzerinde çalışacak programlar geliştirmeye başladı. Tiny BASIC, Dr. Dobb's Journal'da yazı tipi program olarak yayınlandı ve işbirliğiyle geliştirildi.

Örneğin 1976'da Peter R. Jennings, MOS Technology'nin KIM-1 kiti için kendi Microchess programını yarattı ancak bu program bir teyp sürücüsüyle gelmediğinden, kaynak kodunu küçük bir kitapçık halinde postayla sipariş müşterilerine gönderiyordu ve tüm programı elle yazmaları gerekecekti. 1978'de Kathe ve Dan Spracklen Sargon (satranç) programlarının kaynağını bir bilgisayar dergisinde yayınladılar. Jennings daha sonra kağıt bant ve sonunda üzerinde programın bulunduğu kompakt kasetler satmaya başladı.

Bir bilgisayar dergisinden kaynak kodunu yazmak zahmetli ve yavaş bir süreçti ve tek bir yanlış yazılmış – ya da daha kötüsü, yanlış basılmış – karakter programı çalışmaz hale getirebilirdi, ancak insanlar yine de bunu yapıyordu. (Teorik olarak listeleri elle yazıya dökmek yerine taramak için kullanılabilecek optik karakter tanıma teknolojisi henüz geniş kullanımda değildi.)

1980'lerde ticari yazılım dağıtımı için kartuşların ve kasetlerin yaygınlaşmasına rağmen, ücretsiz programlar (programlama tekniklerini öğretmek amacıyla basit eğitim programları gibi) hâlâ sıklıkla basılıyordu çünkü kasetleri dergilere yapıştırmaktan daha ucuzdu.

Bununla birlikte, sonunda dört faktörün birleşimi, bilgisayar dergilerindeki tüm programların tam kaynak kodu listelerinin basılması uygulamasına son verdi:

  • programlar çok büyük olmaya başladı
  • Disketler yazılım dağıtmak için kullanılmaya başlandı ve daha sonra fiyatları düştü
  • sıradan insanlar bilgisayar kullanmaya başladı – ve bir programı çalıştırmanın basit bir yolunu istiyordu
  • bilgisayar dergileri, üzerinde yazılımın ücretsiz veya deneme sürümlerinin bulunduğu kasetler veya disketler içermeye başladı

Çok hızlı bir şekilde ticari yazılımlar korsanlaşmaya başladı ve ticari yazılım üreticileri bu durumdan oldukça rahatsız oldu. Microsoft'un kurucu ortağı Bill Gates, 1976'daki ünlü <a href="https://en.wikipedia.org/wiki/Open_Letter_to_Hobbyists" rel="mw:ExtLink" title="Open Letter to Hobbyists" class="mw-redirect cx-link" data-linkid="402">Open Letter to Hobbyists</a> adlı açık mektubuyla yazılım korsanlığına karşı ilk ahlakçılardan biriydi [24]

1980'ler – günümüz[değiştir | kaynağı değiştir]

Mikrobilgisayardan önce, başarılı bir yazılım programı genellikle her biri 50.000-60.000 ABD dolarından 1.000 adede kadar satılıyordu. 1980'lerin ortalarına gelindiğinde, kişisel bilgisayar yazılımlarının her biri 50-700 dolara binlerce kopya satıldı. Microsoft, MicroPro ve Lotus Development gibi şirketlerin yıllık satışları on milyonlarca dolardı.[25] Benzer şekilde, zaten başarılı olan ürünlerin yerelleştirilmiş versiyonlarıyla Avrupa pazarına da hakim oldular.[26]

Bilgi işlem tarihinde çok önemli bir an, 1980'lerde IBM çalışanı Philip Don Estridge tarafından yayınlanan IBM PC spesifikasyonlarının yayınlanmasıydı; bu, PC'nin dünya çapındaki masaüstü ve daha sonra dizüstü bilgisayar pazarlarında hızla hakim olmasına yol açtı. – günümüze kadar devam eden bir hakimiyettir. Microsoft, PC için ilk işletim sistemini ( MS-DOS) geliştirmek üzere IBM ile başarılı bir şekilde pazarlık yaparak, MS-DOS ve onun eklenti-ardılı olan Microsoft Windows halefinin başarısı aracılığıyla, sonraki yıllarda PC'nin başarısından büyük kazanç elde etti. . Müzakereyi kazanmak Microsoft'un tarihinde çok önemli bir andı.

Özgür ve açık kaynaklı yazılım[değiştir | kaynağı değiştir]

Son gelişmeler[değiştir | kaynağı değiştir]

Uygulama mağazaları[değiştir | kaynağı değiştir]

Mobil cihazlara (cep telefonları ve tabletler) yönelik uygulamalara son yıllarda "uygulamalar" (app) adı verilmektedir. Apple, iPhone ve iPad uygulama satışlarını App Store aracılığıyla aktarmayı ve dolayısıyla her iki uygulamayı da incelemeyi ve satılan her ücretli uygulamadan pay almayı seçti. Apple, uygulama mağazasını atlatmak için kullanılabilecek uygulamalara (örn. Java veya Flash sanal makineleri gibi sanal makineler) izin vermez.

Android platformu ise bunun aksine birden fazla uygulama mağazasına sahiptir ve kullanıcılar genellikle hangisini kullanacaklarını seçebilirler (her ne kadar Google Play uyumlu veya root erişimli bir cihaz gerektirse de).

Bu hamle, GNOME Software (Linux için), Mac App Store (macOS için) ve Windows Mağazası (Windows için) içeren masaüstü işletim sistemleri için kopyalandı. Bu platformların tümü, her zaman olduğu gibi, münhasır değildir: Uygulamaların uygulama mağazasının dışından ve aslında diğer uygulama mağazalarından yüklenmesine olanak tanırlar.

Özellikle iPhone ve aynı zamanda Android için uygulamaların popülaritesindeki büyük artış, bazı umutlu programcıların zengin olma umuduyla uygulamalar oluşturmaya önemli miktarda zaman ayırmasıyla bir tür "altına hücuma" yol açtı. Gerçek altına hücumda olduğu gibi bu umutlu girişimcilerin hepsi başarılı olmadı.

Yazılım geliştirmenin resmileştirilmesi[değiştir | kaynağı değiştir]

Bilgisayar bilimlerinde müfredatın geliştirilmesi, yazılım geliştirmede gelişmelere yol açmıştır. Bu müfredatın bileşenleri şunları içerir:

  1. Yapılandırılmış ve Nesneye Yönelik programlama [27]
  2. Veri yapıları [28]
  3. Algoritmaların Analizi [29]
  4. Biçimsel diller [30] ve derleyici yapısı [31]
  5. Bilgisayar Grafik Algoritmaları [32]
  6. Sıralama ve Arama [33]
  7. Sayısal Yöntemler,[34] Optimizasyon ve İstatistik [35]
  8. Yapay Zeka [36] ve Makine Öğrenimi [37]

Yazılım donanımı nasıl etkiledi?[değiştir | kaynağı değiştir]

Giderek daha fazla program aygıt yazılımı alanına girdikçe ve donanımın kendisi Moore yasasının öngördüğü gibi daha küçük, daha ucuz ve daha hızlı hale geldikçe, ilk olarak yazılım tarafından gerçekleştirilen artan sayıda bilgi işlem işlevsellik türü, donanımın saflarına katıldı. örneğin grafik işlem birimleriyle. (Ancak bazen maliyet veya diğer nedenlerden dolayı değişiklik ters yönde olmuştur; örneğin softmodemler ve mikrokodlarda olduğu gibi.)

Günümüzde çoğu donanım şirketinin maaş bordrosunda donanım tasarımcılarından daha fazla yazılım programcısı var, çünkü yazılım araçları baskılı devre kartı (PCB) mühendislerinin birçok görevini otomatik hale getirmiştir.

Bilgisayar yazılımı ve programlama dili zaman çizelgesi[değiştir | kaynağı değiştir]

Aşağıdaki tablolar, bilgisayar yazılımının birçok farklı yönünün yıldan yıla gelişimini içermektedir:

  1. Yüksek seviyeli diller [38][39]
  2. İşletim sistemleri [40]
  3. Ağ yazılımı ve uygulamaları [41]
  4. Bilgisayar grafik donanımı, algoritmaları ve uygulamaları [42][43]
  5. Hesap tablosu
  6. Kelime işlemci
  7. Bilgisayar destekli tasarım [44]

1971–1974[değiştir | kaynağı değiştir]

1971 1972 1973 1974
Programlama dili CDL



<br /> KRL



<br /> SUE
C



<br /> INTERCAL



<br /> PL/M



<br /> Prolog



<br /> Smalltalk



<br /> SQL
COMAL



<br /> LIS



<br /> ML



<br /> Speakeasy-3
BASIC FOUR



<br /> CLU



<br /> GRASS



<br /> PROSE
İşletim sistemi DEC RSTS-11 Veri Genel



<br /> RDOS
Soviet ALGOL 68 DEC DOS-11
Bilgisayar ağı Wozniak'ın

Mavi kutusu
Bob Metcalfe gelişiyor



<br /> ethernet
Bilgisayar grafiği Newell ve Sancha görünür durumda<br id="mwAhQ"><br><br><br><br /> yüzey algoritması Catmull ve Straber<br id="mwAhg"><br><br><br><br /> z-tampon geliştir
CAD/CAM MCS kuruldu ADAM Auto-Draft Tektronix 4014

1975–1978[değiştir | kaynağı değiştir]

1975 1976 1977 1978
Programlama Dili ABC



<br /> Altair BASIC



<br /> CS-4



<br /> Modula



<br /> Scheme
Mesa



<br /> Plus



<br /> Ratfor



<br /> S



<br /> SAM76



<br /> SAS



<br /> Smalltalk -76
Blue



<br /> Bourne Shell



<br /> Commodore BASIC



<br /> FP



<br /> Icon



<br /> IDL



<br /> Red



<br /> Standart MUMPS



<br /> Yellow



<br /> IDL
C shell



<br /> HAL/S



<br /> MATLAB



<br /> RPG III



<br /> SMALL



<br /> VisiCalc



<br /> SQL
İşletim sistemi CP/M Cambridge CAP 1BSD 2BSD



<br /> AppleDOS
Bilgisayar ağı Telenet paketi



<br /> anahtarlama
Bilgisayar grafiği EDS kuruldu Kenar yumuşatma
Kelime işlemci ElectricPencil AppleWriter
CAD/CAM Katı modelleme McDonnell Douglas



<br /> Unigraphics'i satın aldı
CATIA'nın öncüsü Raster grafik ekranı

1979–1982[değiştir | kaynağı değiştir]

1979 1980 1981 1982
Programlama dili AWK



<br /> Icon



<br /> Modula-2



<br /> REXX



<br /> Vulcan dBase -II
Ada 80



<br /> C with classes



<br /> CBASIC
BBC BASIC



<br /> IBM BASICA
Draco



<br /> PostScript



<br /> Speakeasy -IV
İşletim sistemi AtariDOS 86-DOS MSDOS 1



<br /> Acorn MOS
Commodore DOS
Bilgisayar ağı Usenet TCP/IP
Bilgisayar grafiği Silikon Grafikler



<br /> kurulan
Kelime işlemci Kelime yıldızı KelimeMükemmel



<br /> DG Mini için
Banka Caddesi



<br /> AppleWriter II
WordStar 3.0<br /> DOS için WordPerfect
E-tablo VisiCalc Nilüfer 1-2-3
CAD/CAM IGES VersaCAD Dassault Sistemleri Autodesk kuruldu

1983–1986[değiştir | kaynağı değiştir]

1983 1984 1985 1986
Programlama dili ABAP

Ada 83

C++

GW-BASIC

Korn Shell

Objective-C

occam

True BASIC

Turbo Pascal

CLIPPER

Common Lisp

Good Old MAD (GOM)

OPL

Redcode

RPL

Standard ML

Matlab

Framework FRED
Paradox

QuickBASIC

Framework II FRED
CorVision

Eiffel

GFA BASIC

Informix-4GL

LabVIEW

Miranda

Object Pascal

PROMAL
İşletim sistemi MS-DOS 2

Lisa Office

SunOS 1
MS-DOS 3

System Software
Windows 1.0

Atari TOS

AmigaOS
AIX 1
Bilgisayar ağı ARPANET splits

off MILNET
Novell NetWare

Research In Motion founded
NSFNET connects

5 Supercomputers
Bilgisayar grafiği ATI founded Intel 82786

coprocessor
Kelime işlemci Word 1 for DOS Word 1 for Mac WordPerfect 4.2

for DOS
Hesap tablosu Excel for Mac
CAD/CAM Autodesk releases

AutoCAD 1.2,1.3,1.4
AutoCAD 2 Bentley Systems

Parametric Technology
AutoLISP

1987–1990[değiştir | kaynağı değiştir]

1987 1988 1989 1990
Programlama dili Ada ISO 8652

Clean

Erlang

HyperTalk

Mathematica

Oberon

occam 2

Perl

Self

Turbo Basic
A+

Hamilton C shell

Object REXX

Octave

RPG/400

SPARK

STOS BASIC

Tcl

Mathematica

Framework III FRED
Bash

LPC

Modula-3

PowerBASIC

Turbo Pascal OOP

VisSim

FL
AMOS BASIC

AMPL

EuLisp

Haskell

J

Object Oberon

Z Shell
İşletim sistemi Windows 2.0 MS-DOS 4

Windows 2.1x

OS/2

A/UX
EPCO Windows 3.0
Bilgisayar ağı Morris worm World Wide Web

başladı
HTML
Bilgisayar grafiği JPEG ve GIF Pixar's Tin Toy

wins Oscar
AutoDesk 3D Studio
Kelime işlemci Microsoft Works for DOS PC Magazine Reviews

55 Packages
WordPerfect 5.1

Word for Windows
Microsoft Office for Windows
Hesap tablosu Excel for Windows Quattro Pro
CAD/CAM Deneba,
Canvas X
ve
AutoCAD 9'u yayınladı
CATIA 3

AutoCAD 10
Parametric T-Flex Visionary Design Systems,
AutoCAD 11 ve
ACIS 1'i kurdu

1991–1994[değiştir | kaynağı değiştir]

1991 1992 1993 1994
Programlama dili GNU-E



<br /> Oberon-2



<br /> Oz



<br /> Q



<br /> Visual Basic



<br /> Python



<br /> Framework IV FRED
Turbo Pascal



<br /> Dylan
Ruby



<br /> AppleScript



<br /> Brainfuck



<br /> K



<br /> Lua



<br /> NewtonScript



<br /> R



<br /> Transcript



<br /> Self



<br /> ZPL
CLOS



<br /> ANS Forth



<br /> ANSI Common Lisp



<br /> Claire



<br /> Pike



<br /> RAPID
İşletim sistemi MSDOS 5



<br /> Linux
Windows 3.1x



<br /> 386BSD
MSDOS 6



<br /> Newton OS


<br /> Solaris
AIX4.0, 4.1
Bilgisayar ağı Mosaic Web tarayıcısı NetWare 4 Netscape Navigator
Bilgisayar grafiği OpenGL Nvidia kuruldu
Kelime işlemci Microsoft Works Novell, WordPerfect'i satın aldı
CAD/CAM EDS

<br /> Unigraphics'i satın aldı
CADAM ve CATIA



<br /> birleşmeye başladı
AutoCAD12 Basit Vektör



<br /> Format

1995–1998[değiştir | kaynağı değiştir]

1995 1996 1997 1998
Programlama dili Ada 95

ColdFusion

Delphi

Java

JavaScript

LiveScript

PHP

Ruby
Curl

Lasso

NetRexx

OCaml

Perl Data Language

WebDNA
Component Pascal

E

ECMAScript

F-Script

ISLISP

Pico

REBOL

Squeak Smalltalk

Tea

Rebol
M2001

Open Source Erlang

Pikt

PureBasic

REALbasic

Standard C++

UnrealScript
İşletim sistemi Windows 95

Digital UNIX
Windows NT 4.0

Palm OS
Inferno

Mac OS 7.6

Mac OS 8
Windows 98

Solaris 7 64-bit
Bilgisayar ağı Google için araştırma teklifi verildi. Mosaic web tarayıcısı

Inter@ctive Pager
NetWare 4 Netscape Navigator
Bilgisayar grafiği Pixar,Toy Story'den sonra halka arz edildi 3Dfx Voodoo ATI Rage Pro Voodoo Banshee
Kelime işlemci Word 95 for Windows Corel Novell'den WordPerfect'i satın alır.
CAD/CAM MicroStation Advanced

solid modeling
Canvas 5 ISO 13567

AutoCAD 14
Dassault Systems,
Matra Datavision products'u satın aldı

1999–2002[değiştir | kaynağı değiştir]

1999 2000 2001 2002
Programlama dili D



<br /> GameMaker Language



<br /> Harbour



<br /> XSLT
ActionScript



<br /> C#



<br /> Ferite



<br /> Join Java



<br /> Joy



<br /> XL



<br /> Visual Basic . NET
AspectJ



<br /> GDScript



<br /> Processing



<br /> RPG IV
Gosu



<br /> Io
İşletim sistemi Mac OS X Server 1.0



<br /> MacOS 9
Windows 2000



<br /> Windows ME



<br /> Mac OS X Public Beta
v10.0 Cheetah



<br /> v10.1 Puma



<br /> Windows XP
Windows XP 64-bit Edition



<br /> 10.2 Jaguar
Bilgisayar ağı BlackBerry 850 NetWare 4 Netscape Navigator
Bilgisayar grafiği S3 Savage 4



<br /> Geforce 256
Radeon DDR ( R100 ) Nvidia Kyro II



<br /> GeForce3
Kelime işlemci Sun, Star Division'ı satın aldı
CAD/CAM Pro/Engineer 2000 AutoCAD 2000 EDS, SDRC'yi satın aldı Unigrafik NX



<br /> Autodesk Revit'i satın aldı

2003–2006[değiştir | kaynağı değiştir]

2003 2004 2005 2006
Programlama dili Factor



<br /> Nemerle



<br /> Scala



<br /> Squirrel
Alma-0



<br /> Boo



<br /> FreeBASIC



<br /> Groovy



<br /> Little b



<br /> Subtext
Ada 2005



<br /> F#



<br /> Seed7
Cobra



<br /> Links



<br /> OptimJ



<br /> Windows PowerShell
İşletim sistemi v10.3 Panther



<br /> Red Hat


<br /> Enterprise Linux



<br /> Windows Server 2003
v10.4 Tiger



<br /> Ubuntu 5



<br /> Windows XP Professional x64 Edition
Bilgisayar ağı 802.11g



<br /> Apple Safari
Gmail



<br /> Facebook kuruldu



<br /> Mozilla Firefox
BlackBerry Pearl 8100

2007–2010[değiştir | kaynağı değiştir]

2007 2008 2009 2010
Programlama dili Clojure



<br /> Fantom



<br /> Fortress



<br /> LOLCODE



<br /> Oberon-07



<br /> Vala
Genie


<br /> Pure
CoffeeScript



<br /> Go



<br /> Idris



<br /> Parasail
Chapel



<br /> RPG Open Access



<br /> Rust
İşletim sistemi Windows Vista



<br /> v10.5 Leopard



<br />
Android Windows 7



<br /> v10.6 Snow Leopard



<br /> Android 1.5 "Cupcake"



<br /> Android 1.6 "Donut"



<br /> Android 2.0–2.1 "Eclair"
Android 2.2 "Froyo"



<br /> Android 2.3 "Gingerbread"
Bilgisayar ağı Google Chrome



<br /> Chromium
Wi-Fi 802.11n
Bilgisayar grafiği Assassin's Creed Yukarı Cloth Simulation Avatar
<br /> "En iyi görüntü"'yü kazanır.
Kelime işlemci Oracle, Sun'dan OpenOffice'i satın aldı. Oracle, OpenOffice'i Apache Yazılım Vakfı'na devretti.



<br />
CAD/CAM Siemens, UGS'yi satın aldı

2011–2014[değiştir | kaynağı değiştir]

2011 2012 2013 2014
Programlama dili Dart Ada 2012



<br /> Elixir



<br /> Julia



<br /> TypeScript

CryEngine#CryEngine 3 ( BeamNG.drive )

Xojo Hack



<br /> Swift
İşletim sistemi v10.7 Lion



<br /> Android 3.x "Honeycomb"



<br /> Android 4.0 "Ice Cream Sandwich"
Windows 8



<br /> v10.8 Mountain Lion



<br /> Android 4.1.x–4.2.x "Jelly Bean"
v10.9 Mavericks



<br /> Windows 8.1



<br /> Android 4.3 "Jelly Bean"



<br /> Android 4.4 "KitKat"
v10.10 Yosemite



<br /> Android 5.0 "Lolipop"
Bilgisayar ağı 802.11ac
Bilgisayar grafiği Hugo Oscar'ı kazandı



<br /> Görsel efektler
CryEngine3 ve 3 boyutlu yumuşak vücut fiziği

Ayrıca bakınız[değiştir | kaynağı değiştir]

Kaynakça[değiştir | kaynağı değiştir]

Kaynaklar[değiştir | kaynağı değiştir]

Dış bağlantılar[değiştir | kaynağı değiştir]

  1. ^ Ancient Discoveries, Episode 11: Ancient Robots, History Channel, 1 Mart 2014 tarihinde kaynağından arşivlendi, erişim tarihi: 6 Eylül 2008 
  2. ^ Freeth, Tony (2009). "Decoding an Ancient Computer: Greek Technology Tracked the Heavens". Scientific American (İngilizce). 301 (6): 76-83. doi:10.1038/scientificamerican1209-76. PMID 20058643. 10 Ekim 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Ekim 2022. 
  3. ^ a b c d Evans 2018.
  4. ^ Hally, Mike (2005). Electronic brains/Stories from the dawn of the computer age. Londra: British Broadcasting Corporation and Granta Books. s. 79. ISBN 1-86207-663-4. 
  5. ^ a b c d Light 1999.
  6. ^ Connolly, Cornelia; Hall, Tony; Lenaghan, Jim (10 Ocak 2018). "The women who led the way in computer programming". RTE.ie (İngilizce). 18 Mart 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2018. 
  7. ^ a b c Smith 2013.
  8. ^ a b c d e f g h i Gürer 1995.
  9. ^ a b Ceruzzi 1998.
  10. ^ "Frances Holberton, Pioneer in Computer Languages, Dies". The Courier-Journal (İngilizce). 12 Aralık 2001. 26 Ekim 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Kasım 2018 – Newspapers.com vasıtasıyla. 
  11. ^ Jean E. Sammet (1969). Programming Languages: History and Fundamentals, Prentice Hall, Englewood Cliffs, New Jersey.
  12. ^ R.W. Bemer (1969). A politico-social history of Algol, Annual Review in Automatic Programming, pp 151-237. Pergamon Press, Oxford.
  13. ^ "Computer Authority to Speak Here". The Times (İngilizce). 9 Nisan 1972. Erişim tarihi: 13 Ekim 2018 – Newspapers.com vasıtasıyla. 
  14. ^ a b c d e f g h i Harvey IV, Harry Gould (13 Ekim 2015). "Her Code Got Humans on the Moon—And Invented Software Itself". WIRED (İngilizce). 27 Kasım 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2018. 
  15. ^ "The Lines of Code That Changed Everything; Apollo 11, the JPEG, the first pop-up ad, and 33 other bits of software that have transformed our world". Slate. 14 Ekim 2019. 17 Ekim 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 17 Ekim 2019. 
  16. ^ a b c d e f g h i j Mindell 2008.
  17. ^ "Margaret Hamilton". Computer History Museum (İngilizce). 5 Kasım 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2018. 
  18. ^ "Meet Margaret Hamilton, the scientist who gave us "software engineering"". IEEE Software Magazine | IEEE Computer Society (İngilizce). 8 Haziran 2018. 24 Kasım 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2018. 
  19. ^ G. David Garson (January 2006). Public Information Technology and E-governance: Managing the Virtual State. Jones & Bartlett Learning. ss. 229-. ISBN 978-0-7637-3468-8. 
  20. ^ Gary Myers (Nov 1985). "Tying Arrangements and the Computer Industry: Digidyne Corp. vs. Data General". Duke Law Journal. 1985 (5): 1027-1056. doi:10.2307/1372482. 22 Kasım 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mart 2024. 
  21. ^ "Justice WHITE, with whom Justice BLACKMUN joins, dissenting". 17 Ekim 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mart 2024. 
  22. ^ "Archived copy" (PDF). 1 Ocak 2017 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 31 Aralık 2016. 
  23. ^ Ensmenger, Nathan (2010). The Computer Boys Take Over. s. 55. ISBN 978-0-262-05093-7. 
  24. ^ Brad Lockwood (13 Ekim 2008). Bill Gates: Profile of a Digital Entrepreneur: Easyread Super Large 18pt Edition. ReadHowYouWant.com. ss. 25-. ISBN 978-1-4270-9149-9. 
  25. ^ Caruso, Denise (2 Nisan 1984). "Company Strategies Boomerang". InfoWorld. ss. 80-83. Erişim tarihi: 10 Şubat 2015. 
  26. ^ Schrage, Michael (17 Şubat 1985). "IBM Wins Dominance in European Computer Market". Washington Post (İngilizce). ISSN 0190-8286. 29 Ağustos 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 29 Ağustos 2018. 
  27. ^ Booch, Grady (1997). Object-Oriented Analysis and Design with Applications. Addison-Wesley.
  28. ^ Peter Brass. (2008) Advanced Data Structures, Cambridge University Press
  29. ^ Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L. & Stein, Clifford. (2001) Introduction to Algorithms, MIT Press and McGraw-Hill.
  30. ^ Hopcroft, John E. and Jeffrey D. Ullman, (1979) Introduction to Automata Theory, Languages, and Computation
  31. ^ Aho, Alfred V., Sethi, Ravi, and Ullman, Jeffrey D. (1988). Compilers: Principles, Techniques, and Tools. Addison-Wesley.
  32. ^ Shirley, Peter. (2009) Fundamentals of Computer Graphics – 3rd edition
  33. ^ Knuth, Donald. (1998) The Art of Computer Programming: Volume 3: Sorting and Searching
  34. ^ Press, William H., Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery. (2007) Numerical Recipes 3rd Edition: The Art of Scientific Computing
  35. ^ Baron, Michael. (2006) Probability and Statistics for Computer Scientists
  36. ^ Russell, Stuart J. and Peter Norvig (2009) Artificial Intelligence: A Modern Approach (3rd Edition)
  37. ^ Mitchell, Tom. (1997) Machine Learning.
  38. ^ Aaby, Anthony (2004). Introduction to Programming Languages
  39. ^ Wexelblat, Richard L. History of Programming Languages
  40. ^ Stallings (2005). Operating Systems, Internals and Design Principles. Pearson
  41. ^ Kurose, James; Ross, Keith (2005). Computer Networking: A Top-Down Approach. Pearson.
  42. ^ Wayne Carlson (2003) A Critical History of Computer Graphics and Animation
  43. ^ Ferguson, R. Stuart. (2013) Practical Algorithms for 3D Computer Graphics
  44. ^ Narayan, K. Lalit (2008). Computer Aided Design and Manufacturing. Prentice Hall