💻

Understanding Programming and Coding Differences

Aug 12, 2024

Differences Between Programming and Coding

Introduction

  • Exploration of the distinction between programming and coding.
  • Importance of understanding the terms to avoid offense.

Programming

  • Defined as a set of instructions that define behavior.
  • Close relationship to logic, often considered a branch of applied math.
  • Math and Programming Connection:
    • Programming is seen as practical, while math is theoretical.
    • Programming skills are essential in complex software engineering jobs.
    • Discrete math is a common course for programming.
  • Examples of programming:
    • Concepts of Pavlov’s dogs, human behaviors like hunger, etc.
  • People often claim that CSS and HTML are not real programming languages due to their lack of logic focus.
  • Top tech companies prioritize programming skills over coding skills in interviews.
  • Example: Harvard's CS50 starts with a simple programming language (Scratch) to teach logic before moving on to real languages (C, JavaScript, Python).

Coding

  • Coding is the implementation of logical programming solutions but can also include languages like HTML and CSS.
  • More focused on technical details and the syntax of different coding languages.
  • Coding is often viewed as a lower level of abstraction than programming.
  • Examples of coding tasks:
    • Code quality, breaking code into functions, utilizing libraries.
  • The phrase "Hello World" is often the first program written, showing different syntax across languages.
  • Explaining coding details to non-developers can lead to disengagement.
  • Conflicts may arise between technical and non-technical team members regarding coding decisions.
  • Caution advised when labeling someone as a coder, as it may imply they are easily replaceable and lack breadth in skills.

Learning Path

  • Once programming is understood, coding becomes easier.
  • Experienced developers can quickly adapt to new languages.
  • Focusing on mastering one language can be beneficial for progression into programming concepts.

Development Overview

  • Development is broader, focusing on solution outcomes related to business needs.
  • Development can involve more than just programming or coding.
  • While coding jobs may be automated, the principles of programming will remain relevant.

Conclusion

  • Understanding programming vs. coding aids in navigating the tech landscape and career paths.
  • Recognition of the importance of programming skills even beyond traditional programming roles.