All'evoluzione dell'architettura interna dell'elaboratore si sono naturalmente accompagnati lo sviluppo del software necessario a far funzionare le macchine (sistemi operativi), dei programmi (applicazioni) che su tali macchine possono essere utilizzati.
I primi sistemi operativi facevano uso di modalità batch (sistemi di elaborazione sequenziale) di esecuzione dei programmi.

I primi linguaggi di programmazione di alto livello, sviluppati a partire dalla metà degli anni Cinquanta, furono il FORTRAN, orientato alle applicazioni scientifiche, e il COBOL, orientato alle applicazioni di carattere commerciale. Intorno agli anni Sessanta lo sviluppo di linguaggi funzionali portò alla creazione del più famoso, potente e complesso linguaggio, il LISP.
Le varietà degli utenti dei sistemi informatici ha accresciuto la differenziazione fra i sistemi operativi e i linguaggi di programmazione dei computer per l'utenza scientifica e di quelli per il vasto pubblico (macchine pensate prevalentemente per la stesura di testi, meno potenti, ma con maggiore facilità di utilizzo e migliori interfacce per l'utente). La necessità di poter rendere disponibile uno stesso computer a più utenti (multiutenza), in centri di ricerca, università e aziende, condusse allo sviluppo di sistemi operativi multiutente come Unix, VMS, MVS.

Per quello che riguarda i piccoli elaboratori, l'esigenza di unificare l'offerta sul mercato si tradusse nella progettazione di sistemi operativi più flessibili come, ad esempio, il System-360 dell'IBM, che permetteva di utilizzare il medesimo software su computer diversi, per prestazioni e prezzo.

La proliferazione degli utilizzi dei computer condusse i programmatori a richiedere e sviluppare linguaggi più potenti e versatili: nacquero così linguaggi come il C (dalle necessità degli sviluppatori di Unix), il Pascal (linguaggio creato per scopi didattici), Ada (su direttive del Dipartimento della Difesa); intanto il bisogno di scambiare dati e programmi in maniera affidabile fra i vari utilizzatori della tecnologia spingeva gli operatori verso lo sviluppo di una rete di trasmissione delle informazioni facilmente accessibile da qualsiasi parte del mondo. Così venne creato su richiesta del Dipartimento della Difesa statunitense la progettazione di un sistema di trasmissione di dati abbastanza robusto che nella prima metà degli anni Settanta fece la sua comparsa, fu l’avvento dei protocolli TCP-IP, su cui è basato Internet.

 

PC in rete

La comparsa di computer più potenti fornì un notevole impulso agli studi di informatica in quanto, allargandosi l'utenza e l'utilizzo, si presentava la necessità di risolvere nuovi problemi sia di elettronica che di linguaggio.

Negli anni Ottanta nascono linguaggi di programmazione da utilizzare su macchine speciali, come il C++, un'estensione del C orientata agli oggetti, per la programmazione di calcolatori paralleli, o il Prolog, progettato per l'intelligenza artificiale; vengono intanto sviluppati linguaggi orientati a compiti particolari e ben specifici: Postscript Adobe (per la gestione delle comunicazione con sistemi di stampa e visualizzazione), SQL (per l'interrogazione di database client-server), Tcl/Tk (per la realizzazione di interfacce utente), HTML (per la realizzazione di pagine Web), Mathematica (allo stesso tempo linguaggio di programmazione e software per la gestione di problemi matematici).