Annons
Jag vet att det inte ser ut så mycket, men det här är det första datorprogrammet som någonsin publicerats.
Dess författare var Augusta Ada King, grevinnan av Lovelace, mer känd som Ada Lovelace, och programmet var en del av en akademisk artikel publicerad på 1840-talet. Och nej, det är inte en skrivfel.
Även om Ada var en skicklig författare och matematiker, är hon bättre känd för sina bidrag till datorvärlden. Om du någonsin har bläddrat på Internet, köpt något online eller till och med använt en smartphone, är du skyldig henne en oändlig skuld. Varje år den 13 oktober firar vi Ada Lovelace Day, som erkänner de stora bidrag som kvinnor har gjort inom vetenskap, teknik och matematik.
Men medan vi gör det, är det värt att komma ihåg Ada Lovelace själv, vars arbete fortsätter att ha en meningsfull och betydande inverkan på våra liv.
Vem var Ada Lovelace?
Lovelace föddes i den engelska aristokratin, 1815, i Georgien i Storbritannien. Hennes far var den romantiska poeten Lord George Byron, och hennes mamma var
Lady Anne Isabella Byron - en högutbildad och hängiven religiös kvinna, som hade en omfattande utbildning i litteratur, matematik, vetenskap och filosofi.En månad efter hennes födelse separerade hennes föräldrar i en felaktig skilsmässa, och Lord Byron lämnade England och lämnade Ada för att bli uppvuxen av sin mor och mormor.
Lady Anne Byron var djupt misstroande av konsten, som ett resultat av hennes tumultiga (och ofta förfyllda) förhållande till Lord Byron. Som ett resultat drev hon Ada till att studera de hårda vetenskaperna och matematiken, som hon utmärkt sig på.
Som ett resultat av Adas privilegierade uppfostran fick hon hand om några av de största sinnena i eran, inklusive Augustus de Morgan och Mary Somerville. Det var den senare som i juni 1833 skulle introducera den 18-åriga Lovelace till Charles Babbage - en man som ofta beskrivs som "datorns far".
Vid deras första möte gjorde den unga Ada ganska intrycket på Babbage, som en månad senare bjöd in henne till London, så att hon kunde se Skillnad motor.
Datorns övergång
Ursprungligen hänvisade ordet "dator" inte till en maskin utan snarare en person.
Om någon var en mänsklig dator, deras jobb skulle vara att bokstavligen beräkna saker. Problemet var att människor inte är ofelbara och ofta skulle fel krypa in i deras arbete.
Denna fallbarhet inspirerade Babbage till att skapa en maskin som skulle kunna utföra dessa beräkningar på ett systematiskt, exakt och automatiserat sätt. Den här maskinen skulle tillåta en användare att mata in vissa parametrar, och maskinen returnerar sedan rätt resultat. På en rent konceptuell nivå är det inte så olikt för hur datorprogram fungerar på modern hårdvara.
Babbage började bygga vad han kallade ”Difference Engine”. Detta var en mekanisk maskin konstruerad med det enda syftet att tabulera polynomekvationer.
Babbage fick ett betydande statligt bidrag för att avsluta sin design. Även om han inte kunde bygga en fungerande modell var Ada fascinerad av sin prototyp på maskinen och skulle besöka Babbage så ofta hon kunde. Hon utvecklade snabbt en nära arbetsrelation med honom, och Babbage var otäck med hennes imponerande matematiska och analytiska färdigheter.
Även om Babbage snart tappade intresset för Difference Engine fortsatte deras relation till hans nästa projekt: Analytisk motor.
Det första programmet
Detta var ett mycket mer ambitiöst projekt än Difference Engine.
Medan skillnadsmotorn hade ett enda syfte, var den analytiska motorn avsedd att vara en allmänt, programmerbar dator. Det var inget som gillade det.
I många avseenden delade detta mycket gemensamt med dagens datorer. Även om Babbage inte kunde klara det, tillät den analytiska motorn programmeraren att skriva slingor och villkorade uttalanden De absoluta grunderna i programmering för nybörjare (del 2)I del 2 av vår absoluta nybörjarguide för programmering kommer jag att täcka grunderna i funktioner, returvärden, slingor och balsam. Se till att du har läst del 1 innan du tacklar det här, där jag förklarade ... Läs mer . Det innehöll till och med en primitiv aritmetisk logik-enhet (ALU). Dessa finns i moderna CPU: er Vad är en CPU och vad gör den?Beräkningsförkortningar är förvirrande. Vad är en CPU ändå? Och behöver jag en fyr- eller dual-core processor? Vad sägs om AMD eller Intel? Vi är här för att förklara skillnaden! Läs mer och GPU: er och används för att utföra aritmetiska och bitvisa operationer.
Den analytiska motorn, även om den aldrig blev klar, lockade mycket uppmärksamhet och nyfikenhet från det akademiska samfundet. Universiteter skulle ofta bjuda in Babbage för att föreläsa och 1840 talade Babbage vid universitetet i Turin. Närvarade var den italienska matematikern Luigi Menabrea, som skrev en kort artikel om vad han hade hört.
Menabrea bad senare Lovelace att översätta den för publicering i den engelskspråkiga världen. Eftersom hon hade en nära encyklopedisk förståelse av maskinen, till följd av hennes nära vänskap med Babbage, ombads hon att utvidga det.
Hennes slutartikel tog över ett år att slutföra och var över tre gånger längden på originalet. Förutom att utvidga det inkluderade hon också ett antal algoritmiska mönster.
En av dessa var en algoritm för den analytiska motorn att beräkna Bernoulli-nummer. Detta hyllas allmänt som det första någonsin publicerade datorprogrammet, och det är därför som Lovelace ofta kallas den första dataprogrammeraren någonsin.
Moderna Ada Lovelaces
Lovelace dog 1852 i 36 års ålder. Inte bara spelade hon en instrumental roll i utvecklingen av datavetenskap som fält, hon också kickstartade en lång och fin tradition av kvinnor som gör otroliga steg framåt i datorer och teknologi.
Det finns alldeles för många exempel på detta för att heltäcka listan. Från Marissa Mayer, till Kathy Sierra, och Sheryl Sandberg, kvinnor spela en viktig roll Kvinnor inom teknik: Vad framtida teknikföretag behöver vetaFör att teknikföretag ska trivas måste de lösa ”könsklyftan”. Inte bara för jämställdhet, utan också för att skydda slutresultatet. Läs mer inom teknikindustrin. Men en person framstår i synnerhet som en instrumental roll för utvecklingen av datavetenskap.
Hennes namn var Grace Hopper. Född 1906, upptäckte hon snabbt att hon hade en färdighet för matematik, och så småningom tjänade en doktorand från Yale i ämnet. 1943, medan andra världskriget rasade, anslöt hon sig till US Navy Reserve, där hon fick uppdraget att arbeta på Harvard Mark 1-dator.
Även om denna är primitiv enligt våra standarder spelade en viktig roll En kort historia av datorer som förändrade världenDu kan spendera år på att studera datorns historia. Det finns massor av uppfinningar, massor av böcker om dem - och det är innan du börjar komma in i fingerpekningen som oundvikligen inträffar när ... Läs mer i krigsinsatsen. De användes till och med av John Von Neumann för att simulera explosionen av en atombombe, långt innan de användes för att lämna det kejserliga Japan till underkastelse.
Några år senare skulle Hopper bygga världens första kompilator. Kallas A-0 (Arithmetic Language Version 0), den kördes på UNIVAC 1 och kunde översätta en typ av matematisk kod till maskinkod.
Hopper trodde att datorkod borde vara läsbar av människor. Denna filosofi inspirerade skapandet av COBOL (ett språk som fortfarande används allmänt till idag, särskilt på gamla system Stora framtida pensionering jobb för programmerareInom teknikområdet lär du dig antingen nya färdigheter eller faller efter tiderna. Men vad händer med äldre programmerare och teknologiledare som letar efter intressant deltidsarbete under pensionering? Läs mer ). Cobol inspirerade i sin tur många av de programmeringsspråk vi använder idag.
Under hela denna tid förblev Hopper i marinen, och slutligen nådde rang som bakre admiral, tills hon avskedades 1986, vid en ålder av 79. Hon kom till och med med på The Letterman Show.
Glad Ada Lovelace Day
Vi har alla en enorm skuld till Ada Lovelace, Grace Hopper och de otaliga andra kvinnliga matematiker, datavetare, programmerare och elektriska ingenjörer. Utan dem tvivlar jag på att du skulle ha en dator för att läsa den här artikeln.
Finns det några andra kvinnor inom teknik som inspirerar dig? Berätta om dem i kommentarerna nedan.
Fotokrediter: Skillnadsmotor (Carsten Ulrich), Analytisk motor (Bruno Barral)
Matthew Hughes är en programutvecklare och författare från Liverpool, England. Han hittas sällan utan en kopp starkt svart kaffe i handen och älskar absolut sin Macbook Pro och sin kamera. Du kan läsa hans blogg på http://www.matthewhughes.co.uk och följ honom på twitter på @matthewhughes.