C is the mother of all programming languages. It is a general purpose programming lang, you can build anything with it like operating systems, games, software etc.
When a newbie comes into programming, the world looks like a wonderland with so many possibilities. C has a reputation for being the the go-to language of the top folks.
But before you go and pick apart the C language, know that it’s a machine friendly language.
You know that computer works with lots of zeros and ones (0,1)
A machine friendly language is close to those 0s and 1s. These are lower level languages.
On the other side, there are higher level languages, which look more like English and less like machine language.
Here is a small collection of programming languages from difficult to easy:
Hard level: C
The mother of many programming languages. It’s not object oriented. Used to build operating systems. You should start learning it after you have mastered other programming languages.
Medium level: C++, C# (sharp), Java
These are improvements over the original C language. These are still hard for a beginner, I suggest you begin working with them once you have a few years of programming experience.
These are beginner friendly programming languages. You can pick them up easily when you are getting started. You should pick one of them as your first language to learn. Let me share a few details about each:
It’s a beginner friendly general purpose language. It lets you build desktop software, web application, small games and anything you can think of. With python you don’t have to use semi-colons (;)
It’s the most forgiving general purpose lang of this list. Forgiving means, you can miss a syntax but your code will still work. Good for beginners.
Another easy to learn programming language. Used for building interactive web applications/websites. You can use it to create a social network, forum etc.
And yes there is another level for you:
Baby level: Visual programming
If you are an absolute beginner with no computer science background, then it doesn’t hurts to start at baby level. I started my lessons with code.org’s classic game. Not just it’s easy, it teaches you core fundamentals of programming like loops, functions, conditions etc.
The Beginner Programmers Dilemma:
Often times the newbie programmer will have a hard time figuring out which language to choose. I suggest you pick any beginner friendly (high level) language and take it from there.
You don’t get results by learning a language, you get it by building something. You will find that you have to deal with bunch of languages and frameworks to build a single project.
At the end of the day, what you build matters. Top programmers know a dozen of languages, and specialize in 1 or 2 of them. So stop getting into the language wars and pick one up.
Hey! Don’t be disheartened about my advice. Remember why you wanted to learn programming in the first place, you wanted to build a cool app, a game, a website, a social network, artificial intelligence, or work with big data. You will build it eventually, but take it slow.