Come funzionavano i programmatori quando un computer era molto costoso, raro, grande quanto una stanza?

19

Suppongo che non siano stati in grado di sedersi davanti a un computer per tutto il giorno come facciamo oggi. Quindi, come hanno scritto il loro programma? Su un pezzo di carta e digitarlo più tardi quando il computer è disponibile? Come hanno fatto i loro test?

    
posta Louis Rhys 24.02.2011 - 08:51
fonte

6 risposte

36

Circa 1974, staresti seduto su una comoda scrivania e scriverai il tuo programma a lungo su carta. Lo proverai camminandoci in testa usando i dati di test. Quando eri soddisfatto del fatto che il tuo programma fosse corretto, andresti nella stanza delle schede perforate e trascrivere il tuo programma su schede perforate, una linea di 80 caratteri per scheda. Dovresti anche prendere a pugni le carte per i dati di cui il tuo programma potrebbe aver bisogno. Poi dovrai anche scrivere alcune carte incredibilmente criptiche in Job Control Language (JCL) che diranno al computer come compilare ed eseguire il tuo programma, e quali dispositivi di input / output useranno. Poi avresti portato le tue carte nella "Finestra IO", dove le avresti consegnate a un impiegato.

Quando è arrivato il tuo turno, l'impiegato avrebbe caricato le tue carte in una tramoggia e premuto un pulsante per dire al computer di iniziare a leggerle. L'output del tuo programma in genere andrebbe su una stampante di linea o un drum plotter. Quando il tuo programma è terminato, l'impiegato raccoglierà le tue carte e la tua copia cartacea e le metterà in un buco dove puoi ritirarle. Prendi l'output, rivedi i resuilts e ripeti il processo. Ci vorrebbe da 20 minuti a 24 ore per un ciclo completo. Probabilmente puoi immaginare di non essere felice quando hai scoperto che l'unico risultato era un messaggio stampato dal compilatore che ti diceva che il tuo programma aveva un errore di sintassi.

Potresti anche avere accesso a un computer tramite un telescrivente, in modo che tu possa effettivamente avere una sessione interattiva con un computer remoto. Tuttavia, la digitazione su un teletype è stata fisicamente dolorosa (tasti molto rigidi e rumorosi), quindi in genere hai sempre scritto e testato il tuo programma su carta.

Nel 1976 i sistemi UNIX e i mini-computer come il PDP 11-70 stavano diventando più comuni. Di solito lavoravi in una stanza piena di videoterminali con display a caratteri 25x80. Questi erano collegati al computer tramite linee seriali. Greggio, ma non troppo dissimile dal lavorare a un prompt dei comandi oggi. La maggior parte degli editori allora erano piuttosto schifosi. Vi è stato un miglioramento straordinario.

    
risposta data 24.02.2011 - 09:17
fonte
3

Ho imparato la programmazione in PL / 1 nel 1975 (su IBM 370/168 ), da adolescente (sono nato nel 1959). Ho avuto il privilegio di avere un padre che lavorava in IBM France. Il suo capo, M. Dornbush, ha scritto un libro (in francese) sulla programmazione in PL / 1.

A quel tempo, un programma (come fatto da qualcuno che stava imparando a programmare) era un pacchetto di poche centinaia di schede perforate. La risposta di Charles E.Grant descrive la procedura: prima hai scritto il tuo programma su carta e l'hai controllato con attenzione. Poi hai perforato le carte (su un IBM keypunch macchina), e infine hai messo il mazzo di carte nel lettore di schede perforate. Da notare che in quel momento i programmi sorgente erano abbastanza piccoli (un programma di diverse migliaia di istruzioni, ovvero schede perforate, era un programma molto grande).

Da adolescente, sono rimasto impressionato dalla capacità del compilatore di checkout PL / 1, in particolare per suggerire correzioni sugli errori di battitura.

Nei prossimi anni, ho giocato con un vecchio CAB / 500 computer e un IBM/1620 computer presso il museo della scienza del Palais de la Découverte a Parigi (entrambi i computer erano abbastanza grandi per essere ospitati in un museo). CAB / 500 è stato prodotto negli anni '60 e mio padre ha scritto il compilatore PAF (una sorta di linguaggio BASIC) quando ero bambino o bambino (1958-1962).

Oggi sto ancora facendo cose ( MELT ) relative ai compilatori, e uno dei pochi che può affermare che vide suo padre scrivere compilatori!

La cosa divertente con PAF su CAB / 500 era il suo editor interattivo (con un nastro tty & punzonato) in grado di completare (su parole chiave). Era un po 'come il PC IBM originale, in qualche modo un "personal computer".

La cosa divertente con IBM / 1620 era che dovevi eseguire il bootstrap inserendo alcune cifre sulla tastiera per caricare il monitor e il compilatore Fortran.

Si noti che negli anni '50 alcuni computer non avevano nemmeno lettori di schede perforate (AFAIK era opzionale su IBM650 e IBM7094), ma non li ho mai visti.

Si noti inoltre che l'accesso ai computer a metà degli anni '70 era un enorme privilegio (perché erano attrezzature costose). Forse l'equivalente oggi potrebbe essere quello di ottenere l'accesso alle macchine per la produzione di silicio o alla potenza di calcolo su scala datacenter.

    
risposta data 25.05.2015 - 19:36
fonte
2

Dipende da quanto indietro vuoi andare.

La prima "Programmazione" utilizzava schede perforate che assomigliavano a This (That's cobol) dove hanno scritto il loro codice con pochissima interazione di qualcosa di particolarmente elettrico e poi li hanno nutriti (quando ne hanno avuto la possibilità) nell'unico computer dell'edificio per far funzionare il codice per un po 'e sputare una stampa fuori da qualsiasi forma. Spesso c'erano molte altre persone che volevano usare lo stesso computer, quindi dovevi aspettare fino a un paio di giorni (se era davvero occupato) per i tuoi risultati, che più spesso poi non sarebbero stati completamente inutili (tu pensare di ottenere un errore di sintassi ora può essere frustrante. Immagina se dovessi completamente riscrivere una sezione del tuo codice e poi aspettare un giorno per compilarlo). Non dovevano controllare quasi tutti gli input, o fare test di usabilità o altri test critici poiché, poiché i computer erano così scarsi, erano spesso gli unici a fare qualcosa con il programma.

Quando il PDP e gli equivalenti sono diventati più comuni, un programmatore (specialmente in ambienti universitari) scrive il proprio codice su carta, quindi prenota il tempo con il PDP per digitare il proprio codice ed eseguirlo alcune volte. Non hanno avuto molto tempo a meno che non lavorassero nelle prime ore del mattino, quindi la gente stare svegli tutta la notte solo per far funzionare il loro codice non era insolita, e la limitata disponibilità di tempo sul "vero" PDP (o equivalente) portano a un certo numero di gruppi che costruiscono il proprio clone per ottenere un po 'più di tempo.

    
risposta data 24.02.2011 - 11:43
fonte
1

Direi che a quei tempi, usare un programma per computer potrebbe essere leggermente più semplice rispetto a scriverne uno oggi. Dato che l'IDE di oggi è molto più facile da usare rispetto alle interfacce utente dei programmi per computer, anche quando avevano terminali seriali remoti. La maggior parte dei programmi utilizzava sequenze o comandi di chiavi criptati non documentati.

La mia unica esperienza con sistemi di computer antichi è la vecchia stampante a colori Kodak 2610 Photo. È stato avviato da TTY seriale utilizzando un lettore di strisce ottiche. Durante il mio impiego ho dovuto solo riavviarlo una volta dopo un guasto di powe.

Il controllo dei comandi è stato perfomred tramite un tty vt100 seriale, ma tutta la configurazione è stata salvata e ripristinata utilizzando un tty meccanico in grado di leggere e scrivere strisce di carta.

    
risposta data 24.02.2011 - 12:02
fonte
-1

Jerry Weinberg ha risposto a una domanda simile qualche tempo fa su uno dei suoi blog: link

Penso che questo potrebbe portare un po 'di luce alla tua domanda.

    
risposta data 24.02.2011 - 09:32
fonte
-1

Ricordo che mia madre mi disse che stava programmando al college (Circa 1969-1970). Disse che il primo anno usavano le schede perforate, il che era doloroso. Il secondo anno hanno ottenuto un PDP-8, che era un computer fantastico e penso che in realtà avevano un terminale, o almeno un nastro di carta.

Penso che lavorasse a Fortran e Lisp.

    
risposta data 24.02.2011 - 09:25
fonte

Leggi altre domande sui tag