Si bien ambos términos son sinónimos entre sí y a menudo se usan indistintamente, son bastante diferentes entre sí. Codificar simplemente significa escribir códigos de un idioma a otro, como del inglés al Java. Programación, por otro lado, significa programar una máquina con un conjunto de instrucciones para ejecutar.
Un programador es alguien que traduce las lógicas a una máquina con un lenguaje que entenderá. Un programador se ocupa de mucho más que simplemente escribir códigos, que es solo el comienzo de lo que conforma las tareas de un programador.
Escribir código es solo el comienzo de la creación de software. La programación consiste en conceptualizar y analizar soluciones a problemas que pueden o no ocurrir, y luego determinar cómo deben resolverse estos problemas.
Un programador tiene que entrar en detalles minuciosos como configurar semánticas, analizar códigos, diseñar diferentes patrones y más. La idea es ahorrar tiempo usando un mínimo de líneas o código. La programación es compleja, lo que requiere un profundo conocimiento y comprensión del lenguaje.