Uno, zero, zero, uno, zero, uno. Zero, one, one
Questo è il linguaggio dei computer. Ogni cosa intelligente il computer fa-effettuare una chiamata, cercare un database, giocare una partita – si riduce a uno e zero.
In realtà, si tratta della presenza (uno) o assenza (zero) di una corrente in minuscoli transistor su un chip semiconduttore.
Per fortuna, non dobbiamo programmare i computer in zero e uno.,
Microsoft Windows, ad esempio, utilizza 20 GB o 170 miliardi di uno e zero.
Stampato, la pila di carta A4 sarebbe alta due miglia e mezzo (4 km).
Immagina di impostare manualmente ogni transistor.
Ignorando quanto sarebbe complicato – i transistor misurano solo miliardesimi di metro – se ci fosse voluto un secondo per capovolgere ogni interruttore, l’installazione di Windows richiederebbe 5.000 anni.,
scopri di più
50 Cose Che l’Economia Moderna mette in evidenza le invenzioni, le idee e le innovazioni che hanno contribuito a creare il mondo economico.
È trasmesso sul servizio BBC World., Puoi trovare maggiori informazioni sulle fonti del programma e ascoltare online o iscriverti al podcast del programma.
I primi computer erano programmati in questo modo.
Si consideri il calcolatore automatico sequenza controllata, più tardi noto come Harvard Mark 1.
Era una concatenazione di ruote, alberi, ingranaggi e interruttori lunga 15 m, alta 2,5 m.
Conteneva 530 miglia (850 km) di fili.,
Rotolava via sotto istruzioni da un rotolo di nastro di carta perforato.
Se volevi che risolvesse una nuova equazione, dovevi capire quali interruttori dovrebbero essere accesi o spenti, quali fili dovrebbero essere collegati dove.
Quindi, dovevi capovolgere tutti gli interruttori, collegare tutti i fili e perforare tutti i fori nel nastro di carta.
Programmare non era solo difficile, ma comportava un lavoro manuale noioso, ripetitivo e soggetto a errori.,
Quattro decenni dopo l’Harvard Mark 1, macchine più compatte e facili da usare come il Commodore 64 hanno trovato la loro strada nelle scuole.
Si può ricordare il brivido infanzia di digitare questo:
- 10 stampa “Ciao mondo”
- 20 vai a 10
“Ciao mondo” riempirebbe lo schermo, in grosso, testo a bassa risoluzione.
Avevi istruito il computer con parole riconoscibili, intuitivamente umane.
Sembrava un miracolo minore.,
Mathematical brilliance
Una ragione per la sorprendente progressione dei computer poiché il Mark 1 è certamente componenti sempre più piccoli.
Ma è anche perché i programmatori possono scrivere software in un linguaggio simile a quello umano, e farlo tradurre in uno e zero, correnti o non correnti, che alla fine fanno il lavoro.
La cosa che ha iniziato a renderlo possibile è stata chiamata compilatore.
E dietro il compilatore c’era una donna chiamata Grace Hopper.
Al giorno d’oggi, c’è molta discussione su come ottenere più donne in tecnologia.,
Nel 1906, quando nacque Grace, non molte persone si preoccupavano dell’uguaglianza di genere.
Fortunatamente per Grace, suo padre voleva che le sue figlie ricevessero la stessa educazione di suo figlio.
Inviato a una buona scuola, Grace si è rivelata brillante in matematica.
Suo nonno era un contrammiraglio, e il suo sogno d’infanzia era quello di unirsi alla Marina degli Stati Uniti, ma le ragazze non erano ammesse.
Aggeggio ingombrante
Poi, nel 1941, l’attacco a Pearl Harbor trascinò l’America nella seconda guerra mondiale.
Il talento maschile è stato chiamato via.
La Marina degli Stati Uniti ha iniziato a prendere le donne. Grace ha firmato subito.,
Se ti stai chiedendo perché la marina ha bisogno di matematici, considera di puntare un missile.
A quale angolo e direzione dovresti sparare?
La risposta dipende da molte cose: distanza del bersaglio, temperatura, umidità, velocità del vento e direzione.
Questi non sono calcoli complessi, ma richiedevano molto tempo per un “computer” umano armato solo di carta e penna.
Come Lt (junior grade) Hopper si è laureato dalla scuola di guardiamarina nel 1944, la marina è stato incuriosito dal potenziale di una macchina ingombrante recentemente ideato dal professore di Harvard Howard Aiken – il Mark 1.,
La marina ha inviato il tenente Hopper per aiutare il prof Aiken a capire cosa poteva fare.
Prof Aiken non era entusiasta di avere una femmina squadra ma Tramoggia Lt colpito lui che aveva chiesto di scrivere il manuale di funzionamento.
Ciò ha comportato un sacco di tentativi ed errori.,
Il più delle volte, il Mark 1 si fermava subito dopo l’avvio e non c’era alcun messaggio di errore user – friendly.
Una volta, era perché una falena era volata nella macchina – che ci ha dato il termine moderno “debugging”.
Più spesso, il bug era metaforico: un interruttore capovolto erroneamente, un buco sbagliato nel nastro di carta.
Il lavoro investigativo è stato laborioso e noioso.,
di Più da Tim Harford
L’iPhone a 10: Come lo smartphone è diventato così intelligente
Il semplice scatola di acciaio, che ha trasformato il commercio globale
Come il codice a barre cambiato la vendita al dettaglio
Perché il calo dei costi di materiali leggeri
Lt Tramoggia e i suoi colleghi iniziato a riempire quaderni con pezzetti di provato-e-testato riutilizzare pezzi di codice.,
Nel 1951, i computer erano abbastanza avanzati da memorizzare questi blocchi – chiamati “subroutine” – nei propri sistemi di memoria.
A quel punto, Grace stava lavorando per una società chiamata Remington Rand.
Ha cercato di convincere i suoi datori di lavoro a lasciare che i programmatori richiamassero queste subroutine in parole familiari – per dire cose come: “Sottrarre l’imposta sul reddito dalla paga.”
In seguito disse: “Nessuno ci ha pensato prima, perché non erano pigri come me.”
In effetti, Grace era famosa per il duro lavoro.,
Ma ciò che Grace ha definito un “compilatore” ha comportato un compromesso.
Ha reso la programmazione più veloce, ma i programmi risultanti hanno funzionato più lentamente.
Ecco perché Remington Rand non era interessato.
Ogni cliente aveva i propri requisiti su misura per la propria nuova macchina di calcolo.,
Aveva senso, pensava l’azienda, che i suoi esperti li programmassero nel modo più efficiente possibile.
Open source
Grace non si è scoraggiata: ha semplicemente scritto il primo compilatore nel suo tempo libero.
E altri amavano come li aiutasse a pensare in modo più chiaro.
Il libro di Kurt Beyer, Grace Hopper e l’invenzione dell’era dell’informazione, racconta molte storie di utenti impressionati.
Uno di loro era un ingegnere chiamato Carl Hammer, che usava il compilatore per attaccare un’equazione con cui i suoi colleghi avevano lottato per mesi.,
Il signor Hammer ha scritto 20 righe di codice e l’ha risolto in un giorno.
I programmatori che la pensano in tutti gli Stati Uniti hanno iniziato a inviare a Grace nuovi blocchi di codice, e li ha aggiunti alla libreria per la prossima versione.
In effetti, era da sola pioniera del software open-source.
Il compilatore di Grace si è evoluto in uno dei primi linguaggi di programmazione, COBOL.
Più fondamentalmente, ha aperto la strada alla ormai familiare distinzione tra hardware e software.,
Con uno-di-un-tipo di macchine come la Harvard Mark 1, il software è stato hardware.
Nessun modello di switch funzionerebbe anche su un’altra macchina, che sarebbe cablata in modo completamente diverso.
Ma se un computer può eseguire un compilatore, può anche eseguire qualsiasi programma che lo utilizza.,
Da allora ulteriori strati di astrazione sono venuti a separare i programmatori umani dal nocciolo dei chip fisici.
E ognuno ha fatto un ulteriore passo nella direzione che Grace ha realizzato: liberare la capacità intellettuale del programmatore per pensare a concetti e algoritmi, non a interruttori e fili.
Grace aveva le sue opinioni sul perché i colleghi erano stati inizialmente resistenti: non perché si preoccupassero di far funzionare i programmi più velocemente, ma perché godevano del prestigio di essere gli unici che potevano comunicare con il computer divino.,
I “sommi sacerdoti”, li chiamava Grazia.
Pensava che chiunque dovesse essere in grado di programmare.
Ora, chiunque può.
E i computer sono molto più utili a causa di ciò.