Początkowo programiści tworzyli programy bezpośrednio w kodzie maszynowym danego komputera, operując sekwencjami liczb. Poszczególne polecenia zaczęto wyrażać w językach asemblerowych, w których zamiast liczbowego kodu rozkazu można było stosować ich symboliczną, czytelną dla człowieka nazwę łatwiejszą do zapamiętania, tzw. mnemonik (np. ADD). Przed uruchomieniem takiego programu należało przetłumaczyć nazwy poszczególnych rozkazów na ich reprezentację liczbową i w takiej postaci wprowadzić do pamięci maszyny.
Projekt pierwszego tzw. języka wysokiego poziomu, przedstawił Konrad Zuse w swojej publikacji z 1948 roku wydrukowanej w czasopiśmie . Zaproponował on, aby zrezygnować ze stosowania rozkazów maszynowych na rzecz bardziej naturalnego zapisu, np. a + b, lecz jego koncepcja przeszła bez echa. W 1956 roku opublikowany został podręcznik języka FORTRAN, pierwszego języka wysokopoziomowego, który odniósł sukces i jest stosowany do dziś. Pierwszy kompilator FORTRANu powstał rok później.