We, Humans, use a language to communicate with others. A language that another human understands. Computers get fed with instructions which they have to execute but these instructions belong to a language that a computer understands, Hence Programming is a medium of communication between a computer and its user. Programming allows a user to input a set of instructions that belongs to the language that a computer understands in turn the computer executes the instructions to produce some useful results. Example of programming languages are C#, Java, Python, PHP.
This article has been written not to explain programming concepts but to give beginners a heads up when they start new with Programming because many beginners think that they can learn programming in a breeze which is awfully untrue.
1 – Building Curiosity
For me a curious mind is able to excel more at programming because a curious mind is always experimenting and tinkering with code, trying out new stuff all the time. This is exactly what one needs in order to understand and learn programming, being curious allows you to explore more and you get to understand more easily since you are doing it practically.
2 – Practical Approach
Practice, Practice AND PRACTICE! Programming requires constant practice , you don’t get to learn programming just by coding few lines and take off for a week. By the time you’ll come back, you’ll have absolutely no idea wtf did you code, that’s really true. I had a semester project to build a Course Management System from scratch using Laravel, now I knew PHP but It took time for me to get familiar with Laravel since I was pretty new to PHP frameworks, all went fine and I did 50% of my project, my finals were arriving so I had to take a leave from programming and start preparing my theoretical subjects. By the time my finals ended, when I opened Sublime Text to continue working on my project, I totally forgot everything regarding Laravel hence I had to go through the documents again.
So what I learned was you can’t give your self a big break from programming, you have to practice it, not 24/7, but from time to time. It’s good to keep a Pocket Reference with you all the time so that if you forget something, you can instantly look it up.
3 – Conceptual Learning, Say no to Rote
During m course of studies, I’ve seen fairly major quantity of students who are pretty good at learning via rote hence they memorize all the codes. Firstly, what’s the point of doing that if you don’t know what’s the code actually does. Secondly, this is really a bad practice because you don’t know what a particular line of code does, you are limited to the fact that when some one asks you to write a code for Merge Sort, you are able to type it exactly as you remember but when someone asks you now that you’ve written the code, care to explain what is happening in it? Another thing is that when you are learning with rote, if you forget one single step, It’s a dead end! You will try to trace the code in order to remember the step but since you have no idea what the particular line of code does, you want be able to map the concept in your mind.
Learning programming conceptually not only helps in interviews ALOT but also helps you implement the logic of your program faster since you’ve already understood how things work. When you code your program you actually understand it’s flow and are able to detect flaws quickly, even think up of adjustments too unlike those who learn by rote are just sitting ducks (No Offense).
4 – Starters Project
One of the best things to get you started are Projects. While on a beginner level, you don’t have much idea about programming yet you are learning just the basics like Conditionals etc. When you are done with the beginner level i.e you have a firm understanding of the basic concepts, it’s time for you to decide a project. Now when you decide the project, it doesn’t need to be a new type of Browser or a Gaming Engine, instead you can start off with easy one’s. When you learn something new or you have an idea about some new feature, you can add it to your project to make it more awesome and maybe it can be of use in your daily life such as a Scheduler or a To Do List.
The advantage of doing a starting project is that once you’ve completed it by yourself, you’ll get more confident in learning further and do more projects hence it’s a good thing to keep yourself engaged in some kind of project.
That’s it for this article folks, hope this helps. I might update this article sooner or later with some more tips and tricks so stay tuned 🙂