De fleste dataprogrammer blir i dag lagd på den måten at de skrives i et såkalt høynivåspråk som er lett å lære og tillater rask programvareutvikling. Det forekommer også at programmer blir skrevet på lavnivåspråk (assembler) som er en mer abstrakt og krevende ting å lære seg, men som tillater utvikling av løsninger som benytter seg av datamaskinens muligheter på en optimal måte.
Vi skiller ofte mellom grunnleggende programmer, som operativsystemer (generelle støttefunksjoner for alle programmer), applikasjonsprogrammer (nytteprogrammer, som f.eks. tekstbehandling, tegning, regneark osv.), nettverksklienter (som epostprogrammer, nettlesere osv.) og andre programmer. Operativsystemet er 'hovedprogrammet' og er det som sørger for å holde datamaskinen igang og startes og lukkes automatisk ved oppstart og avslutning av datamaskinen.
Se også