Differences Between Coding & Programmingby Anne Hirsh
The U.S. Bureau of Labor Statistics recognizes no difference between the terms "programming" and "coding" for individuals who work in computer programming. The terms are often used interchangeably, but some people find one term or the other preferable, or use them to imply different parts of the process of creating computer software.
Computer Code Basics
Computer programmers must translate actions they want a computer to perform into terms a computer will understand. Computers use a language called machine code, which is a binary language. This means that every instruction the computer understands is made up of various combinations of the numerals "1" and "0." Computer programmers use a variety of intermediate languages, such as C, C#, C++, Java, Ruby and Python, to formulate common thoughts into a language known as "source code." They then run these languages through a program called a "Compiler" to translate the source code into machine code, or binary.
General Vs. Specific
The act of writing the source code is called coding. It can also be called programming because it is part of the computer programming procedure. However, the process for creating software is more than writing the code; it also includes running the compiler and fixing errors, a process known as "debugging." When used as specific terms rather than in a general sense, coding can refer to the specific process of typing in the code, while programming may refer to any stage in the process, including compiling and debugging.
Sometimes the terms coding or programming can be used as status symbols. For many years, only individuals with special training could write programs, so "programming" was an activity associated with status. As computer languages and automated software evolved and simplified, programming required less specialized training. Even inexperienced users can create simple programs with the right tools now. Because of this, "coding" gained the status that "programming" once had, due to the implication that programming may not take specialized skills, but coding requires specialized knowledge and training.
You may be able to tell from the context of a conversation whether someone is using "coding" in the specific or general sense, and whether or not it has a sense of status attached to it. If you cannot tell from the context in which you read or hear the word, don't hesitate to ask. The field of computer science is constantly evolving, and even common words take on new meanings as the industry progresses.
- U.S. Bureau of Labor Statistics: Occupational Outlook Handbook, 2010-11 Edition: Computer Software Engineers and Computer Programmers
- Python Programming for the Absolute Beginner, Third Edition; Michael Dawson
- Stockbyte/Stockbyte/Getty Images