Programmers' Thought When a good programmer thinks about programs, perhaps he thinks in a programming language. Because Natural languages are too ambiguous. Or, too verbose. Or, too indirect. Written-down thoughts become programs.