Programming is the mental process of thinking up instructions to give to a machine, while coding is the process of transforming those ideas into a language a computer can understand.
Programming languages have evolved from punch cards to drag and drop interfaces, with various methods in between.
The choice of programming language depends on factors like company policy, task suitability, availability of third-party packages, and individual preference.
Computer programmers' jobs involve prototyping, coding, debugging, documentation, integration, maintenance, requirements analysis, software architecture, software testing, and specifications.