Beginners Guide Programming – A simplistic approach towards self-learning
One of the most frequent questions I get asked by my non-programmer friends is ‘How would you recommend a total beginner to start with programming’.
This is particularly a tough question because, we all are different and have different ways of learning. But I can tell you how I did it.
Disclaimer: I know I’m not the best programmer/coder there is, but I learned to code on my own. So, this is to all you guys who are interested in self-learning.
In this Beginners Guide Programming I will be trying to quickly clear a few misconceptions and introduce a some habits that can help you become an excellent programmer.
This technique is not confined for the art of coding, it serves as an excellent case study to learn any technical skill.
I won’t be talking much about any particular programming language here. Just the art of computer programming in whole.
I hope this will inspire a few to start coding; it’s a very interesting hobby and who knows it may one day earn you a living.
First things first:
Don’t Be Afraid of the Syntax
A major reason many people are scared off from trying to learn to code is well… the syntax. Syntax is the grammar for any programming language, there are a set of rules to how it is written. You don’t ask questions here, it is like that because of the way it is designed.
But that apart, the basic concept remains the same irrespective of the language. Syntax is just a way to express those ideas in the given programming language.
As an example, a commonly used concept in programming is a loop. A loop does exactly what it says; it loops through a set of instruction until a certain condition is met with. Once you understand how loops works and different types of loops then all that you need to do is google, “How do I use loop in <Insert your programming language here>” and you’ll get thousands of examples right away.
I personally think syntax are overrated. People whom I meet at work worry too much about trying out new languages, the reason? Syntax! And, this fear is being monetized by training center who do nothing more than teaching the syntax, I don’t think they even teach the basic concepts of programming. It’s just a waste of time and money.
Online courses at Codecademy are very good when it comes learning syntaxes and to some extend also helps in understanding the basic concepts.
Start with a Tutorial Book
The best place to start is always with a careful walkthrough. For programming, I like O’Reilly or Balguruswamy
as a guide to learn the core concepts of any language.They are very well written keeping in mind all the different readers that may use them. There are no assumptions made at programming skills that you have, so a great way to start.
If you’re learning your first language, you may want to take an intro class on programming which can teach the basic concepts. Semantics are more important than syntax, so understanding the basic ideas is essential, while memorizing the exact spelling of a command usually isn’t (if you’re wrong, you’ll get an error and a quick Google search will inform you of your mistake).
Take up an online course
If you’re learning your first language then, taking an online course will help a lot.
Here’s some free courses which cover the basics:
- Udacity’s Intro to programming – This one is my personal favorite. I would actually recommend this site to learn any new language or skill. High quality content and most of them are freely available for all.
- Udemy’s Programming Classes – This comes second in my preference, for not many courses are free.
- Google’s Code Academy – A detailed intro to Python, one of my favorite languages.
The goal in the initial phase should be to get something working. Like, creating a basic hello world app will teach you all that you need to set up the environment. Once you get that started, it usually isn’t hard to modify these boiler plates to make something of your own.
As mentioned above, sites like Codecademy helps in learning the syntax and getting you started with a language.
Which Language Should You Start With?
There is no specific language that you should start with. Some say its:- C or C++, but I started with python, a much more abstract language which hides a lot of complexities from the user(programmer) and lets them focus on building the logic.
For first languages, my personal suggestion is to avoid C++ and C, because they tend to be a little less forgiving than Python and deal with a lot of code. I would also avoid web languages like PHP because they can be tricky to set up and require you to learn more at once (HTML, SQL).
The first language you should use, should be the one you want to use.
So overrule my suggestions if you have something else is mind.
Learning by Project
This by far has been my best way to learn a new language. Create something(anything that interest you) could be something as trivial as ‘hello world’ or ‘a basic calculator’. Just make!
You can also download some done projects from the net and try to read through them. My friend used to always tell me ‘Break it to make it’, I feel the urge to tell you the same.
Fiddling around is the only way to truly learn.
The things to keep in mind when trying to learn by doing a project:-
- It should be short,
- It should force you to learn something new all the time,
- It should be fun!
Summarizing the post:-
- Don’t fret too much about the syntax
- Start with a tutorial book, learn the concepts
- Take up an online course
- Learn by doing projects
Programming has to be one of the best skills I’ve learned, not only because it’s fun and rewarding, but because it teaches a lot of life lessons as well. It taught me how to build things, organize projects and set goals for myself. And, as computers become more integrated into our lives, it’s nice to be able to communicate with them.
And, always remember ‘Break it to make it!’ 🙂
Let me know your views and suggestions on this article – The Beginners Guide Programming in the comment section below!