What is Programming ...why do you need it?
Why You Should Learn to Program?
We should start my saying that learning any programming language is important and particularly any textual programming language.
Why?, because computers are everywhere and where there are computers there are computer programs or software. Many industries outside of IT use computer programming. To list a few:
- medicine and health care
- film making
Not every job in these industries requires you to program, and not every job in the future will. But learning computer programing helps you develop your computational thinking.
Computational thinking is an approach to problem solving. It is a way to break down large and complex problems into smaller problems that you can solve more easily. You can assemble a sequence of these smaller problems to solve the larger more complex one.
Computational thinking allows you build models of the world with the right level of detail looking only at the most important parts of the problem. This is called abstraction. It is a new way to think about the world.
Computational thinking, combines ideas from mathematics and logic, to form an algorithm. An algorithm is a list of precise steps that must be followed in sequence to solve a problem.
Computer programmers do this all the time. You might one day become a computer programmer, but even if you don’t, computational thinking will still help you. You’ll be able to break any problem down into smaller problems that are more easily solved. Baby steps!
Now, you know why you should learn the program ,the next question to ask is “Just what is a computer?”
What is a Computer?
A computer is probably not what you think it is! It is not the thing you are likely sitting in front of right now reading this. So it is not a laptop, or an iPad or a smart phone. Hmmm, if a computer is not any of these things, just what is it?
A computer is actually a person! So you are a computer. The word “computer” originally meant a person who computes. They would carry out a fixed set of instructions in an ordered sequence. The instructions they carried out were mathematical calculations, or sums. This meaning of the word “computer” first appeared over 400 years ago. Computers are actually a very old idea.
You might be wondering why would anyone do this? Well the types of calculations that these “computers” performed were important to early science and engineering. Interestingly, most of the early “computers” were women.
What you now think of a computer is more properly a stored program digital computer. These have only been around for 70 years so.
What is Programming?
So now you know what a computer is, what is programing?
Programming is a problem solving activity. You start with a problem, let’s say “How do I make a cup of coffee?” and a defined or expected outcome - if the problem was solved correctly. So in this case, a freshly brewed hot cup of coffee.
Now you need to workout the ordered sequence of actions that you need to take to make me a cup of coffee. Working out both the actions and their sequence is programming.
What is Computer Programming?
Computer programming is just like programming. It is still a problem solving activity. The difference is how you express the steps and who or really what carries out the steps.
Think about making a cup of coffee again and the steps involved. Two of these steps might be:
- Open the coffee jar
- Fill kettle
Now think about the different ways you could describe these steps to another person. You could:
- Talk to them and ask them to do exactly what you say
- Write the instructions down and ask them to read them
- Draw a picture for each step and ask them to follow the pictures
- Make a video and show it to them
The difference between this and computer programming is that you are telling the computer what to do, not a person. You also have to express the steps in a way that a computer can understand using a programming language.
And this is pretty cool, because when you get the steps right, the computer will do all the hard work for you, and you will sit back and…umm…have a coffee.