20 Rekaan Terbesar dalam Pemrograman Komputer
Dalam salah satu perbualan yang saya ada bersama editor kanan kami, saya telah ditanya soalan itu, “Bagaimana program pengaturcara pertama??” Ini membawa kepada perbincangan tentang Babbage dan Ada Lovelace, pada akhirnya, saya mendapat tugas untuk penyelidikan bagaimana ia semuanya bermula - ia menjadi yang pertama dalam sejarah pengkomputeran.
Saya menggali buku dan laman web dan bertemu dengan banyak wahyu: Babbage tidak secara teknis pencipta komputer, FORTRAN paling pasti bukan bahasa pengaturcaraan peringkat tinggi yang pertama dan kami biasa mempunyai styluses untuk skrin CRT (benar-benar).
Saya juga terkejut untuk mengetahui bagaimana peperangan penting dalam memacu kemajuan pesat perkembangan komputer, ditambah dengan sumbangan ramai wanita yang buku teks kami memilih untuk mengabaikannya. Oleh itu, untuk mengisi jurang dalam sejarah komputer dan program, saya telah mengumpulkan 20 perkara pertama dalam dunia pengkomputeran, dari bola boling ke WW2 dan semua yang ada di antara.
1. Komputer Pertama: “Enjin perbezaan” (1821)
The “Enjin Perbezaan” adalah komputer mekanikal yang dicadangkan untuk digunakan untuk mengeluarkan jadual matematik. Diteruskan oleh kerajaan British, Charles Babbage (aka Bapa Komputer) mula mengerjakannya, tetapi karena biaya produksi yang tinggi, dana itu dihentikan dan mesin itu tidak pernah selesai.
2. Komputer Tujuan Umum Pertama: “Enjin Analisis” (1834)
The “Enjin Analisis” juga merupakan komputer mekanikal yang dicadangkan, input yang sepatutnya ditekankan dengan kad, dengan program dan data menumbuk mereka. Satu lagi gagasan Charles Babbage, mesin ini juga tidak selesai.
3. Program Komputer Pertama: algoritma untuk mengira nombor Bernoulli (1841 - 1842)
Ada Lovelace (pengaturcaraan komputer pertama di dunia) mula menterjemahkan rekod matematik Itali, Luigi Menabrea pada enjin analisis Babbage pada tahun 1841. Semasa terjemahan dia menjadi tertarik dengan mesin dan nota kiri dengan terjemahannya. Salah satu nota - nota G, mengandungi algoritma untuk mengira nombor Bernoulli oleh enjin analitis, yang dianggap sebagai program komputer yang pertama.
4. Komputer Kerja Boleh Diprogram Pertama: Z3 (1941)
Konrad Zuse (Pencipta Komputer) sudah mempunyai komputer mekanikal Z1 yang bekerja tetapi ia bekerja hanya beberapa minit pada satu masa. Penggunaan teknologi yang berbeza - relay, membawa kepada Z2 dan akhirnya Z3. Z3 adalah komputer elektromagnet yang mana program dan data disimpan pada pita tebal luaran. Ia merupakan projek rahsia kerajaan Jerman dan digunakan oleh Institut Penyelidikan Pesawat Udara Jerman. Mesin asal dimusnahkan semasa pengeboman Berlin pada tahun 1943.
5. Komputer Elektronik Pertama: Atanasoff-Berry Computer (ABC) (1942)
Dicipta oleh John Vincent Atanasoff & Clifford Berry, dengan itu bernama Atanasoff-Berry Computer atau ABC digunakan untuk mencari penyelesaian untuk persamaan linear serentak. Ia adalah komputer pertama yang menggunakan binari untuk mewakili data dan suis elektronik bukannya mekanikal. Komputer bagaimanapun tidak boleh diprogramkan.
6. Komputer Elektronik Boleh Diprogram Pertama: Colossus (1943)
The Colossus yang dicipta oleh Tommy Flowers, adalah sebuah mesin yang dicipta untuk membantu British menyahsulit mesej Jerman yang disulitkan oleh cipher Lorenz, kembali pada Perang Dunia II. Ia diprogramkan oleh suis dan palam elektronik. Colossus membawa masa untuk memecahkan mesej yang disulitkan turun dari minggu ke jam sahaja.
7. Komputer Elektronik yang Boleh Diprogram Pertama: ENIAC (1946)
Dibiayai oleh Tentera AS, ENIAC atau Integrator Berangka Elektronik Dan Komputer telah dibangunkan di Moore School of Electrical Engineering, University of Pennsylvania oleh oleh John Mauchly & J. Presper Eckert. ENIAC adalah 150 kaki lebar dan boleh diprogramkan untuk melaksanakan operasi kompleks seperti gelung; pengaturcaraan telah dilakukan dengan mengubah suis dan kabel elektroniknya. Ia menggunakan pembaca kad untuk input dan pukulan kad untuk output. Ia membantu dengan pengiraan untuk kemungkinan bom hidrogen pertama di dunia.
8. Bola Sepak Pertama: (1946/1952)
Mengapa dua tahun untuk bola sepak pertama? Izinkan saya menerangkan.
Tahun pertama adalah tahun yang diberikan oleh Ralph Benjamin, yang mendakwa telah mencipta rekod bola sepak pertama di dunia ketika ia sedang menjalankan sistem pengawasan untuk pesawat terbang rendah pada tahun 1946. Ciptaannya yang digambarkan menggunakan bola untuk mengendalikan koordinat XY daripada kursor pada skrin. Reka bentuk itu telah dipatenkan pada tahun 1947 tetapi tidak pernah dilepaskan kerana ia dianggap sebagai “rahsia ketenteraan”. Tentera memilih kayu gantungan.
Pencabar kedua untuk bola sepak pertama dunia, yang digunakan dalam sistem DATAR Tentera Laut Kanada pada tahun 1952 dicipta oleh Tom Cranston dan co. Reka bentuk bola jaring ini mempunyai mock up yang digunakan bola boling Kanada berputar “bantalan udara” (lihat imej di bawah).
9. Computer Program First Stored: SSEM (1948)
Untuk mengatasi kekurangan memori baris kelewatan, Frederic C. Williams dan Tom Kilburn telah membangunkan peranti storan digital akses rawak pertama berdasarkan CRT standard. SSEM (Manchester Mesin Eksperimen Skala Kecil) digunakan untuk melaksanakan peranti storan untuk kegunaan praktikal. Program-program yang dimasukkan dalam bentuk binari menggunakan 32 suis dan outputnya adalah CRT.
10. Bahasa Pengaturcaraan Peringkat Pertama: Plankalkül (1948)
Walaupun Konrad Zuse mula bekerja di Plankalkül semenjak 1943, ia hanya pada tahun 1948 apabila dia menerbitkan sebuah kertas mengenainya. Ia tidak menarik banyak perhatian malangnya. Ia akan mengambil masa hampir tiga dekad kemudian untuk pengkompil yang akan dilaksanakan untuk itu, yang dicipta oleh Joachim Hohmann dalam disertasi.
11. Pemasang Pertama: “Perintah Awal” untuk EDSAC (1949)
Assembler adalah program yang menukarkan mnemonik (tahap rendah) ke dalam perwakilan angka (mesin kod). Perintah awal dalam EDSAC (Kalkulator Elektrik Penangguhan Kelewatan Elektronik) adalah yang pertama sistem sedemikian. Ia digunakan untuk memasang program-program dari input kertas pita ke dalam memori dan menjalankan input. Program-program di dalam kod mnemonik bukan kod mesin, membuat “kod permulaan” pemasang pertama dengan memproses kod program tahap rendah simbolik ke dalam kod mesin.
12. Komputer Peribadi Pertama: “Simon” (1950)
“Simon” oleh Edmund Berkeley adalah komputer digital pertama yang mampu menjalankan empat operasi: penambahan, penolakan, lebih besar, dan pemilihan. Masukan telah ditumbuk kertas, dan program berlari pada pita kertas. Satu-satunya keluaran adalah melalui lima lampu.
13. Penyusun Pertama: A-0 untuk UNIVAC 1 (1952)
Pengkompil adalah program yang mengubah bahasa peringkat tinggi menjadi kod mesin. Sistem A-0 adalah program yang dibuat oleh Grace Hopper yang legenda untuk menukar program yang dinyatakan sebagai urutan subrutin dan argumen ke dalam kod mesin. The A-0 kemudian berkembang menjadi A-2 dan dikeluarkan kepada pelanggan dengan kod sumbernya menjadikannya mungkin perisian sumber terbuka pertama.
14. Autocode Pertama: Autocode Glennie (1952)
Autocode adalah bahasa pengaturcaraan peringkat tinggi yang menggunakan pengkompil. Autokod pertama dan pengkompilnya muncul di University of Manchester untuk membuat pengaturcaraan mesin Mark 1 lebih mudah difahami. Ia dicipta oleh Alick Glennie, oleh itu nama Autocode Glennie.
15. Komputer Paparan Grafik Masa Nyata Pertama: AN / FSQ-7 oleh IBM (1951)
AN / FSQ-7 didasarkan pada salah satu komputer pertama yang menunjukkan output masa nyata, Badak. Ia menjadi garis panduan untuk sistem Pertahanan Udara AS yang dikenali sebagai Semi-Automatic Ground Environment (SAGE). Komputer menunjukkan jejak untuk sasaran dan secara automatik menunjukkan pertahanan mana yang berada dalam jangkauan. AN / FSQ-7 mempunyai 100 konsol sistem; di sini (imej di bawah), Paparan Situasi OA-1008 (SD), dengan pistol ringan yang digunakan untuk memilih sasaran pada skrin untuk maklumat lanjut.
16. Bahasa Pemrograman Tingkat Tinggi Yang Digunakan Secara Seluruh: FORTRAN (1957)
Jika anda menyemak buku teks, anda akan mendapati FORTRAN disenaraikan sebagai bahasa pengaturcaraan peringkat tinggi yang pertama. Pemikiran oleh John W. Backus yang tidak menyukai program penulisan dan memutuskan untuk membuat sistem pengaturcaraan untuk membantu membuat proses lebih mudah, penggunaan FORTRAN sangat mengurangkan bilangan pernyataan pengaturcaraan yang diperlukan untuk mendapatkan mesin berjalan. Menjelang tahun 1963, lebih daripada 40 compiler FORTRAN sudah tersedia.
17. Tetikus Pertama (1964)
Semasa duduk dalam sesi sidang pada grafik komputer, idea tetikus datang kepada Douglas Engelbart pada tahun 1964. Dia menganggap sebuah peranti dengan sepasang roda kecil (satu bertukar secara mendatar yang menegak) yang boleh digunakan untuk memindahkan kursor pada skrin. Prototaip (lihat di bawah) dicipta oleh jurutera utamanya, Bill English tetapi kedua-dua bahasa Inggeris dan Engelbart tidak pernah menerima royalti untuk reka bentuk kerana secara teknikal, ia dimiliki oleh SRI, majikan Engelbert.
18. Komputer Desktop Komersial Pertama: Programma 101 (1965)
Juga dikenali sebagai Perottina, Programma 101 adalah PC komersial pertama di dunia. Ia boleh melakukan penambahan, pengurangan, pendaraban, pembahagian, punca kuasa, nilai mutlak, dan pecahan. Untuk semua yang boleh dilakukan, ia berharga $ 3,200 (masa yang sangat berbeza) dan berjaya menjual 44,000 unit. Perottina telah dicipta oleh Pier Giorgio Perotto dan dihasilkan oleh Olivetti, pengilang Itali.
19. Skrin Sentuh Pertama (1965)
Ia tidak kelihatan seperti banyak tetapi ini adalah skrin sentuh pertama yang pernah diketahui oleh dunia. Ia adalah panel skrin sentuh kapasitatif, tanpa kepekaan tekanan (ada hubungannya, atau tiada kenalan) dan ia hanya mendaftarkan satu titik hubungan (yang bertentangan dengan multitouch). Konsep ini diguna pakai untuk digunakan oleh pengawal trafik udara di UK sehingga tahun 1990-an.
20. Bahasa Pemrograman Berorientasikan Objek Pertama: Simula (1967)
Berdasarkan konsep kelas C. A. R. Hoare, konstruk kelas, Ole-Johan Dahl & Kristen Nygaard mengemas kini mereka “SIMULA I” bahasa pengaturcaraan dengan objek, kelas dan subkelas. Ini menghasilkan penciptaan SIMULA 67 yang menjadi bahasa pengaturcaraan berorientasikan objek pertama.
Pemikiran terakhir
Sebanyak catatan ini mengenai apa yang dapat kita pelajari mengenai banyak perkara pertama dalam sejarah pengkomputeran adalah sukar untuk melibatkan diri dalam sejarah itu sendiri. Akibatnya, sekurang-kurangnya bagi saya, kita menjadi lebih menghargai kerja yang dilakukan oleh generasi sebelum kita, dan kita dapat lebih memahami apa yang mendorong banyak perubahan yang membentuk dunia yang kita hidup pada hari ini.
Saya harap post ini memberi inspirasi kepada anda kerana ia memberi inspirasi kepada saya. Kongsi pemikiran anda pada perkara pertama ini, dan jika saya terlepas apa-apa, yang saya pasti saya lakukan, tambah mereka dalam komen.