In che modo gli scienziati hanno "controllato il codice sorgente" gli switch hardware?

-1

Sto mettendo insieme un discorso sulla storia delle migliori pratiche nello sviluppo del software e stiamo cercando di mettere insieme un po 'di timeline su come si sono evolute le buone pratiche.

Questa domanda parla della storia del controllo del codice sorgente e parla di come le prime versioni hanno iniziato ad apparire negli anni '80, ma spero che potremo andare più indietro.

Sto esaminando il lavoro svolto a Bletchley Park durante la seconda guerra mondiale e le macchine che Alan Turing e il suo team hanno costruito per decifrare i codici tedeschi. Questi sono ampiamente considerati come alcuni dei primi computer moderni e utilizzano switch hardware e componenti meccanici piuttosto che ciò che possiamo riconoscere come software oggi.

Tuttavia, questi erano i predecessori per i programmi che creiamo oggi e sono stati altrettanto complicati. Sappiamo che tipo di pratiche di tracciamento delle modifiche (o ciò che conosciamo oggi come controllo del codice sorgente) è stato utilizzato durante la creazione e la programmazione di queste macchine incredibili utilizzando gli switch?

    
posta Liath 04.04.2018 - 14:42
fonte

3 risposte

2

Il controllo del codice sorgente non era una cosa, ma potevi dire che c'era un controllo sorgente ad hoc , derivante da tutta l'amministrazione del progetto. Leggi oltre, però, perché c'è di più in Source Control.

La parola non esisteva, anche il concetto non esisteva. E non ci sarebbe stato alcun modo di eseguire il rollback del lavoro all'istante come si farebbe oggi con git, ma c'era probabilmente molta tracciabilità nei documenti, in modo che nulla andasse perso o falsificato.

Ricorda che le iter di sviluppo erano molto più lente.

Ci sono stati diversi motivi:

  • Tutto è stato scritto a mano o digitato sulla carta, inclusi schemi, ecc.
  • Era tempo di guerra, quindi c'era un sacco di convalida formale in corso, come l'ufficiale a cui il team stava segnalando di dover firmare i documenti costantemente.
  • Molte attività periferiche eseguite da team specializzati. C'erano stanze piene di gente il cui compito era solo quello di eseguire calcoli complessi, in fretta. C'erano anche persone il cui compito era esclusivamente quello di perforare le carte.

Tutti questi documenti dovevano andare avanti e indietro, venivano costantemente convalidati e quindi archiviati. Formalmente, potresti chiamarlo un embrione di controllo del codice sorgente, applicato a un piccolo gruppo di 10 persone, al massimo. Quello che sto descrivendo non rappresenta nemmeno accuratamente la routine quotidiana del lavoro di Turing durante la seconda guerra mondiale. Quello che sto descrivendo è più un progetto della NASA degli anni '60.

Il controllo della sorgente "moderno", automatizzato, dedicato è un miliardo di anni luce di distanza. Se sei soddisfatto di una tale definizione di controllo del codice sorgente ", potresti chiamare qualsiasi controllo del codice sorgente. Non erano nemmeno le fonti , solo i doodle e i documenti tecnici.

Vorrei aggiungere che il controllo del codice sorgente non è destinato solo all'archiviazione e al rollback, ma anche alla gestione delle modifiche simultanee . Non c'erano cose simili al tempo di Turing , dal momento che la sua squadra e lui stavano distribuendo le attività dopo le riunioni che radunavano una manciata di persone.

    
risposta data 04.04.2018 - 15:15
fonte
3

Non so a cosa ti interessa veramente, ma ricorda che l'inserimento del codice in un terminale è una cosa moderna.

Quando le persone iniziarono a scrivere veramente codice (invece che su hardwiring), lo scrissero su fogli di carta e da lì fu tradotto per il computer (le schede perforate erano comuni). Quindi i tuoi fogli di carta ti forniscono una cronologia completa di tutti i programmi, e anche le tue schede perforate.

Turing, ovviamente, era ancora prima del tempo delle macchine liberamente calcolabili.

    
risposta data 04.04.2018 - 14:52
fonte
2

La cosa più vicina sarebbero i notebook di laboratorio / ingegneristici. Questi notebook dovrebbero avere ciò che è stato pianificato, cosa è stato fatto, quali sono stati i risultati e i piani futuri.

Questi taccuini sono considerati documenti legali e sono comunemente usati nelle controversie sui brevetti.

Non sono il controllo del codice sorgente, anche se servono una funzione analoga.

    
risposta data 04.04.2018 - 16:14
fonte

Leggi altre domande sui tag