โฮมเพจ » อินเทอร์เน็ต » 20 สิ่งประดิษฐ์ที่ยิ่งใหญ่ที่สุดในการเขียนโปรแกรมคอมพิวเตอร์

    20 สิ่งประดิษฐ์ที่ยิ่งใหญ่ที่สุดในการเขียนโปรแกรมคอมพิวเตอร์

    ในบทสนทนาที่ฉันมีกับบรรณาธิการอาวุโสของฉันฉันถูกถามคำถาม, “โปรแกรมโปรแกรมเมอร์ตัวแรกทำอย่างไร?” สิ่งนี้นำไปสู่การอภิปรายเกี่ยวกับ Babbage และ Ada Lovelace ในตอนท้ายฉันได้รับมอบหมายให้ทำการวิจัย อย่างไร มัน ทั้งหมดเริ่มต้นขึ้น - มันเป็นครั้งแรกในประวัติศาสตร์คอมพิวเตอร์.

    ฉันขุดลงในหนังสือและเว็บไซต์และได้พบกับการเปิดเผยมากมาย: Babbage ไม่ได้เป็นเทคนิค นักประดิษฐ์ ของคอมพิวเตอร์ FORTRAN แน่นอนที่สุดไม่ใช่ภาษาการเขียนโปรแกรมระดับสูงครั้งแรกและเราเคยมีสไตล์สำหรับหน้าจอ CRT (จริงๆ).

    ฉันรู้สึกประหลาดใจที่ค้นพบว่าสงครามที่สำคัญนั้นช่วยกระตุ้นความก้าวหน้าอย่างรวดเร็วของการพัฒนาคอมพิวเตอร์อย่างไรรวมถึงการมีส่วนร่วมของผู้หญิงหลายคนที่ตำราของเราเลือกที่จะละเลย ดังนั้นเพื่อเติมเต็มช่องว่างในประวัติศาสตร์ของคอมพิวเตอร์และโปรแกรมฉันได้รวบรวม 20 อันดับแรกในโลกของการคำนวณจากลูกโบว์ลิ่งไปจนถึง WW2 และสิ่งที่อยู่ระหว่าง.

    1. คอมพิวเตอร์เครื่องแรก: “เครื่องยนต์ที่แตกต่าง” (1821)

    “ความแตกต่างของเครื่องยนต์” เป็นคอมพิวเตอร์เชิงกลที่เสนอเพื่อใช้ในการคำนวณตารางทางคณิตศาสตร์ ได้รับมอบหมายจากรัฐบาลอังกฤษ Charles Babbage (aka บิดาแห่งคอมพิวเตอร์) เริ่มทำงาน แต่เนื่องจากต้นทุนการผลิตสูงการระดมทุนจึงหยุดและ เครื่องยังไม่เสร็จสมบูรณ์.

    ภาพ: Wikimedia

    2. คอมพิวเตอร์วัตถุประสงค์ทั่วไปเครื่องแรก: “เครื่องมือวิเคราะห์” (1834)

    “เครื่องมือวิเคราะห์” ยังเป็นคอมพิวเตอร์เชิงกลที่นำเสนอข้อมูลซึ่งควรจะเป็นบัตรเจาะด้วยโปรแกรมและข้อมูลที่เจาะพวกเขา ผลิตผลของ Charles Babbage อีกเครื่องนี้ก็ยังไม่เสร็จสมบูรณ์.

    ภาพ: wikieducator.org

    3. โปรแกรมคอมพิวเตอร์เครื่องแรก: อัลกอริทึมในการคำนวณหมายเลขเบอร์นูลี (1841 - 1842)

    Ada Lovelace (โปรแกรมเมอร์คอมพิวเตอร์รายแรกของโลก) เริ่มแปลระเบียนนักคณิตศาสตร์ชาวอิตาลี Luigi Menabrea ในเครื่องมือวิเคราะห์ของ Babbage ในปี 1841 ในระหว่างการแปลเธอเริ่มให้ความสนใจกับเครื่องและบันทึกย่อพร้อมการแปลของเธอ หนึ่งในบันทึกย่อ - โน้ต G, มีอัลกอริทึมในการคำนวณตัวเลขของเบอร์นูลีโดยใช้เครื่องมือวิเคราะห์ซึ่งถือว่าเป็นโปรแกรมคอมพิวเตอร์เครื่องแรก.

    ภาพ: Wikimedia

    4. คอมพิวเตอร์ที่ทำงานโปรแกรมได้เครื่องแรก: Z3 (1941)

    Konrad Zuse (ผู้ประดิษฐ์คอมพิวเตอร์) มีคอมพิวเตอร์กลไกที่ใช้งานได้ Z1 แล้ว แต่ทำงานได้ครั้งละไม่กี่นาทีเท่านั้น การใช้เทคโนโลยีที่แตกต่าง - รีเลย์นำไปสู่ ​​Z2 และ Z3 ในที่สุด Z3 เป็นคอมพิวเตอร์แม่เหล็กไฟฟ้าที่เก็บโปรแกรมและข้อมูลไว้ในเทปเจาะภายนอก มันเป็นโครงการลับของรัฐบาลเยอรมันและนำไปใช้โดยสถาบันวิจัยอากาศยานเยอรมัน เครื่องจักรดั้งเดิมถูกทำลายในเหตุระเบิดที่กรุงเบอร์ลินเมื่อปี พ.ศ. 2486.

    ภาพ: คอมพิวเตอร์สร้าง Wikispaces

    5. คอมพิวเตอร์อิเล็กทรอนิกส์เครื่องแรก: Atanasoff-Berry Computer (ABC) (1942)

    สร้างโดย John Vincent Atanasoff & Clifford Berry ดังนั้นชื่อ Atanasoff-Berry Computer หรือ ABC จึงถูกใช้เพื่อค้นหาคำตอบของสมการเชิงเส้นพร้อมกัน มันเป็นคอมพิวเตอร์เครื่องแรกที่ใช้ไบนารี่เพื่อเป็นตัวแทนของข้อมูลและสวิตช์อิเล็กทรอนิกส์แทนที่จะเป็นกลไก คอมพิวเตอร์นั้นไม่สามารถตั้งโปรแกรมได้.

    ภาพ: กาลิเลก

    6. คอมพิวเตอร์อิเล็กทรอนิกส์ที่ตั้งโปรแกรมได้เครื่องแรก: ยักษ์ใหญ่ (1943)

    Colossus ที่สร้างขึ้นโดย Tommy Flowers เป็นเครื่องที่สร้างขึ้นเพื่อช่วยในการถอดรหัสข้อความภาษาอังกฤษของอังกฤษที่เข้ารหัสด้วยรหัส Lorenz ย้อนกลับไปในสงครามโลกครั้งที่สอง มันถูกตั้งโปรแกรมโดยสวิตช์และปลั๊กอิเล็กทรอนิกส์ Colossus นำเวลาในการถอดรหัสข้อความที่เข้ารหัสลงมาจากสัปดาห์เป็นชั่วโมงเท่านั้น.

    ภาพ: Wikimedia

    7. คอมพิวเตอร์อิเล็กทรอนิกส์แบบตั้งโปรแกรมได้อเนกประสงค์วัตถุประสงค์แรก: ENIAC (1946)

    ได้รับทุนจาก US Army, ENIAC หรือ Integrator เชิงตัวเลขอิเล็กทรอนิกส์และคอมพิวเตอร์ ได้รับการพัฒนาใน Moore School of Engineering, University of Pennsylvania โดย John Mauchly & J. Presper Eckert ENIAC กว้าง 150 ฟุตและสามารถตั้งโปรแกรมให้ทำงานที่ซับซ้อนเช่นลูป การเขียนโปรแกรมทำได้โดยการเปลี่ยนสวิตช์อิเล็กทรอนิกส์และสายเคเบิล มันใช้เครื่องอ่านบัตรสำหรับการป้อนข้อมูลและการเจาะบัตรสำหรับการส่งออก มันช่วยในการคำนวณหาความเป็นไปได้ในการวางระเบิดไฮโดรเจนครั้งแรกของโลก.

    ภาพ: hnf.de

    8. แทร็กบอลลูกแรก: (1946/1952)

    ทำไมสองปีสำหรับแทร็กบอลครั้งแรก ให้ฉันอธิบาย.

    ปีแรกเป็นปีที่ได้รับจากราล์ฟเบนจามินผู้ซึ่งอ้างว่าได้สร้างแทร็กบอลลูกแรกของโลกเมื่อเขาทำงานในระบบเฝ้าระวังสำหรับเครื่องบินบินต่ำในปี 2489 สิ่งประดิษฐ์ที่เขาอธิบายใช้ลูกบอลเพื่อควบคุมพิกัด XY ของเคอร์เซอร์บนหน้าจอ การออกแบบได้รับการจดสิทธิบัตรในปี 1947 แต่ไม่เคยเปิดตัวเพราะถือว่าเป็น “ความลับทางทหาร”. ทหารเลือกจอยสติ๊กแทน.

    คู่แข่งรายที่สองสำหรับแทร็กบอลลูกแรกของโลกที่ใช้ในระบบ DATAR ของกองทัพเรือแคนาดาในปี 1952 ถูกคิดค้นโดย Tom Cranston และผู้ร่วม การออกแบบแทร็กบอลนี้มีการจำลองซึ่งใช้ลูกโบว์ลิ่งของแคนาดาหมุน “แบริ่งอากาศ” (ดูภาพด้านล่าง).

    ภาพ: engadget

    9. คอมพิวเตอร์โปรแกรมที่เก็บไว้เป็นครั้งแรก: SSEM (1948)

    เพื่อเอาชนะข้อบกพร่องของหน่วยความจำล่าช้า - สายเฟรเดริกซี. วิลเลียมส์และทอมคิลเบิร์นได้พัฒนาอุปกรณ์จัดเก็บข้อมูลดิจิตอลแบบสุ่มเข้าถึงครั้งแรกตามมาตรฐาน CRT The SSEM (แมนเชสเตอร์) เครื่องทดลองขนาดเล็ก) ใช้เพื่อนำอุปกรณ์เก็บข้อมูลนั้นไปใช้งานจริง โปรแกรมถูกป้อนในรูปแบบไบนารีโดยใช้สวิตช์ 32 ตัวและเอาต์พุตของมันคือ CRT.

    IMAGE: คอมพิวเตอร์ของมหาวิทยาลัย Staffordshire

    10. ภาษาโปรแกรมระดับสูงครั้งแรก: Plankalkül (1948)

    แม้ว่า Konrad Zuse เริ่มทำงานกับPlankalkülตั้งแต่ปีพ. ศ. 2486 มันเป็นเพียงในปี 1948 เมื่อเขาตีพิมพ์บทความเกี่ยวกับเรื่องนี้ มันไม่ได้ดึงดูดความสนใจมากนัก มันจะใช้เวลาประมาณสามทศวรรษต่อมาเพื่อให้คอมไพเลอร์ได้รับการสร้างโดย Joachim Hohmann ในวิทยานิพนธ์.

    IMAGE: หมากรุกการเขียนโปรแกรม Wikispaces

    11. ผู้ประกอบแรก: “คำสั่งซื้อเริ่มต้น” สำหรับ EDSAC (1949)

    Assembler เป็นโปรแกรมที่แปลงความจำ (ระดับต่ำ) เป็นการแสดงตัวเลข (รหัสเครื่อง) คำสั่งซื้อเริ่มต้นใน EDSAC (Electronic Delay Storage เครื่องคิดเลขอัตโนมัติ) เป็นคนแรกของระบบดังกล่าว มันถูกใช้เพื่อรวบรวมโปรแกรมจากอินพุตเทปกระดาษเข้าสู่หน่วยความจำและรันอินพุต โปรแกรมที่อยู่ในรหัสช่วยในการจำแทนรหัสเครื่องทำให้ “รหัสเริ่มต้น” แอสเซมเบลอร์ครั้งแรกโดยการประมวลผลรหัสโปรแกรมระดับต่ำสัญลักษณ์ลงในรหัสเครื่อง.

    ภาพ: ห้องทดลองคอมพิวเตอร์มหาวิทยาลัยเคมบริดจ์

    12. คอมพิวเตอร์ส่วนบุคคลเครื่องแรก: “ไซมอน” (1950)

    “ไซมอน” โดย Edmund Berkeley เป็นคอมพิวเตอร์ดิจิทัลเครื่องแรกที่สามารถทำงานได้สี่อย่าง: การเพิ่มการปฏิเสธมากกว่าและการเลือก อินพุตถูกต่อยกระดาษและโปรแกรมวิ่งบนเทปกระดาษ เอาต์พุตเพียงห้าไฟเท่านั้น.

    ภาพ: PCMag

    13. First Compiler: A-0 สำหรับ UNIVAC 1 (1952)

    คอมไพเลอร์เป็นโปรแกรมที่แปลงภาษาระดับสูงเป็นรหัสเครื่อง ระบบ A-0 เป็นโปรแกรมที่สร้างขึ้นโดย Grace Hopper ที่เป็นตำนานเพื่อแปลงโปรแกรมที่ระบุเป็นลำดับของรูทีนย่อยและอาร์กิวเมนต์เป็นรหัสเครื่อง A-0 ในภายหลังได้พัฒนาเป็น A-2 และถูกปล่อยให้กับลูกค้าด้วยซอร์สโค้ดซึ่งทำให้เป็นไปได้มาก ซอฟต์แวร์โอเพ่นซอร์สครั้งแรก.

    ภาพ: Wikimedia

    14. Autocode แรก: Autocode ของ Glennie (1952)

    Autocode เป็นภาษาการเขียนโปรแกรมระดับสูงที่ใช้คอมไพเลอร์ Autocode ตัวแรกและคอมไพเลอร์ของมันปรากฏที่ University of Manchester เพื่อให้การโปรแกรมของเครื่อง Mark 1 เป็นที่เข้าใจได้ง่ายขึ้น มันถูกสร้างขึ้นโดย Alick Glennie ดังนั้นชื่อ Autocode ของ Glennie.

    ภาพ: Wikipedia

    15. คอมพิวเตอร์แสดงผลกราฟิกตามเวลาจริงครั้งแรก: AN / FSQ-7 โดย IBM (1951)

    AN / FSQ-7 อ้างอิงจากคอมพิวเตอร์เครื่องแรกที่แสดงผลแบบเรียลไทม์นั่นคือ Whirlwind มันกลายเป็นเส้นชีวิตของระบบป้องกันภัยทางอากาศของสหรัฐที่รู้จักกันในชื่อ Semi-Automatic Ground Environment (SAGE) คอมพิวเตอร์แสดงเส้นทางสำหรับเป้าหมายและแสดงให้เห็นว่าการป้องกันแบบใดอยู่ภายในระยะ AN / FSQ-7 มีคอนโซลระบบ 100 ระบบ นี่คือหนึ่ง (ภาพด้านล่าง), OA-1008 Situation Display (SD) พร้อมปืนแสงที่ใช้เพื่อเลือกเป้าหมายบนหน้าจอสำหรับข้อมูลเพิ่มเติม.

    ภาพ: Wikiwand

    16. ภาษาโปรแกรมระดับสูงที่ใช้กันอย่างแพร่หลายครั้งแรก: FORTRAN (1957)

    หากคุณตรวจสอบตำราเรียนคุณจะพบว่า FORTRAN แสดงเป็นภาษาการเขียนโปรแกรมระดับสูงครั้งแรก คิดโดย John W. Backus ผู้ไม่ชอบเขียนโปรแกรมและตัดสินใจสร้างระบบการเขียนโปรแกรมเพื่อช่วยให้กระบวนการง่ายขึ้นมากการใช้ FORTRAN ลดจำนวนงบการเขียนโปรแกรมที่จำเป็นในการทำให้เครื่องทำงาน ในปีพ. ศ. 2506 มีผู้รวบรวมคอมไพเลอร์ของ FORTRAN มากกว่า 40 คน.

    ภาพ: Wikipedia

    17. เมาส์ตัวแรก (1964)

    ขณะนั่งอยู่ในเซสชันการประชุมบนคอมพิวเตอร์กราฟิกที่ความคิดของหนูมาถึงดักลาส Engelbart ในปี 1964 เขาคิดว่าอุปกรณ์ที่มีล้อขนาดเล็กคู่หนึ่ง (หันหนึ่งในแนวนอนอีกแนวตั้ง) ซึ่งสามารถใช้ในการย้าย เคอร์เซอร์บนหน้าจอ ต้นแบบ (ดูด้านล่าง) สร้างโดยวิศวกรนำของเขา Bill English แต่ทั้งภาษาอังกฤษและ Engelbart ไม่เคยได้รับค่าลิขสิทธิ์สำหรับการออกแบบเพราะในทางเทคนิคแล้วมันเป็นของ SRI, นายจ้างของ Engelbert.

    ภาพ: Michael Hicks Michael Hicks ผ่าน Flickr ภายใต้ CC BY 2.0

    18. คอมพิวเตอร์เดสก์ท็อปเชิงพาณิชย์เครื่องแรก: Programma 101 (1965)

    Programma 101 เป็นที่รู้จักในชื่อ Perottina ซึ่งเป็นพีซีเชิงพาณิชย์เครื่องแรกของโลก มันสามารถทำการบวกการลบการคูณการหารรากที่สองค่าสัมบูรณ์และเศษส่วนได้ สำหรับทุกสิ่งที่ทำได้สามารถทำได้ราคาอยู่ที่ $ 3,200 (เป็นเวลาที่แตกต่างกันมาก) และสามารถขายได้ 44,000 หน่วย Perottina ถูกคิดค้นโดย Pier Giorgio Perotto และผลิตโดย Olivetti ผู้ผลิตชาวอิตาลี.

    ภาพ: TEDxArezzo

    19. จอสัมผัสแรก (1965)

    มันดูไม่มากนัก แต่นี่เป็นหน้าจอสัมผัสเครื่องแรกที่โลกรู้จัก มันเป็นแผงหน้าจอสัมผัสแบบความจุโดยไม่มีความไวต่อแรงกด (มีทั้งแบบสัมผัสหรือแบบไม่มีหน้าสัมผัส) และจะลงทะเบียนเพียงจุดเดียวในการติดต่อ (ตรงข้ามกับมัลติทัช) แนวคิดดังกล่าวถูกนำมาใช้เพื่อควบคุมการใช้งานโดยผู้ควบคุมการจราจรทางอากาศในสหราชอาณาจักรจนถึงปี 1990.

    ภาพ: arstechnica

    20. ภาษาเขียนโปรแกรมเชิงวัตถุตัวแรก: Simula (1967)

    จากแนวคิดของการสร้างคลาส C. A. R. Hoare ของ Ole-Johan Dahl และ Kristen Nygaard ได้ทำการปรับปรุง “SIMULA I” ภาษาการเขียนโปรแกรมพร้อมวัตถุคลาสและคลาสย่อย สิ่งนี้ส่งผลให้เกิดการสร้าง SIMULA 67 ซึ่งกลายเป็นภาษาการเขียนโปรแกรมเชิงวัตถุแรก.

    ภาพ: Wikipedia

    ความคิดสุดท้าย

    มากเท่ากับที่โพสต์นี้เกี่ยวกับสิ่งที่เราสามารถเรียนรู้เกี่ยวกับหลาย ๆ อันแรกในประวัติศาสตร์คอมพิวเตอร์มันยากที่จะดื่มด่ำในประวัติศาสตร์ของตัวเอง เป็นผลให้อย่างน้อยสำหรับฉันเรา มีความกตัญญูมากขึ้นเกี่ยวกับงานที่ทำโดยคนรุ่นต่อหน้าเรา, และเราสามารถเข้าใจได้ดีขึ้นว่าอะไรเป็นแรงผลักดันให้เกิดการเปลี่ยนแปลงมากมายที่กำหนดรูปแบบโลกที่เราอาศัยอยู่ในปัจจุบัน.

    ฉันหวังว่าโพสต์นี้เป็นแรงบันดาลใจให้คุณมากที่สุดเท่าที่เป็นแรงบันดาลใจให้ฉัน. แบ่งปันความคิดของคุณเกี่ยวกับสิ่งที่หนึ่งเหล่านี้และถ้าฉันพลาดสิ่งใดซึ่งฉันแน่ใจว่าฉันได้เพิ่มความคิดเห็นลงไป.

    อ่านแล้ว: 40 คนที่เปลี่ยนอินเทอร์เน็ต