How to dive into programming?

Programming helps you to build something from nothing - Mayukh Datta

It's great to have you here. It looks like you want to learn how to write code and want to solve problems with the help of computational power. But before stepping into the world of programming, I advise you to have a plan or say a "step-by-step procedure" that you must follow to go and grow further. Actually, to solve any kind of problem you must follow a proper procedure to achieve the desired output. And, guess what? The definition of algorithm says so too, "An algorithm is a step-by-step procedure to solve a computational problem".

Green text on a black background seduces Computer Science students a lot!

I too believe Computer Science is for everyone and hence, I wrote this post in such a manner that anyone finds it to be helpful.

What the hell is all this?

What does programming mean?

In very simple terms, programming is the way by which humans instruct a computer to do a specific task. That specific task can be to add up two numbers, read a data from a node or to shutdown a computer. Programming helps you to communicate with a computer and the language that you do it in is said to be a programming language. Programming includes writing algorithms in any programming language (such as C, Java, Python, Perl etc.) so that a computer can interpret, understand and then perform the instructed task.

The basic concept behind the working of a computer.

Why do we need to learn programming?

Why should we put hefty amount of stress on our grey matter in order to learn programming?
To start something new you need inspiration to begin. Similarly, to learn something new you need to know first how your knowledge can help you in the real world because knowledge is useless if it's not implemented.

Above are a few slides from the presentation I prepared on "Why to program a computer?" for a seminar that I gave in my college, Saroj Mohan Institute of Technology, for the first time. I’ve tried to present a simple example of how learning to program a computer can help us.

The game you play, the operating system you have, the photo-editing app you use, the social media platform you live in, the search engine you query, the websites you surf are all possible only because of those humans who know how to program a computer.

“Becoming a good programmer” Algorithm:-

I believe the vital ingredients of programming are intuition, creativity, logical and analytical thinking.

If you don’t even know what a CPU (Central Processing Unit) is, how ALU (Arithmetic Logic Unit) works, how do browsers communicate with servers through internet to show us the web pages then you must make yourself aware of all these things. You should know about the basics of computer hardware and how they work collaboratively with softwares. Here is a little guide that I think would be helpful for you.
  • Learn about computer hardware and architecture, know how computer handles and processes data, how data is transmitted over internet and such basic concepts. Must watch this.
  • After spending time with basics of computer now you shall begin to learn a programming language. I would recommend to learn C first. Programming in C has its own sweet benefits. You can better understand the mechanisms behind your programs.
  • Many people think that learning multiple programming languages will make them a great programmer. Absolutely, NOT. A programming language is just a tool to communicate with computers. More important matters lie within, they are algorithms and concept of data structures.
  • You must have a very strong knowledge of algorithms and data structures to be a good programmer.
  • Nothing can beat “Practice”. Practice a lot and be patient.
  • Take practice sessions and try to participate in programming contests. Do check these amazing places: GeeksforGeeks, HackerRank, CodeChef, TopCoderLeetCodeHackerEarth.
  • Build your own projects. Also contributing to open source community is a good idea to gain great experience. Use Github to host your projects.
  • Love errors! More the error is, more insights you get.
  • Met with an issue or bug? You can ask for help in forums such as Stack Overflow or Quora. Their community is rich with developers and programmers.

In music, one can play the melody of a song on harmonium, guitar, flute or on any other musical instrument. What is important here is knowing the melody or notes of the song. Melody is like algorithm in programming and musical instruments are like programming languages. If you know how to sort a list of numbers in order (by any sorting algorithm) then you can write it in whatever programming language you wish.

Programming needs logic and requires mathematics. So, always try to form and find logic. Remember without logic, mathematics and science, nothing happens (literally nothing!).

Watch this great video to have a vast exposure to Computer Science:

Hope this article will help you to be a better programmer. 

If you have any queries or suggestions that you think should be added then kindly comment below. And, don’t forget to share this post on your social circles. Sharing will help others. Remember only 0.2%-0.3% of world’s population know computer programming. 

Happy reading! Happy programming!

More stuff:


Post a Comment