Molti di voi avranno visto in un film western la scritta Hardware sopra a un negozio di ferramenta e chincaglieria, ma oggi nell’immaginario collettivo la parola Hardware viene associata a ben altro.
Tutti hanno sentito parlare di hardware e software per computer: l’hardware è il materiale su cui eseguiamo i programmi, in parole povere è il computer stesso, o meglio il contenitore di ferro con cavi elettrici, componenti elettronici, dischi, ventole, e quant’altro, invece il software sono i programmi stessi che girano utilizzando appunto le parti hardware di un computer.
L’hardware è spesso definito ”difficile”, duro, perché è difficile da cambiare, da aggiornare – per fare un cambiamento in un progetto di circuito in genere richiede un nuovo layout di un nuovo circuito stampato (PCB), la fabbricazione della scheda, l’assemblaggio di tutte le parti sulla nuova scheda, e test prima che i programmi possano essere eseguiti su di esso. Insomma se si intente modificare un Hardware il processo è lungo e costoso !
Invece il termine software fu coniato nel 1953 da Paul Niquette e usato per la prima volta in stampa da John Tukey nel 1958.
Il software è “soft”, soffice, perché si possono apportare con semplicità le modifiche a un programma per computer, che in Niquette e Tukey significava modifiche a un mazzo di schede perforate e rieseguiva il programma senza dover apportare modifiche al computer stesso. Un concetto introdotto, anche se teoricamente, da Charles Babbage nel 1800, nella sua macchina analitica, una sofisticata macchina meccanica da calcolo che poteva essere programmata nelle sue funzioni utilizzando delle schede perforate. Nel 1940, i primi computer elettronici come il Colossus e l’ENIAC potevano invece essere riprogrammati cambiando il cablaggio del computer usando interruttori e spine. (come in un vecchio centralino telefonico)
Oggi, il software è associato a programmi che sono memorizzati su alcuni supporti di memorizzazione di massa, come un disco rigido o SSD, e quindi caricati nella RAM per essere eseguiti. Potrebbe anche essere applicato alle app scaricate dal cloud e quindi memorizzate sul tuo smartphone o tablet nella memoria flash e scaricate nuovamente nella RAM per essere eseguite.
Riassumendo l’hardware e il software, in un computer, sono complementari e uno non può esistere se non esiste l’altro. Se noi acquistiamo un computer (hardware) e in quest’ultimo non c’è caricato ne il sistema operativo ne tanto meno i programmi (software), il computer sarebbe soltanto una sofisticata scatola piena di componenti, ma di nessuna utilità pratica !