Programarea interactivă, cunoscută și sub denumirea de codare live, se referă la orice limbaj de programare pentru computer care permite creatorului să facă modificări programului în timp ce acesta rulează deja. În programarea tradițională, codificatorul scrie mai întâi programul și apoi îl salvează. Apoi rulează programul pe computer. Dacă apare o eroare, se întoarce la planșa de desen pentru a introduce codul nou și a rula programul din nou. Cu programarea interactivă, designerul poate face modificări la cod fără a fi nevoie să ruleze programul din nou.
O altă utilizare pentru programarea interactivă este de a permite intrarea de la utilizator în ceea ce se numește o aplicație interactivă. Acest lucru poate fi la fel de simplu ca să-i cereți utilizatorului numele și apoi să îl afișați pe ecran. Programul are un element interactiv prin modificarea valorii numelui utilizatorului în funcție de ceea ce scrie. Când programul a fost creat, nu știa numele ei și valoarea era goală. Odată ce a aflat numele ei, a pus acea valoare în program în timp ce programul încă rula și apoi a afișat-o pe ecran.
Acest tip de programare interactivă este în contrast cu un alt proces de programare cunoscut sub numele de procesare batch. În procesarea în lot, programul poate rula fără a avea nevoie vreodată de intrare din partea utilizatorului. Acest lucru are avantajul de a rula singur, fără a avea nevoie de ajutorul utilizatorului, dar are un dezavantaj major. Toate informațiile necesare pentru ca programul să ruleze trebuie să fie codificate în el de la început. Dacă programul ar dori să afișeze numele utilizatorului, ar trebui să-l cunoască deja, deoarece nu ar putea cere intrarea utilizatorului.
În crearea unui program, acesta trece prin cicluri de dezvoltare. Aceste cicluri încep cu identificarea a ceea ce ar trebui să facă programul, scrierea codului pentru acesta și testarea programului. Proiectantul se întoarce apoi și face modificări în program și îl testează din nou. Acest proces se repetă până când este creat un program de succes.
Când se utilizează programarea interactivă, liniile distincte dintre etapele ciclului de dezvoltare devin neclare. Scrierea programului și rularea programului devin una și aceeași. În loc să scrie programul și apoi să-l execute, dezvoltatorul poate scrie programul, îl poate rula și poate continua să scrie sau să-l facă modificări în timp ce rulează. Acest lucru permite mult mai multă flexibilitate în programe și permite programatorului sau utilizatorului să facă modificări fără a reporni programul.