Tuesday, 9 January 2018

Learn to Code as a Beginner(Coding is for Great Minds!)

Coding is fun! Have you heard this expression sometimes? Another one is, 'coding is for the noble-minded' or 'coding is for the great minds' or 'coding is for the elites' or 'programmers are problem-solvers'. For me I have heard it several times and it became clearer to me as I took the first step.

In this lesson, I would teach you everything you need to know to get a head-start in your coding/programming effort.

We would cover the following:
  1. Have a Clear objective
  2. What you need to start
  3. Choose a programming language
  4. Daily routine of a Programmer
  5. Qualities of a Good Coder/Programmer
 Let's begin with the first one.

Step 1: Have a Clear Objective
If you really want to become a good programmer by this year, 2018, then you are in the right place, you surely will reach this goal! But if you are just reading just because you have a little time, then I'm sorry, this is not for you.
The reason is that, before you can really become a good programmer(i would use programming and coding interchangeably in this lesson), then you need to have a clear objective of when and why you need to apply it. For example, you can tell yourself that by the end of this year, you should have build one simple app or have design two websites or things like that.
The focus is to have a time frame of between six months to one year. Don't believe the cheap fib that you can learn to code in two weeks or days. I could tell you from my experience that it takes some effort, not that it is difficult but with the right effort applied regularly, you can reach your objective.

Step 2: What You Need to Start
The good news is that, what you need to become a good programmer is easily affordable.
  • A good computer. Maybe a laptop or desktop but preferably a laptop. RAM size should be a minimum of 2GB
  • Notepad++. You can download it for free from this link
  • Netbeans IDE. You can download it for free from this link
  • Mozilla Firefox. This is the browser for programmers and that is what many don't know. It has feature that could help programmer examine website codes, do a little hacking (ethical!) and even write and run some codes
I would recommend you have just this tools as a beginner. The reason is that the more the tools you have, the more complicated the learning process becomes.

Step 3: Choose a Programming Language
This step is crucial to determining if you will continue learning or not. Choose the right one and the learning time reduces; choose the wrong one and the learning takes indefinite amount of time and you abandon it halfway. So let me guide you in making this choice.
Now the applications are developed to run on the web and so you need a language that can help you develop apps for the web. What application is used for the web?
  • HTML. So this is the first one(though it is called a Markup Language). HTML stands for Hypermedia Markup Language and is used to develop application for the web.
  • Java. This is the programming language for the web, so you need it.

The catch: If you have absolutely no technical knowledge, say you are coming from a totally  different field, maybe catering (for example) or a similar background, then the programming language, you need to learn in addition to HTML is Visual Basic. The reason is that with Visual Basic, you could instantly see and appreciate the result of your codes as you go along.

Step 4: Daily Routine of a Programmer
Coding I must tell you is a profession of the elites! So it requires some measure of daily activities. And your daily routine is a very simple one: either write a new code or check a previously written code. What this means, is that you could write some codes during the day or work on a coding task. But if you don't do this, you could also spend some minutes going through lines of code you have previously written even if it is very few minutes. That should be your routine.

Step 5: Qualities of a Good Programmer
Remember that your objective to learn to code is to become a programmer or maybe an app developer or even a mobile app developer. That means that you will eventually be a problem solver. So note the following attributes, some of which you may have, others you may need to develop.
  • Foresight: this means trying to foresee the outcome of events
  • Insight: this means trying to see things from different views. Don't have a narrow view about things
  • Persistence: trying to get to a logical end of situations
  • Laziness: yes! programmers a lazy. They don't like spending much time doing routine things. They always try to find a quicker way of doing things.
Can you think of a few more?
Feel free to share it. To the right of this page, you will see the caption 'You Opinion Matters', just mention your ideas there and click on send. It would be used as comment for this article. And if you have great ideas, you will be contacted by the sponsors of this lesson.

Final Notes
So my friend, I would like to assure you that you can do so much more with a knowledge of programing. So I wish you the best as you continue your path to become a good programmer.