Tidlige computere blev programmeret ved at indstille en række kontakter og trykke på det, der svarer til en "Enter"-tast. Hver post indeholdt en instruktion til computeren, hvilket gjorde programmering en tidskrævende proces. Programmeringssprog blev udviklet for at fremskynde denne proces og give flere mennesker mulighed for at blive programmører. Der er nu mange sprog for en programmør at vælge imellem, og de varierer i kompleksitet og brugervenlighed fra sprog på lavt niveau, som er tættere på maskinsprog, på sprog på højt niveau, som er tættere på mennesker Sprog.
Højt niveau
Programmeringssprog på højt niveau nærmer sig menneskeligt sprog i syntaks og er derfor nemmere for mennesker at bruge. Denne afstand fra maskinsprog gør sprogprogrammer på højt niveau nemmere at skrive, og der er mindre krav til tekniske færdigheder for en sådan programmør. BASIC, et populært begyndelsessprog, er et eksempel på et sprog på højt niveau. Navnet er faktisk et akronym, der står for "Beginners All-purpose Symbolic Instruction Code." COBOL er et højt niveau sprog, der bruges i erhvervslivet, og dets nærhed til engelsk gør det muligt for mindre teknisk dygtige medarbejdere at skrive COBOL programmer. Dette resulterer i en enorm omkostningsbesparelse for en virksomhed, der bruger COBOL. En ulempe ved disse sprog er, at de typisk kun giver almindelig tekstgrafik, da de ikke er i stand til at producere grafik fra sprog på lavere niveau.
Dagens video
Mellem niveau
Sprog på mellemniveau er blevet udviklet i de senere år for at udfylde hullet mellem sprog på højt og lavt niveau. Mange af disse sprog falder i kategorien "objektorienteret", og listen omfatter sprog som C#, C++ og Java. Disse sprog er nyttige til at udvikle grafiske brugergrænseflader, der kører på personlige computere, og giver en "frontend" til de ældre mainframe-applikationer, som de opretter forbindelse til. Dette hjælper programmøren til at "sætte et smukt ansigt" på en tidligere "grøn skærm"-applikation, hvilket kan være en konkurrencefordel for et softwareprodukt. Sprogprogrammører på mellemniveau har en tendens til at være noget mere teknisk dygtige end programmører på højt niveau og bliver typisk betalt mere.
Lavt niveau
Sprog på lavt niveau er længere væk fra det menneskelige sprog og er ikke let at læse med et blik. Sprog, såsom Assembler, kræver højt kvalificerede tekniske folk, hvilket resulterer i højere omkostninger for en arbejdsgiver. Syntaksens kryptiske karakter kan også forårsage længere fejlfindingstider, afhængigt af teknikerens færdighedsniveau. Pc-samlesprogprogrammer kan producere fantastisk grafik, men mainframe-samlesprogprogrammer bruges typisk som hjælpeprogrammer, der sjældent producerer noget output overhovedet.
Maskinsprog
Maskinsprog er sproget på det laveste niveau, der består af 1-taller og 0-taller organiseret i grupper på otte for at danne forskellige tegn. Hver 1 eller 0 er en "bit", og 8 bit danner en "byte". Det var vanskeligheden ved at programmere tidlige computere ved hjælp af maskinsprog, der nødvendiggjorde udviklingen af programmeringssprog. Programmer skrevet på de sprog, der falder ind under ovennævnte kategorier, "kompileres" typisk til maskinsprog, så computeren kan læse dem. Programmører, der kan læse og forstå maskinsprog, er meget dygtige og har høje lønninger.