Dennis Ritchie created the C programming language. He also co-authored the authoritative reference book on C programming with Brian Kernighan. If you want to truly understand C programming, it is a good idea to go straight to the source.

We just published a C programming course on the freeCodeCamp.org YouTube channel. In the course, Dr. Charles Severance will help you learn C programming by taking you through the classic 1978 C programming book written by Ritchie and Kernighan. Dr. Charles Severance (aka Dr. Chuck) is a professor at the University of Michigan and a very popular software instructor.

The course will help you understanding computer architecture and low-level programming.

The classic Kernighan and Ritchie book places the reader in the middle of the 1970's transition from a hardware-centered computer science to a focus on writing portable and efficient software. C was used to develop operating systems like Unix, Minix, and Linux and progamming languages like C++, Java, JavaScript, and Python.

In this course we will be reflecting on how C provided an important foundation for the creation of modern programming languages. This is not a good place to start if you do not already have some programming experience. A suggested pre-requisite is Dr. Chuck's Python for Everybody course.

Dr. Chuck also created a website to go along with this course that has many supplementary resources. You can access the site here.

Here are the chapters in the book which this course follows:

  • Chapter 0: Introduction
  • Chapter 1: A Tutorial Introduction
  • Chapter 2: Types, Operators, and Expressions
  • Chapter 3: Control Flow
  • Chapter 4: Functions and Program Structure
  • Chapter 5: Pointers and Arrays
  • Chapter 6: Structures
  • Chapter 7: Input and Output
  • Chapter 8: The UNIX System Interface

Watch the full course below or on the freeCodeCamp.org YouTube channel (10-hour watch).