20 Legnagyobb találmány a számítógépes programozásban
A vezető szerkesztőnkkel folytatott beszélgetések egyikében megkérdeztem, “Hogyan volt az első programozó program?” Ez Babbage-ről és Ada Lovelace-ról folytatott megbeszéléshez vezetett, amelynek végén kutatást kaptam hogyan azt minden elkezdődött - ez a számítástechnika történetének sok elsõ része.
A könyvekbe és weboldalakba ásottam, és sok kinyilatkoztatással találkoztam: Babbage nem technikailag az feltaláló a számítógép, a FORTRAN nem minden bizonnyal az első magas szintű programozási nyelv volt, és a CRT-képernyőknél használtunk stylusokat (valójában).
Meglepődtem továbbá, hogy megtudtam, milyen alapvető háborúk voltak a számítógépes fejlesztés gyors előrehaladásában, valamint sok női hozzájárulás, hogy a tankönyveink elhanyagolják. Ezért a számítógépek és a programok történetének hiányosságainak kitöltése érdekében a számítástechnika világában összeállítottam 20 előnyt, a bowling golyóktól a második világháborúig, és mindent, ami között van.
1. Első számítógép: “Különbség motor” (1821)
A “Különbség motor” a matematikai táblák kiadására javasolt mechanikus számítógép volt. A brit kormány megbízásából Charles Babbage (más néven Computer Atya) kezdett dolgozni rajta, de magas termelési költségei miatt a finanszírozás megállt és a gépet soha nem fejezték be.
2. Első általános célú számítógép: “Analitikus motor” (1834)
A “Analitikus motor” szintén egy javasolt mechanikus számítógép volt, amelynek bemeneteit lyukasztott kártyáknak kellett volna lenniük, és rájuk programozott adatokkal. Charles Babbage újabb ötlete, ez a gép is nem fejeződött be.
3. Első számítógépes program: algoritmus Bernoulli számok kiszámításához (1841 - 1842)
Ada Lovelace (a világ első számítógépes programozója) 1841-ben elkezdte lefordítani olasz matematikus Luigi Menabrea rekordjait a Babbage elemző motorjáról. Az egyik jegyzet - G megjegyzés, tartalmazza az analitikus motor által a Bernoulli-számok kiszámításához használt algoritmust, amely az első számítógépes programnak tekinthető.
4. Első munka programozható számítógép: Z3 (1941)
Konrad Zuse (a számítógépek feltalálója) már működő mechanikus számítógépet kapott, de csak néhány percig működött. A különböző technológiai relék használata Z2-re és végül Z3-ra vezetett. A Z3 egy elektromágneses számítógép volt, amelyhez a programokat és adatokat külső lyukasztószalagokon tárolták. A német kormány titkos projektje volt, amelyet a Német Repülőgépkutató Intézet használ. Az eredeti gépet 1943-ban a berlini bombázás során elpusztították.
5. Első elektronikus számítógép: Atanasoff-Berry Computer (ABC) (1942)
John Vincent Atanasoff és Clifford Berry készítette, így az Atanasoff-Berry Computer vagy az ABC volt a megoldás az egyidejű lineáris egyenletek megoldásához. Ez volt az első számítógép, amely mechanikus helyett bináris adatokat használt az adatok és az elektronikus kapcsolók ábrázolására. A számítógép azonban nem volt programozható.
6. Első programozható elektronikus számítógép: Colossus (1943)
A Tommy Flowers által létrehozott Colossus egy olyan gép volt, amely segített a brit dekódolásnak, amit a második világháborúban a Lorenz-rejtjel által titkosított német üzenetek dekódoltak. Ezt elektronikus kapcsolókkal és dugókkal programozták. Colossus hozta az időt arra, hogy a titkosított üzeneteket hetekről pusztán órákra megfejtse.
7. Első általános célú programozható elektronikus számítógép: ENIAC (1946)
Az amerikai hadsereg, az ENIAC vagy a Elektronikus numerikus integrátor és számítógép John Mauchly és J. Presper Eckert készítette a Pennsylvaniai Egyetem Moore Villamosmérnöki Iskolájában. Az ENIAC 150 méter széles volt, és programozható úgy, hogy komplex műveleteket hajtson végre, mint például a hurkok; A programozás az elektronikus kapcsolók és kábelek módosításával történt. Kártyaolvasókat használt a bemeneti és a kártya lyukasztásához a kimenethez. Ez segített a világ első hidrogénbomba megvalósíthatóságának kiszámításában.
8. Első Trackball: (1946/1952)
Miért az első trackball két éve? Hadd magyarázzam el.
Az első évet a Ralph Benjamin adta meg, aki azt állította, hogy 1946-ban létrehozta a világ első trackballját, amikor egy alacsony repülésű repülőgépek felügyeleti rendszerében dolgozott. A leírt találmány egy labdát használt az XY koordináták vezérlésére egy kurzor a képernyőn. A tervezést 1947-ben szabadalmaztatták, de soha nem bocsátották ki, mert a “katonai titok”. A hadsereg helyette a joystickot választotta.
A második első versenyzőt a világ első trackballjával, amelyet a kanadai haditengerészet DATAR rendszerében használták 1952-ben, Tom Cranston és co. Ez a golyósgolyó tervezték fel, amely egy kanadai bowlinggolyót használt “levegő csapágyak” (lásd az alábbi képet).
9. Első tárolt program számítógép: SSEM (1948)
A késleltetés-memóriából adódó hiányosságok leküzdése érdekében Frederic C. Williams és Tom Kilburn kifejlesztették az első véletlen hozzáférésű digitális tárolóeszközt a szabványos CRT alapján. Az SSEM (Manchester) Kisméretű kísérleti gép) ezt a tárolóeszközt a gyakorlati felhasználásra használták. A programokat bináris formában adtuk meg 32 kapcsoló segítségével, és kimenete CRT volt.
10. Első magas szintű programozási nyelv: Plankalkül (1948)
Bár Konrad Zuse 1943 óta kezdett dolgozni a Plankalkülen, csak 1948-ban jelent meg, amikor közzétett egy papírt. Sajnos sajnos nem vonzott sok figyelmet. Közel három évtizeddel később egy fordító végrehajtására lenne szükség, amit egy Joachim Hohmann egy disszertációban készített..
11. Első összeszerelő: “Kezdeti megrendelések” EDSAC számára (1949)
Az összeszerelő egy olyan program, amely átalakítja a mnemonikát (alacsony szintű) numerikus ábrázolásra (gépi kód). Az EDSAC kezdeti megrendelései (Elektronikus késleltetés tároló automatikus számológép) volt az első ilyen rendszer. Ezt a programot a papírszalag bemenetből a memóriába történő beillesztéshez és a bemenet futtatásához használták. A programok a kódkódok helyett mnemonikus kódokban voltak “kezdeti kód” az első szerelő, aki szimbolikus alacsony szintű programkódot dolgoz fel a gépi kódba.
12. Első személyi számítógép: “Simon” (1950)
“Simon” Edmund Berkeley volt az első megfizethető digitális számítógép, amely négy műveletet tudott végrehajtani: hozzáadás, negáció, nagyobb, és kiválasztás. A bemenetet papírra vágták, és a program papírszalagon futott. Az egyetlen kimenet öt lámpa volt.
13. Első fordító: A-0 az UNIVAC 1 számára (1952)
A fordító egy olyan program, amely a magas szintű nyelvet konvertálja gépkódra. Az A-0 rendszer egy olyan program, amelyet a legendás Grace Hopper hoz létre, hogy egy szubrutinok és argumentumok sorozataként megadott programot konvertáljon a gépi kódba. Az A-0-t később A-2-re alakították ki, és az ügyfelek számára kiadták a forráskódjával, ami talán a nagyon első nyílt forráskódú szoftver.
14. Első Autocode: Glennie Autocode (1952)
Az Autocode egy magas szintű programozó nyelv, amely fordítót használ. Az első autokód és fordítója megjelent a Manchester Egyetemen, hogy a Mark 1 gép programozását érthetőbbé tegye. Alick Glennie készítette, így Glennie Autocode nevét.
15. Első valós idejű grafikus megjelenítő számítógép: AN / FSQ-7 az IBM által (1951)
Az AN / FSQ-7 az első olyan számítógépen alapult, amely valós idejű kimenetet mutatott. Ez lett az amerikai légvédelmi rendszer Semi-Automatic Ground Environment (SAGE) néven. A számítógépek a célokhoz tartozó számokat mutatnak, és automatikusan megmutatták, hogy melyik védelem volt a tartományon belül. Az AN / FSQ-7 100 rendszerkonzol volt; itt van egy (az alábbi kép), az OA-1008 helyzetmegjelenítés (SD), egy könnyű pisztolyt használva a célok kijelölésére a képernyőn további információkért.
16. Első széles körben használt magas szintű programozási nyelv: FORTRAN (1957)
Ha megvizsgálja a tankönyveket, a FORTRAN az első magas szintű programozási nyelvként jelenik meg. John W. Backus gondolta, aki nem szerette a programokat írni, és úgy döntött, hogy egy sokkal könnyebbé teszi a folyamatot, így a FORTRAN használata jelentősen csökkentette a gép működéséhez szükséges programozási utasítások számát. 1963-ban már több mint 40 FORTRAN fordító állt rendelkezésre.
17. Első egér (1964)
A számítógépes grafikában tartott konferencia ülésén az egér ötlete Douglas Engelbartra érkezett 1964-ben. Egy kis kerekekkel ellátott eszközt (egy vízszintesen a másik függőleges irányba fordítva) gondolt át, amely a mozgatáshoz használható. kurzor a képernyőn. A prototípust (lásd alább) az ő mérnöke, Bill English hozta létre, de mind az angol, mind az Engelbart soha nem kapott jogdíjat a tervezésért, mert technikailag az SRI, Engelbert munkáltatója volt..
18. Első kereskedelmi asztali számítógép: Programma 101 (1965)
A Permaxina néven is ismert, a Programma 101 volt a világ első kereskedelmi számítógépe. Ez kiegészíthet, kivonást, szorzást, osztást, négyzetgyöket, abszolút értéket és frakciót végezhet. Mindenre, amit megtehetett, 3 200 dollár volt (ez nagyon más volt) és sikerült eladni 44 000 darabot. A Perottina-t Pier Giorgio Perotto feltalálta, és olasz gyártója olivetti.
19. Első érintőképernyő (1965)
Nem tűnik soknak, de ez volt az első érintőképernyő, amit a világ valaha is ismert. Ez egy kapacitív érintőképernyős panel, nyomásérzékenység nélkül (kontaktus vagy érintés nélkül), és csak egyetlen érintkezési pontot regisztrál (szemben a multitouch-szal). A koncepciót a légiforgalmi irányítók az Egyesült Királyságban az 1990-es évekig használják fel.
20. Első objektum orientált programozási nyelv: Simula (1967)
C. A. R. Hoare osztályépítéseinek koncepciója alapján Ole-Johan Dahl és Kristen Nygaard frissítették “SIMULA I” programozási nyelv tárgyakkal, osztályokkal és alosztályokkal. Ennek eredményeként létrejött a SIMULA 67, amely az első objektum-orientált programozási nyelv lett.
Végső gondolatok
Amennyire ez a hozzászólás arról szólt, hogy mit tudunk megismerni a történelem számításakor előforduló sok közül, nehéz magát magunkba meríteni. Ennek eredményeként, legalábbis nekem, mi jobban értékeljük a generációk előtt végzett munkáinkat, és jobban megérthetjük, mi vezet a sok olyan változást, amely a mai világot alkotja.
Remélem, hogy ez a hozzászólás annyira inspirál téged, ahogy inspirál. Ossza meg gondolatait ezekről az elsődleges témákról, és ha hiányozom, amit biztos vagyok, tegye hozzá őket a megjegyzésekhez.