This is your first video in the series on C programming and computer science for beginners. If you are completely new to C, this series is for you! What is C?
C is an example of a programming language. What is a programming language?
Before we can fully understand programming languages, we need to know a few things first. Essentially, we as humans want to communicate with a computer to tell it to do something or to compute something for us, but computers don’t understand English, they only understand machine code. Machine code is a sequence of ones and zeroes that the computer’s processor can understand. This allows us to tell the processor to do simple instructions.
The problem is that writing software in machine code is very complex and very error prone (imagine writing 101011000111011011111…). A programming language is something humans can understand that can also be understood by computers. The computer doesn’t understand the language directly, but what we tell the computer to do in a programming language is translated to something the computer’s processor can understand.
Programming Languages Make Our Lives Easier
To summarize: We learn the programming language, which is then converted to machine code. You can think of the machine code as individual commands for the computer’s processors. Programming languages make it easier for humans to tell the computer what to do.
All applications are written using a programming language (whether it be an operating system like Mac or Windows or a desktop application like Google Chrome).
Is C a Good Language to Learn?
C is a very good programming language to learn. In fact, it was one of the first really well established programming languages and is one of the most popular languages used today. In fact, many other programming languages are based off of C. You may have heard of C++, C#, Objective C, Java…These all have similarities with C. Learning C helps you learn how to become a better software developer or software engineer.
What Do I need to Know?
When we are learning C, we do not have to worry about how the computer understands our commands or how our code is converted to machine code. All we care about is that we are able to tell the computer what to do. You could say that a programming language allows us to abstract away how the computer understands and allows us to focus on what we want the computer to do (to an extent).
The concept of an abstraction is simple. The intricate details are hidden from us. All we need to know is C Programming or some other programming language. Just like how when we drive a car, we don’t have to worry about the details of how the engine works. All we have to know is that when we press the gas, the car goes.
How is a C Program Written?
With C, we will learn how to write code like this:
Don’t worry if you don’t understand this code. This is a simple program to tell the computer to write the words “Hello World” which we will learn how to execute and build upon in the upcoming blogs.
When we communicate to a program in C, we essentially create a file where we type all of our commands. The stuff we write in this file is called code, or source code. When you can read C, the code makes sense. But the code cannot be read by the computer, it still has to be translated for the computer to understand. This process of translation from C to machine code is called compiling. How do we compile code? We use a special software known as a compiler. We hand the source code file to the compiler and it outputs the compiled version of the code and stores that in another file. Think of the compiler as the translator between us humans and the computer.
We use a special software known as a compiler. We hand the source code file to the compiler and it outputs the compiled version of the code and stores that in another file. Think of the compiler as the translator between us humans and the computer.
So we write code in a file (you can think of it as just a text file), and then we compile this code into what is known as a program, software, or app.
Once we have a program, we can run or execute the program and it will start doing the things we originally asked the computer to do when we were writing our code.
This is the foundation for software development and engineering. This is all one topic within the subject of computer science. Computer science is the study of everything we can do with computers and code. By the end of this series I want you to have a general understanding of computer science so that the knowledge learned hear can flow into other programming languages and other areas of your life.
Learning code can be overwhelming at first, but follow the next tutorial to learn how to write your first program and how to execute it (it’s a very satisfying feeling). But also remember that these are just the basics. The more you study, the more you will see how beautiful and fun computer science can be.
If you’ve enjoyed this content, check out the next blog where we will be installing GCC!
All of this content can be found in video form 🎥🙂: