Dipende molto da programma a programma.
La cosa più semplice e "generale" che pupi fare è inserire delle stampe di status nella CommadWindow o in un fle di "log":
[*] se il programma contiene un loop molto grande potresti stampare, ad intervalli regolari (ogni "x" iterazioni), l'indice del loop, oppure, se conosci in anticipo il numero di iterazioni, potresti farti stampare il valore di avanzamento come percentuale di iterazioni eseguite rispetto al totale
[*] se il programma deve elaborare un certo numero di files in input, potresti stampare il nome del file od il numero percentuale di files elaborati
[*] se il programma consiste di "procedure" che vengono eseguire in sequenza (se, cioè, il programma esegue una serie di "steps") potresti stampare lo step corrente.
Questi sono solo alcuni esempi, ci sono tantissime altre possibilità.
Tieni presente che la stampa a video rallenta molto l'esecuzione del programma stesso per cui devi trovare un compromesso tra il numero di informazioni che vuoi stampare ed il tempo di esecuzione.