SITERAW

What is C++ Coding?

Are you passionate about computers and curious to learn how to program? Why not give it a shot! Programming may seem daunting at first, but it's actually a much more approachable world than it appears!

You're probably wondering where to start, whether C++ is right for you, or if it might be better to begin with another language... You might be asking yourself if you'll be able to create everything you want, what the strengths and weaknesses of C++ are...

In this chapter, I'll do my best to answer all those questions. :)

And don't forget: this is a beginner-friendly course. No prior knowledge is required. Even if you've never programmed before in your life, all you need to do is take your time with the lessons, go step by step, and practice regularly as we go!

What are Programs?

Programs are the foundation of computing. They're what allow your computer to do anything at all.

Here are some examples of programs:

  • The Edge web browser, which lets you browse the internet.
  • The file explorer, which helps you manage files on your computer.
  • Microsoft Word, which lets you write letters and documents.
  • Adobe Photoshop, which helps you edit photos and create stunning graphics.

As you can see, each program is built for a specific purpose. We could also include games in this list — after all, they're designed for fun: Star Wars Battlefront, Call of Duty, World of Warcraft, Team Fortress 2, and so on. Each of these is a distinct program (and most video games are developed in C++ or C#).

Some programs aren't even visible. That's the case for those that run in the background, like the ones that check for system updates, or even your antivirus. They don't always open a window, but they're running and working nonetheless!

I want to create programs too! Where do I start?

First, take a moment to think about your goals. A game like World of Warcraft took dozens of full-time developers working over several years to make. So don't start with something too ambitious. ;)

That said, if you follow this course, you'll build a solid foundation for programming. We'll even build our own simplified web browser, kind of like Brave or Edge, in one of the projects! You'll learn to create programs with windows. And with a bit of extra effort, you could even make 2D or 3D games if you're up for it. In short, with time and persistence, you can go far. ;)

So yes, back to your question — how do we create programs? Programming is a rich and varied field. We use programming languages to tell the computer what to do. Let's take a closer look at what those languages are all about.

Programming Languages

Your computer is a fascinating and complex machine. Deep down, it only understands a very simple language made up of 0s and 1s. For example, a message like this:

0010010010100011010101001010111010100011010011

...could mean something like "Display a window on the screen."

Whoa! o_O That looks insanely complicated! Are we going to have to learn that stuff?

Luckily, no. :D

If we had to write everything in that language — called binary — it wouldn't take years to make a game like Gears of War, it'd take centuries (yes, seriously!).

To make life easier, developers invented intermediate languages that are much simpler than binary. Today, there are hundreds of programming languages. You can find a list on Wikipedia to get a sense of the variety. Each one has its own strengths and quirks — we'll come back to that.

But all programming languages serve the same purpose: to help you talk to your computer in a way that's easier than binary. Here's how it works:

  • You write instructions in a programming language (like C++, for example ;) ).
  • A special "translation" program converts those instructions into binary.
  • The computer reads the binary and does what you asked!

Let's sum that up in a little diagram:

Command: "Show me the result of 5+3" → Translated to binary → 0010001011001

That special "translation program" is actually called a compiler. It's an essential tool. It converts your code into a real executable program.

That's the main takeaway for now — simple, but absolutely fundamental!

But how do I choose which programming language to use? You said there are hundreds! Which one is the best? Is C++ a good choice?

Most programmers — also known as developers — know more than one programming language. It's rare to stick with just one.

Of course, you have to start somewhere. The good news is, you can start with whichever language you like! Programming principles are often shared across languages, so you won't feel completely lost switching from one to another.

Still, let's zoom in a bit and see what makes C++ stand out among the others. After all, this is a C++ course, right? ;)

C++ vs Other Languages

Out of the hundreds of programming languages out there, some are more popular than others. C++ is definitely one of the popular ones. Websites like siteraw.com even maintain rankings of the most-used languages. As you'll see, C, Java, and C++ often sit at the top of the list.

But should you pick a language just because it's popular? There are some great languages out there that barely get used. The problem with obscure languages is that it's harder to find help or tutorials when you get stuck. That's one reason why C++ is a solid choice for beginners: there are plenty of developers who use it, so you won't be alone!

Is C++ high-level or low-level?

Popularity aside, there's something even more important: the level of the language. Some are considered "high-level," others "low-level."

The first distinction between programing languages is one of its "language level."

What's a high-level language?

A high-level language is further from machine code and closer to human logic, making it easier and faster to write in. In contrast, low-level languages are closer to how the machine actually works — they're more complex, but give you much more control. It's a double-edged sword.

C++? It's usually considered a low-level language. But don't let that scare you! While it can be a bit more complex, you get a very powerful and fast language in return. Most video games are built in C++ precisely because it combines speed and performance like no other. That's what makes it such an essential language.

Here's a quick ranking of some languages by level (from highest to lowest):

  • JavaScript
  • Ruby
  • Python
  • PHP
  • Perl
  • Java
  • Delphi
  • C#
  • C++
  • C
  • Assembly

Yes, it's actually possible to code directly in binary using a barebones tool called an assembler. But since writing even a calculator in assembler takes Herculean effort, we generally stick with higher-level languages. ;)

Keep in mind that "level" is a relative concept. C++ is low-level compared to Python, but high-level compared to assembler. It all depends on your perspective. ;)

Summary: Why C++ Rocks

  • It's widely used. As we saw, it's one of the most common programming languages worldwide. That means you'll find loads of documentation online and get help easily on forums. Rumor has it, there are even some kind souls writing beginner tutorials for it. :-°
  • It's fast — very fast. That makes it ideal for performance-critical apps, like video games, financial tools, or military software that must run in real-time.
  • It's portable. A single C++ source code file can be compiled to run on Windows, macOS, and Linux without major changes. No need to rewrite your code for each platform!
  • It has tons of libraries. Libraries are like plug-ins that expand what the language can do. C++ alone doesn't do much, but with the right libraries, you can build 3D apps, network tools, audio programs, windowed interfaces, and more.
  • It's multi-paradigm (fancy word alert!). That means you can code in multiple styles with C++. You're still too new to dive into all these styles just yet, but one of the most famous is Object-Oriented Programming (OOP). It helps structure your code better and makes certain parts reusable. The second part of this course will be all about OOP!

Of course, C++ isn't perfect. Compared to other languages, it's a bit more complex. You get a lot of power and memory control, but misuse that power, and your program might crash more easily. Don't worry — we'll explore all of that gradually. ;)

A First Taste of C++

Just to give you a sneak peek, here's a super basic program that displays "Hello world!" on the screen. It'll be one of the first pieces of code we look at in the next chapters.

#include <iostream>

using namespace std;

int main() { cout << "Hello world!" << endl; return 0; }

Yep, that's C++ (it does look a bit like C — we'll get into why later).

A Bit of History

Programming has been around for quite a while. In the beginning, there wasn't even a keyboard! People used punched cards to give instructions to computers!

Safe to say, that was slow and painful.

From Algol to C++

Luckily, things evolved. Keyboards arrived, and so did the first programming languages:

  • 1958: Back when computers were the size of houses, a language called Algol was invented.
  • 1960s: Algol led to CPL, which evolved into BCPL, and eventually became language B (don't worry, you don't need to memorize all this :-°).
  • 1970: Then one day, the C language was created. It's still widely used today.
  • 1983: Later, someone thought "Let's improve C!" and created C++, which is essentially C with new features. It introduced advanced ideas like Object-Oriented Programming, polymorphism, streams... all things we'll explore later.

Wait... if C++ is just an improved version of C, why do people still use C?

Because not everyone needs the extra features of C++. C is already powerful enough to build operating systems like Linux, macOS, and Windows. Those who don't need the added complexity are just fine sticking with C — even after all these years. See? A language doesn't have to be new to stay relevant.

C is also seen as closer to the machine — lower-level than C++. That makes it better for certain performance-critical tasks. (You can read more about that here)

The Creator of C++

C++ was created by Danish computer scientist Bjarne Stroustrup. Unsatisfied with C's limitations, he added features he felt were missing, and in 1983, C++ was born. Stroustrup is now a professor of computer science at the University of Texas. He's a major figure in the world of programming and definitely worth knowing about.

Many languages have been inspired by C++ since then — Java, for example, or C#, which is kind of like a refined version of C++. This is how it usually goes in tech: parent languages evolve through multiple generations.

C++ might be a bit old now, but it's still improving — and that's a good thing!

The Tools You'll Need

So, what do you need to start programming in C++?

No more guessing — here's the absolute minimum:

  • A text editor to write your C++ code. Technically, something like Notepad on Windows or "vi" on Linux could work. But ideally, you want a smart editor that highlights your code to make it easier to read. That's why no sane developer uses Notepad. ;)
  • A compiler to translate your code into binary.
  • A debugger to help you find and fix mistakes (sadly, nobody's invented an autocorrect for code yet).

Technically, you could go without a debugger... but I know you'll be back in five minutes asking where to find a good one. ^^

From here, you've got two options:

  • Get each of these three tools separately. That's the more complex route, though some Linux users prefer it. I won't go into that here.
  • Use an "all-in-one" program that combines editor, compiler, and debugger. These are called IDEs (Integrated Development Environments).

There are lots of IDEs out there. You might need to try a few before you find one you like. But whichever one you choose, rest assured — you can build anything with it.

I usually recommend Microsoft Visual Studio or its lightweight, free cousin Visual Studio Code for C++ development.

This concludes our chapter. This short intro was meant to give you a feel for programming languages and a broad understanding of how it all works.

To recap:

  • Programs are the core of computing. They tell your computer what to do.
  • To write programs, we use programming languages — there are hundreds out there.
  • C++ is one of the most widely used languages in the world.
  • C++ is based on C and adds lots of powerful new features.
  • C++ is considered a low-level language: it's closer to binary and sometimes complex.
  • C++ is lightning fast, which makes it a favorite for high-performance applications like video games.

If you remember all this, you're already off to a great start for the next chapters!

Learn C Programing for Beginners

Enjoyed this C / C++ course?

If you liked this lesson, you can find the book "Learn C Programing for Beginners" from the same authors, available on SiteRaw, in bookstores and in online libraries in either digital or paperback format. You will find a complete C / C++ workshop with many exclusive bonus chapters.

More information