BASIC’in Ortak Mucidi Thomas E. Kurtz Hayatını Kaybetti
(computerhistory.org)- Thomas Eugene Kurtz, John Kemeny ile birlikte BASIC ve Dartmouth Timesharing System’i geliştiren Amerikalı matematikçi ve bilgisayar bilimciydi; 22 Şubat 1928’de doğdu, 12 Kasım 2024’te hayatını kaybetti
- 1960’ların başındaki akademik bilişim ortamında lisans öğrencilerinin kolayca kullanabileceği uzman olmayanlara yönelik programlama dili eksikti; BASIC bu boşluğu doldurmak için geliştirildi
- Kurtz ve Kemeny, öğrencilerin kampüsteki Teletype terminalleri üzerinden BASIC’e erişebilmesi için DTSS’yi birlikte geliştirdi; iki sistem 1 Mayıs 1964’te kullanıma açıldı
- 1964 sonbaharında Dartmouth kampüsündeki 20 terminalde yüzlerce öğrenci BASIC kullanıyordu; dil daha sonra birçok bilgisayar nesline yayıldı
- Kurtz’un etkisi Dartmouth’un bilişim eğitimi ve operasyon organizasyonlarına, BASIC’in standartlaştırılmasına ve True BASIC’in kuruluşuna uzandı; 1994’te ACM Fellow seçildi
BASIC ve Dartmouth Timesharing System
- Thomas Eugene Kurtz, John Kemeny ile birlikte BASIC programlama dili ve Dartmouth Timesharing System(DTSS)’in ortak mucidiydi
- 1960’ların başındaki akademik bilişim ortamında lisans öğrencilerinin kullanabileceği basit, uzman olmayanlara yönelik bir programlama dili eksikti; BASIC bu kullanıcılar düşünülerek geliştirildi
- İkili, BASIC’i kampüsteki öğrencilere sunmak için DTSS’yi de birlikte geliştirdi
- DTSS, bilgisayar erişimini ağ üzerinden paylaştıran bir yaklaşımdı
- Birden fazla öğrencinin BASIC’e erişebilmesi için böyle bir altyapı gerekiyordu
- DTSS, başarılı ilk büyük ölçekli zaman paylaşımlı sistemlerden biri haline geldi
- Dartmouth’a bilgisayar bağışlamış olan General Electric, DTSS’yi Genie gibi çevrimiçi hizmetlerin çekirdeği olacak şekilde genişletti
- DTSS ve BASIC 1 Mayıs 1964’te kullanıma açıldı
- 1964 sonbaharında kampüsteki 20 terminalde yüzlerce öğrenci BASIC kullanıyordu
Eğitim geçmişi ve erken bilişim deneyimi
- Kurtz, Illinois eyaletinin Oak Park kentinde doğdu; 1950’de Knox College’dan mezun olduktan sonra 1956’da Princeton University’de matematik doktorasını aldı
- 1951’de UCLA’da bulunan SWAC bilgisayarını kullanma fırsatı elde etti
- SWAC, National Bureau of Standards tarafından yapılan Standards Western Automatic Computer’dı
- ABD’nin ilk elektronik bilgisayarlarından biriydi ve 2013 CHM Fellow’u Harry Huskey tarafından denetleniyordu
BASIC’in yayılması ve kişisel bilgisayar çağı
- BASIC, birçok bilgisayar neslinde kullanılmaya devam etti
- 1960’ların ana bilgisayarları ve mini bilgisayarları
- 1970–80’lerin mikro bilgisayarları
- Günümüzün kredi kartı boyutundaki Raspberry Pi bilgisayarları
- 1978’de Harvard öğrencileri Bill Gates ve Paul Allen, hobi amaçlı mikro bilgisayar MITS Altair 8800 için ilk BASIC sürümünü yazdı
- Bu BASIC, neredeyse hiç işlevi olmayan yanıp sönen bir kutu durumundaki Altair’i kullanışlı bir bilgisayara dönüştürdü
- Kişisel bilgisayar çağında BASIC’in popülerliği yeniden büyük ölçüde arttı
Dartmouth’taki eğitim ve organizasyon çalışmaları
- Kurtz, Dartmouth’ta uzun süre bilişim eğitimi ve operasyonlarıyla ilgilendi
- 1966–1975 arasında Kiewit Computation Center’da director olarak görev yaptı
- 1975–1978 arasında Office of Academic Computing’in director görevini üstlendi
- 1979’da Stephen J. Garland ile birlikte Computer and Information Systems alanında profesyonel bir yüksek lisans programı organize etti; finansmanın bir kısmı IBM hibesiyle sağlandı
- 1983’te Kemeny ve Dartmouth mezunu 3 öğrenciyle birlikte True BASIC, Inc.’i kurdu
- Amaç, kaliteli eğitim yazılımları ve platformdan bağımsız BASIC derleyicileri geliştirmekti
- CIS programı sona erdikten sonra 1988’de yeniden ders vermeye döndü ve 1993’te Dartmouth’tan emekli oldu
BASIC standartlaştırması ve akademik bilişime katkıları
- Kurtz, çeşitli akademik bilişim organizasyonları ve standartlaştırma çalışmalarında yer aldı
- EDUCOM’da council chairman ve trustee olarak görev yaptı
- President's Advisory Committee’nin Pierce Panel’inde yer aldı
- NSF ve ARPA destekli 2 çalışmanın steering committee’sinde görev aldı
- instructional computing konulu ilk CCUC conference’a başkanlık etti
- BASIC’in standartlaştırılmasında da kilit rol oynadı
- BASIC’in ANSI standardını oluşturan American National Standards committee X3J2’nin kurulmasına katkıda bulundu ve 1974–1985 arasında başkanlığını yaptı
- BASIC uluslararası standardıyla ilgilenen ISO committee SC22/WG8 üyesi olarak görev yaptı ve 1987–1993 arasında convener oldu
- 1994’te ACM Fellow seçildi
1 yorum
Hacker News yorumları
96 yaşındaymış; dolu dolu bir hayat yaşamış. RIP
1986~1990 civarında, eski Bangalore’da 12 yaşındayken QBASIC’i çok kullanırdım; o zamanlar Hindistan’da Mac, Unix ya da Windows değil, sadece MSDOS vardı
386’ya 5,25 inç disket takıp
command.comile açılış yaptıktan sonraGWBASIC.EXE’ye girer,SOUND 2000+i, jgibi kodlarla tiz sesler çıkarıp ailemi ve arkadaşlarımı rahatsız ederdim; bunu birWHILE WENDdöngüsüne koyunca insanlar nasıl kapatacaklarını bilemez, ortalık karışırdıBir gün birden DOS’un yerine MS WINDOWS 3.1 geldi; fareye beyaz bir top takıp ikonlara tıklamak gerekiyordu, GWBASIC kayboldu, QBASIC ve yılan oyunu geldi
CGA’da
SCREEN 2,LINE,CIRCLEile çizimler yaparken VGA’ya yükseltipSCREEN 12’nin 640x480’ini kullanarak ses de çıkaran programlar yazdım; BASIC sayesinde harika bir çocukluk geçirdimBASIC’ten CLIPPER’a, FOXPRO’ya geçtim; FOXPRO ile stok yönetim sistemi yapıp gerçekten rupi kazandım, sonra MFC ve Borland C++ üzerinden bugüne geldim ama her şey BASIC’le başladı. Teşekkürler, Dr. Kurtz
Özellikle GWBASIC demen ilginç; benim de erişebildiğim BASIC oydu ve ABD’de bu varyant pek yaygın değilmiş gibi geliyor
CLIPPER da öğrenip çeşitli araçlar ve iş uygulamaları yaptım; o da oldukça bölgesel yayılmış gibi görünüyor
Programlamayı ilk öğrendiğim dil BASIC’ti. D’yi tasarlarken BASIC’te string işlemenin ne kadar kolay ve doğal olduğunu, C’de string işlemenin ise ne kadar hata dolu bir bataklık olduğunu hatırladım
D’de string’leri kolay ve doğru yapmak büyük bir öncelikti; tarihin de gösterdiği gibi bunun başarılı olduğunu düşünüyorum
C kodu incelerken önce string işlemlerine bakarım; orada hata bulma olasılığı neredeyse kesindir. İtiraz edenlere sorayım: bakmadan
strncpy()’nin 0 ile sonlandırmayı nasıl ele aldığını söyleyebilir misiniz?Teşekkürler, Thomas Kurtz
Telefonda, şey, C hakkında sormuştum sanırım; sen kibarca yanıt verdin ama dişlerini sıkar gibiydin
Sonunda C’yi seçtik ve o işletim sistemi şu şeyin içine girdi: https://www.youtube.com/watch?v=u8ZEUwwOYxo&t=72s
O konuşmayı hâlâ hatırlayınca irkiliyorum
Muhtemelen on binlerce kişi aynı anda o sayfaları elle giriyordu; lisede daktilo dersi aldığına sevinenler de olmuştur
Sonra “şunu bir denemek istiyorum”a dönüşüyor, başarıya ulaşıyor ya da daha güçlü bir BASIC ararken
PEEK,POKE, hatta assembler’a kadar gidiyordunuz. Gerçekten heyecan vericiydi ve kendi başına bir şeyler yapabilme hissi çok büyüktüTeşekkürler, Thomas Kurtz
strncpy()en fazlanbayta kadar kopyalar ve bunun içinde null bayt varsa onu da dahil eder; amaninci bayt null değilse null eklemezBu yüzden ya
n+1bayt ayırmak yaninciyi kesmek ya da son baytı bizzat 0’a ayarlamak gerekirBASIC’in mirası muazzam. Çocukken şans eseri bir Atari 800XL kullanabiliyordum; donanımda BASIC ROM’u vardı, ben de BASIC öğrendim
Çevresinde bilgisayardan anlayan hiç kimse olmayan bir çocuğun bile kılavuzun arkasındaki örnek programlara bakarak öğrenebileceği kadar kolaydı
Kurtz ile hiç tanışmadım ama bilgisayarların ve programlamanın sunduğu neredeyse sınırsız yaratıcılığa erişmemi sağlayan o dile çok şey borçluyum
Büyük ölçekli ve karmaşık işler için en iyi dil değildi ama bir çocuğun metin macerası yapması ve ekrana piksel basması için yeterliydi.
INT’in integer değil interrupt olduğunu öğrenmem bundan yaklaşık 10 yıl sonra olduErgenlikte TI-BASIC ile derslerde hesap makinesi oyunları yapıp oynamam da geliştirici olarak yetişmemde iyi bir etki yaptı ve programlamada sık yaşanan “aynı ama farklı” deneyimin ilk örneğiydi. Şansım yaver gidip bu, erken dönem oyun geliştirme kariyerime de bağlandı
Düne kadar Thomas E. Kurtz adını tanımazdım ama BASIC kelimesini duymam bile onlarca güzel anıyı aklıma getiriyor. Çocukken kullandığım Atari 800XL hâlâ duruyor; artık ona her baktığımda onu hatırlayacağım
Yanlış hatırlamıyorsam 1976'da BASIC'teki ilk satırımı yazdım.
15 yaşındaydım ve babamla bir ticaret fuarına gitmiştik; IBM standında biri bana Ay'a iniş oyununu denememi önerdi. Makine IBM 5100'dü.
Ekranın üstüne doğru kayıp kaybolan karakterlere ne olduğunu babama sordum; teknolojiye hiç ilgisi olmayan babam da bir IBM mühendisine açıklatmasını istedi. O anda bunun benim yolum olduğunu anladım ve BASIC'te ilk birkaç satırımı tam orada yazdım.
Ertesi yıl Hewlett Packard standında, HP-9825A gibi görünen bir makinenin plotter ile Lissajous şekilleri çizmesini izleyip büyülenmiştim.
Sonraki yıl bir HP-25 almak için her tatilde çalıştım; ondan sonraki yıl da bir TRS-80 Model 1 Level II edindim ve BASIC ile programlamaya başladım.
O zamanlar pek bir şey bilmediğimden, Editor/Assembler alırsam ekran çözünürlüğünün artacağını bile sanıyordum.
Sonrasında Atari ST'de Megamax C ve GFA BASIC kullandım, PC'de de çeşitli dillerden geçtim.
Beni her zaman şaşırtan şey, bazı insanların yalnızca birkaç gün, birkaç hafta ya da birkaç ay içinde milyonlarca kişinin ömür boyu kullanacağı diller yaratmış olması. Muazzam bir etki.
Kurtz hocam, belki en iyi dili yaratmadınız ama yarattığınız şey genç programcılardan oluşan bir kuşağa sevinç ve ilham verdi. O sevinç bugün biraz solmuş gibi geliyor; Rust ile kod yazıyorsanız belki istisna olabilir.
Plazma ekran kullanan, 1000 terminali olan; sosyal ağların yanı sıra Microsoft Flight Simulator'ın öncülü airfight'ı ve ilk dungeon oyunu pedit5/dnd'yi barındıran bir sistemdi.
Çim biçerek HP-25 ya da SR-52 hesap makinesi, hatta IMSAI 8080 gibi kendi bilgisayarımı almayı çok istiyordum.
Daha sonra PLATO'da cep tipi futbol oyununu simüle ettirdim ve oyuncak bir yorumlayıcıyla BASIC programları da yazdım; ama oturum bitince programı kaydetmenin bir yolu yoktu.
2010'da 60'lar ve 70'lerdeki bilgisayar hizmeti vizyonu üzerine doktora tezim için Thomas Kurtz ile evinde röportaj yaptım.
Bu vizyon, AT&T ya da elektrik şirketleri gibi büyük bilgisayar hizmetlerinin elektronik servisler sunduğu bir dünya öngörüyordu.
Kendisi çoktan emekli olmuştu ama hâlâ Dartmouth yakınlarındaki New Hampshire tepelerinde yaşıyordu; röportaj notlarımı şimdi bulamıyorum, fakat çok nazik ve misafirperver olduğunu hatırlıyorum.
Onun ve John Kemeny'nin Dartmouth'ta yaptığı iş gerçekten şaşırtıcıydı. Onlar için teknoloji, yani zaman paylaşımlı kullanım ve BASIC, öğrencileri eğitmek, güçlendirmek ve nihayetinde toplumun tamamını daha güçlü kılmak için bir araçtı.
Paylaştığın için teşekkürler. Okumayı sabırsızlıkla bekliyorum.
Tom Kurtz ve John Kemeny, ayrıca BASIC, benim hayatımı da değiştirdi.
İlk BASIC programımı 1970'te yazdım; ertesi yıl liseden itibaren okulun bilgisayar odasındaki Model 33 Teletype'ın başında, eğitim bölgesinin HP-2000 zaman paylaşımlı sistemi üzerinden saatlerce BASIC programladım.
Sonunda lisans öğrencilerine yönelik bilgisayar felsefesi nedeniyle Dartmouth'a gitmeye karar verdim.
O dönemde bilgisayara herhangi bir biçimde erişebilmek bile büyük bir şeydi; programlama yapabilmek ise yüksek lisans ya da iş başvurularında insanı yaşıtlarından belirgin biçimde ayıran bir beceriydi.
Bu yüzden, genç kuşaklarda yetkin kişi sayısı patlama yapsa bile, 1970'lerin başındaki o dalganın üstünde bugüne kadar gelmişim gibi hissediyorum.
Şaşırtıcı ve kısa bir dönemdi. Bugün 13 yaşında olsaydım, insanı benzer şekilde kolayca ileri taşıyacak teknolojinin ne olduğunu pek bilmiyorum.
İlk programım şöyleydi:
10 LET N=5^2.5,20 PRINT N,30 END55'in biraz üzerindeki sonuç bir vahiy gibiydi. O zamanlar logaritma bilmediğim için kesirli üslerin anlamı benim için tamamen muammaydı; sonucun ne anlama geldiğini matematik öğretmenime sormam gerekmişti.
“5 to the power of 2.5” yazıp birkaç kez tıklayınca arama kutusunda ‘math solver’ görünen şöyle bir sonuç çıktı: https://www.google.com/search?q=5%5E(2.5)
Çözüm adımlarını gösteren bir düğme de var; Quora yanıtında ise üs kurallarını kullanan iki çözüm gösterilmişti.
Harika. Artık okul matematiğimi yeniden gözden geçirmem gerekecek.
Dr. Kurtz için siyah yas çubuğu koyabilir miyiz?
Sektörümüzde BASIC’in mirasının önemi ne kadar vurgulansa az. Dartmouth’taki o dil ve misyonu devrim niteliğindeydi.
Özellikle kişisel bilgisayarların şafağında, sayısız yeni bilgisayar kullanıcısının ilk karşılaştığı programlama dili olması bile ölçülemeyecek kadar büyük ikincil etkiler yarattı.
Nostaljiye kapıldım; işte 1964 tarihli Dartmouth BASIC referansı: http://web.archive.org/web/20120716185629/http://www.bitsave...
Gerçekten çok etkileyici ve dönemin havasını biraz hissettiriyor.
Özellikle 21. sayfadaki “TYPING IS NO SUBSTITUTE FOR THINKING” ifadesini seviyorum.
BASIC, programlamaya giden kolay bir giriş yoluydu ve benim gibi 70’ler ve 80’ler çocukları dahil sayısız insanı bilgisayara bağladı. Geleceği en az herkes kadar o da şekillendirdi.
Kaydetmek için disk sürücüm olmadığından, kimsenin fişi çekmemesini umarak kabloya etiket yapıştırmıştım.
Birkaç yıl sonra dot-com patlaması sırasında üniversite birinci sınıf öğrencisiyken VB kullandığım ilk işimi buldum ve bu, kelimenin tam anlamıyla hayatımı değiştirerek beni ailemden daha iyi koşullara ulaşabileceğim bir yola soktu.
Bu yüzden
F0R X=1 T0 1OOgibi satırlar var.1964’te gerçekten böyle ters miydi?
BASIC’in mirasının muazzam olduğunu söylemek istiyorsanız, ne denirse densin bunu abartmanın zor olduğu anlamına gelen ifade doğru olanı.
“couldn't be understated” ise ne kadar önemsiz gösterilirse gösterilsin bunun hâlâ doğru olacağı anlamına gelir. Muhtemelen kastettiğiniz bu değildi.
Bu yüzden emptiestplace’in yorumu o kadar da downvote edilmeyi hak etmiyordu.
Benim kuşağımdaki birçok programcı gibi, ilk öğrendiğim dil BASIC’ti.
80’lerde ve 90’larda BASIC gerçekten her yerdeydi; neredeyse her bilgisayarla bir şekilde BASIC gelirdi.
6. sınıf matematik kitabımda bile, eğitsel matematik oyunlarının BASIC kaynak kodu listeleri olarak yer aldığı bir ek vardı.
Hoşça kalın ve balıklar için teşekkürler, Dr. Kurtz.
Aklıma hemen BASIC, BASICA ve QBASIC geliyor; artık varyantlar arasındaki farkları hatırlamıyorum.
Böyle bir ifade olduğunu biliyorum ve okumuştum da, ama Google’dan değil bir insandan açıklama duymak isterim.
Ben de programlamaya BASIC ile başladım.
İlki okuldaki Apple ][ idi, sonra evde bir Vic-20’m oldu.
Vic-20’nin daha havalı oyunlarının çoğu, dergilerden muazzam miktarda tamsayı verisini aynen girmeyi gerektiriyordu; bu yüzden pek eğitici sayılmazdı.
Daha sonra Rocky Mountain BASIC bulunan bir HP sistemine erişimim oldu; oldukça iyi bir sistemdi.
Birkaç yıl sonra RM BASIC’i HP/UX’e taşıma işinde testçi olarak çalışarak ilk profesyonel deneyimimi kazandım; yaklaşık 5 yıl sonra da Functional Test Manager adlı üretim testi yönetim sistemi geliştirirken yeniden RMB’ye döndüm.
Birkaç gün önce o dönem birlikte çalıştığım biriyle öğle yemeği de yedim. Yazdıkça BASIC’in kariyerimin temel bir parçası olduğunu fark ediyorum. Huzur içinde yat Thomas.
İlginç olan, Pascal’ın alay konusu olmasının nedenlerinden birinin özgün sistemin sınırlamaları ve piyasadaki uygulamaların uyumsuzluğu olması.
Buna karşılık BASIC, 20 yıl boyunca minibilgisayar ve mikrobilgisayar endüstrisinin belkemiği sayılabilir; ama uygulamaları ve özellikleri gerçekten birbirinden çok farklıydı.
Kullandığım BASIC’ler, ifadeler ve temel veri türleri gibi temel şeyler dışında birbiriyle uyumlu değildi; bu temellerde bile string işleme her birinde farklıydı.
Nitekim Pascal’ın özgün sürümüyle yazılmış büyük yazılımlar da pek yok.
Pascal, büyük ölçekli sistemler yazma olasılığı olan derlenen bir dil olarak tasarlanmıştı, ama bu açıdan ciddi sınırlamaları vardı.
BASIC bir eğitim diliydi; insanlar onu zorlayıp gerçek iş sistemleri geliştirdiler ama herkes onun hâlâ fazlaca büyümüş bir eğitim dili olduğunu biliyordu.
Ciddi işlerde de kullanıldı ama bir “oyuncak” dildi ve BASIC ile yazılmış ciddi bir programın taşınabilir olmasını kimse beklemiyordu.
Pascal da bir eğitim dili olarak başladı, ama çok daha “ciddi” bir dil olarak kabul edildi; gerçekten de kontrol yapıları BASIC’ten çok daha iyiydi.
Ancak bu beklentilerin koyduğu çıtaya ulaşamadı; nedeni de yukarıda söylenenlerle aynı.
BASIC ile yazılmış aynı uygulamayı Pascal ile de yazabilir miydiniz? Neredeyse kesinlikle. Öyle yapmak daha mı iyi olurdu? Kesinlikle.
Sanırım fark, BASIC’in daha erişilebilir olmasıydı. 10 yaşındaki bir çocuk onunla kurcalayabilirdi; Pascal ise daha çok üniversite öğrencilerinin kurcalayacağı türdendi.
Bu yüzden Pascal’a daha yüksek beklentiler yüklendi ve aynı tür sınırlamalar bu beklentileri daha büyük ölçüde boşa çıkarıyor gibi göründü.