9 Computer science concepts one must know before starting to learn programming
By: Manas Sinha
Tags: Beginners Guide, Coding, Programming, Computer Science, Learning To Code

2. WHAT IS COMPILER AND INTERPRETER?

After we write our desired instructions for the machine in any programming language that needs to be translated to machine-readable form. That is done by compiler/interpreter.

Compiler: It translates all the instructions written at once before the program runs.

Interpreter: Translates the program one statement at a time.

3. WHAT IS AN IDE?

Now you know what a programming language is and what happens after you write your code. But where are you going to write your code?

IDE stands for an integrated development environment. It is software that consists of a text editor(where you can write the code), compilers, debuggers, etc. Alternatively, you can do it all on your own, use a standalone text-editor ex: notepad, sublime, and compile it to generate a binary file and finally run it, obviously after you get familiar to it.

Using an IDE can save a lot of time not just because it does all that for you but it also has tons of other cool features like auto-complete etc that can make your life a lot easier.

4. CAREERS IN PROGRAMMING.

Let’s look at the different areas one can work in:

a. Web Dev

b. Android app dev

c. ios app dev

d. Machine learning & AI

e. Data science

f. Game develpment

g. Network and security

many more…

5. CHOOSING A LANGUAGE.

you know the basics, you might also have a preferred area you want to work in. But.. and this one is a big one before you jump into any of the above-mentioned fields you need to develop the problem-solving skills using any one of the programming languages. After you become comfortable with the language then you go on to learn data structures and algorithms and alongside that, you can start learning about the field you are interested in. Becoming comfortable in using a language is important.

So which language you start with? c/c++, Java, Python are the most preferred ones to start. Among the three Python is the easiest. But I would recommend starting with C/C++ or Java for one simple reason. The fact that Python is easy to learn may hurt you when you try to learn another language.

To read more why you should go for C/C++ first I recommend reading this article by educative

6. GOOGLING.

I know you all are very familiar with this term but I want to emphasize this one because Google is the best friend of a programmer. It doesn’t matter you have just started coding or you have been doing it for years, you are going to encounter errors that you don’t understand. Being able to convert the error to searchable terms is an important skill and as a programmer, you cannot live without it. So whenever you see an error you don’t understand or you wanna do something and have no idea how to do it, do not run to a teacher or a senior google it first and I would say in the starting days take it as a challenge to find the answer on google because u r probably not going to face anything no one has seen before so you will find it for sure. In this way, you will develop the attitude of not giving up, being more patient, and be better at googling stuff.

7. WHAT IS DEBUGGING.

It is the process of identifying and removing errors from computer hardware or software. It is nothing fancy, may it be software or hardware (I’m an electronics guy so I know :)) , things might not work as u want them to be. Sometimes your code will run without any error but it is not doing what you intended it to do, that’s commonly referred to as bug in software development, and the process of removing is debugging. It can be done by just going through the code and trying to figure out what’s going on(referred to as dry run) or using specialized tools called a debugger.

8. HELPFUL RESOURCES

Stack Overflow is a website where programmers can get free help with their code. If you get stuck and want to ask a question, search for it first. If you can’t find your question, create an account, and post the question yourself!

There are a ton of educational sites where you can find programming tutorials. Some of my favorites are Codecademy, Udemy, Udacity, Team Treehouse, and Khan Academy.