Programmering handlar om att instruera en maskin eller del av en maskin, till exempel en
mikrodator,
dator,
robot eller
NC-maskin att utföra ett visst arbete. Personen som utför detta hantverk brukar ofta tituleras
programmerare. Programmering är en del av det vidare begreppet
programvaruutveckling eller
mjukvaruutveckling som även innefattar aktiviteter som sammanställning av krav, mjukvarudesign och testning. När man programmerar skriver man ett
program och man använder ett
programspråk. Olika delar av ett program kan vara skrivet i olika programspråk. Maskinen förstår normalt inte programspråket direkt. Detta måste översättas till den
maskinkod som maskinen är konstruerad att direkt förstå. Programmering direkt i maskinkod förekommer praktiskt taget inte alls eftersom det är för arbetskrävande. Olika typer av maskiner har helt olika uppsättningar instruktioner i sin maskinkod. Begrepp förknippade med programmering är bland annat
slingor och
arrayer.