Chi è stato il primo programmatore?


15

C'è qualche consenso tra gli storici su chi è stato il primo programmatore di sempre? In tal caso, chi era e su cosa stavano programmando?

Trovo più interessante sapere di più sui pionieri della programmazione, indipendentemente dal fatto che abbiano programmato su una macchina programmabile o se hanno progettato la macchina stessa per svolgere alcune attività di elaborazione.


10
Definisci la programmazione in modo sufficientemente preciso in modo da sapere se dobbiamo considerare cose come preparare i nastri per il telaio di Jacquard o meno.
Programmatore

Il primo a scrivere codice :)))
Songo,

Voto per il conteggio di Jacquard.
Joshua Drake,


Coloro che calcolarono le eclissi nel calendario Maya, potrebbero benissimo essere stati i primi programmatori. Devi progettare un algoritmo ("siamo abbastanza vicini?") Ed eseguirlo.

Risposte:


58

Augusta Ada King , Contessa di Lovelace (1815-1852) è accreditata da molti come il primo programmatore.

Il primo programma è stato un algoritmo per calcolare i numeri di Bernoulli per di Charles Babbage macchina analitica , ed è apparso nei suoi appunti di traduzione di Luigi Menabrea libro di memorie "Sketch del motore analitico Inventato da Charles Babbage" , più specificamente Nota G . Detto questo, la matematica necessaria per calcolare i numeri di Bernoulli era nota molto prima dei tempi di Ada, tuttavia l'algoritmo di Ada è la prima istanza di un algoritmo di calcolo progettato per essere eseguito da una macchina (all'epoca ancora ipotetica).

Konrad Zuse (1910 - 1995) è anche un solido candidato per il moniker "primo programmatore", avendo inventato un calcolatore meccanico binario a virgola mobile con programmabilità limitata, lo Z1 (1936) ma soprattutto lo Z3 (1941), un elettro completo di Turing computer meccanico .

Quando si tratta di computer elettronici, l' Atanasoff – Berry Computer (concepito nel 1937, operativo nel 1942) è accreditato come il primo dispositivo elettronico digitale, quindi è ragionevole pensare ai suoi progettisti, John Vincent Atanasoff e Clifford Berry come pionieri della programmazione. Il computer Atanasoff-Berry non era programmabile, il primo computer elettronico programmabile era ENIAC (1946).

Sebbene i designer di ENIAC John Mauchly e J. Presper Eckert probabilmente abbiano fatto una buona parte della programmazione, la maggior parte della programmazione di ENIAC è stata fatta da queste adorabili signore :

Programmatori ENIAC, per gentile concessione del Progetto programmatori ENIAC

I loro nomi da sinistra a destra sono Kathy Kleiman 1 , Jean Bartik , Marlyn Meltzer , Kay Mauchly Antonelli e Betty Holberton nella parte anteriore. Due delle programmatrici dell'ENIAC, Fran Bilas e Ruth Lichterman , mancano nella foto.

Per quanto riguarda i computer digitali, il primo era Colossus (operativo nel dicembre 1943), e il capo del progetto Tommy Flowers (1905 - 1998) dovrebbe essere considerato un pioniere della programmazione, insieme a Max Newman (1897 - 1984) che ne fu il responsabile per aver formulato i requisiti per la macchina e, naturalmente, Alan Turing (1912 - 1954), che aveva progettato la precedente macchina crittografica elettromeccanica di Bletchley Park, la Bombe (1939), e fu influente nel progetto Colossus 2 .

1 Kathy Kleiman è la fondatrice del Progetto programmatori ENIAC e ovviamente non è un programmatore ENIAC (troppo giovane :)
2 Una storia dell'informatica nel XX secolo: The Colossus - B. Randell, Università di Newcastle (PDF)


9
"Brogrammers" è un carico di schifezze inventato dai blogger.
Alan B,

5
@Malcolm Questa è un'ottima domanda. Quello che devi ricordare è che il motore analitico non è stato costruito durante la vita di Babbage e che Ada non ha scoperto la matematica per il suo algoritmo, ma ha tradotto la matematica in una forma che avrebbe funzionato per il motore analitico (che è ciò che qualifica il suo algoritmo come software e non matematica). Non è impensabile che Babbage abbia inventato un programma precedente, ma non lo abbia mai documentato. Tuttavia ha documentato il coinvolgimento di Ada, a p. 136 di Passaggi della vita di un filosofo :
yannis,

2
(cont ...) "Ho quindi suggerito di aggiungere alcune note al libro di Menabrea, un'idea che è stata immediatamente adottata. Abbiamo discusso insieme le varie illustrazioni che potrebbero essere introdotte: ne ho suggerite diverse ma la selezione era interamente sua. Così anche fu l'algebra che risolveva i diversi problemi, tranne, in verità, quello relativo al numero di Bernoulli, che mi ero offerto di fare per salvare il problema a Lady Lovelace, che mi rimandò per un emendamento, avendo rilevato un grave errore che avevo realizzato nel processo ".
yannis,

2
(cont ...) E anche se potrebbe sembrare che Babbage stia rivendicando almeno parte del merito (il che sarebbe giusto se i due lavorassero insieme), non ha mai contestato le note di Ada sulla memoria, che portava solo il suo nome.
yannis,

5
Nel 1941 Zuse assunse un matematico cieco di nome Arnold Fast per programmare i suoi computer. Questo ragazzo è stato probabilmente il primo programmatore professionista al mondo .
Mackie Messer,

12

Anche Archimede potrebbe qualificarsi

Dato che è stato provvisoriamente accreditato della creazione del meccanismo Antikythera (un esempio di un primo computer analogico ) circa 2000 anni fa, a un certo punto deve aver preso la decisione di calcolare un evento particolare.

Quell'atto poteva essere pensato come un programma, così divenne un programmatore.


5
Il meccanismo non è programmabile.
Oded,

4
Sebbene sia implicita una connessione con Archimede, l'affermazione che gli viene "accreditato provvisoriamente la creazione del meccanismo Antikythera" è piuttosto coraggiosa (sì, non mi sono perso provvisoriamente).
yannis,

4
@Gary: un'importante distinzione per programmabilità, almeno come è intesa oggi, è che il programma esiste indipendentemente dall'hardware. Il meccanismo Antikythera era "codificato" per calcolare una cosa, ma non c'era modo di inserire altri programmi.
Mason Wheeler,

3
Sembra che stiamo discutendo di più su COS'È UN PROGRAMMATORE. Qualcuno che crea un meccanismo incorporando in esso una logica non è un programmatore? Credo che lo sia, non puoi dire diversamente solo perché non puoi cambiare quella logica
abx78,

4
Dubito che il meccanismo Antikythera fosse un computer, quindi non è indiscusso !! Per quanto geniale fosse un dispositivo, era davvero solo un orologio molto intelligente. La sua tecnologia di fabbricazione delle macchine era in anticipo di circa 500-1000 anni, ma non era in alcun modo "programmabile". Gli orologi non sono computer.
Jim In Texas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.