A complete guidline to dive into programming world with C
When I started my B.Sc in CSE, I had no idea about computers and programming. For me learning programming
was like learning to walk for a baby. Then I started with Python as it was offered as a course from my university.
But to be really honest, I am still an ammature in Python. I had no idea what I was doing and what programming
really meant. I am writing this because, I know many of you are struggling the same like me and I want to give
you a proper roadmap.
This post will cover almost everything you need to start your programming journey. Most importantly, this post
will answer the very basic questions that a very beginner will get confused with.
What is programming? And why it is important?
The answer is simple but has a deeper meaning. Programming is a tool which lets you communicate with a
computer and lets you command the computer. Just like English or Bangla, it is a language of communication.
Programming has become one of the most demanded skill in past few decades as computers and other
technologies have made a great advancement. Almost every sector needs computers or related technologies.
Developing or maintaining these sectors require programming knowledge.
In simple term, programming language is a tool, by which you can command the computer to do any of your
works. Let us understand with an example, if we want to know if a year is leap year or not, we can find the
answer through programming.We can write a program, which will take a year as an input and tell that it is leap
year or not.
It is just a small example. There are many more things you can do with programming, the only limit is your
imagination.
Which programming language should we need to learn?
This question is wrong. There is no programming which can be used to do every work. Every language is related
with a technology. For example, if you want to do website development than you will learn Javascript, if you want
to do mobile application development than you will learn Java, Kotlin or Swift. If you are going for data science
than you should choose python. Here the confusion starts. As a completely beginner we are not aware of any of
these technologies, as a result we cannot choose what to do.
Though every language has different advantages and disadvantages, almost every language work on some
common principle. If we can learn any one language properly, switching to a new language will not be a problem.
Many of the terms in the new language will be same as the first one.
Why C is perfect for beginners?
As I mentioned before, every language has some common features or working principle, if anyone learn C , he can move to any
language. C is easy to read, has less
complex functions, more importantly C is a low level language. Here you have to make every function by
yourself from the scratch, this makes the learning to have a boost. Learning C language and solving some
standard problem with it, will give you the confidence you need.
What is problem solving and how is it linked with programming?
You should be clear by now that, through programming we can command the computer to any task. Everyday we
face different issues or problems which we try to overcome. Let us assume you want to go to school or college and
you want to know which way you can reach there faster : you can go by walk or you can take a rickshaw. Here
finding the faster way is the problem. You are critically thinking and find that choosing rickshaw is the best way.
This is the solution for this problem.
Same way we face many more problems in our daily life which requires critical analysis and complex calculations.
We can use programming to solve these problems. I am writing this for the complete beginners. There are many
things needed for effective problem solving and you can learn them slowly, just trust the process.
To master C language you are not needed to learn many things. There are few primary topics and you can find
them common in other languages as well.
Fundamental topics for C programming :
1. Variables and Data type
2. Input and Output
3. Operators (+,-,*,\,%....)
4. Condition (if else)
5. Loop (for, while, do while)
6. Array (Integer, character)
Advanced topics :
7. Pointers
8. Recursion
I tried to gather some resources that are available online for free.
1. C programming course (bangla): https://youtube.com/playlist?list=PLdl6zXgLsy3zwNjSMiYlOZOr20sykTfgo&si=YghnCVqfOX4EzAPH
2. C Programming course (Hindi)
a. Apna College :
https://youtu.be/irqbmMNs2Bo?si=P6MPqAEwcxHWBdyX
b. Code With Harry:
https://youtube.com/playlist?list=PLu0W_9lII9aiXlHcLx-mDH1Qul38wD3aR&si=OxIJgV-EdZaSIdM1
3. C programming course (English):
4. Websites :
w3school: https://www.w3schools.com/c/index.php
Geesforgeeks : https://www.geeksforgeeks.org/c-programming-language/
javaTpoint : https://www.javatpoint.com/c-programming-language-tutorial
5. Notes by Apna College : https://drive.google.com/drive/folders/1SEfL7Yw3nJfVLToz9MAuAm2_NoCCk1qD
6. Books :
https://drive.google.com/file/d/1tPNUHLNha_CdjIrCRTWTckDnW860nxRi/view?usp=drive_link
https://drive.google.com/file/d/1vpA7ccxES1R7xtOgvkuhfuVlRcdTq0Hz/view?usp=drive_link
7. Website write code : https://www.programiz.com/c-programming/online-compiler/
Informative post
ReplyDelete