In its most basic, you can think of programming as providing directions to a computer to do something you want it to do – that may sound very similar to the way you run your desktop computer. Simplistically, the only difference between what you’re doing now as a computer user and what you could do as a computer programmer is that the directions are stored somewhere so that they may be used over and over. As a matter of fact, if you’ve used macros in a software application like a word processor or spreadsheet (or countless other programs which are macro-enabled) you’ve done computer programming of some type.
Programs can be as straightforward as a set of instructions stored in a text document for doing some mundane job, like making copies of all of the computer files in a folder, or as complicated as something like a word processor, or the operating system your computer uses which could require a huge number of lines of code. We will need to see that computers, which are normally just pieces of metal, plastic, silicon, and other substances stuck together in a manner that enables them to do some awesome things that look like thinking, can not actually think in any respect. However, what they could do exceptionally well is follow directions. So what are these directions, anyhow? In the level that a computer knows, these need to be very exact, very detailed, and very complete step-by-step instructions, and they need to be in a form which the processor and other areas of the computer can understand – and that’s as little electric pulses which humans are not capable of emitting (at least at the time).
In a way, you can think about a computer program like a recipe: a set of directions that can be followed to create a result. In the event of a recipe, the directions are used by a human and may, therefore, be a little descriptive, leaving out a few of the particulars. By way of instance, if a recipe education is to “pour the mix to a blender and whip until frothy”, it’s assuming that the human knows what a blender is, and where it is, and how to put it up, and how to use it and what pour means, and what frothy means, etc. A computer can not do this – it’s no clue what anything means, except for some very simple instructions. So the way we do this is to provide the human a way to write instructions that could then be translated into something the computer can understand.
What a programming language enables us to do would be to write instructions to your computer in a more or less human-readable form that can then be translated into something the computer can use. The human-readable instructions are generally called (you guessed it) – code! Each line of human-readable code translates into tens of thousands of detailed computer directions. A particular program (or set of programs) is used to perform this translation – every computer language has its own translators, which can be known as compilers or interpreters. When the translation is completed the result is stored in some form such as a file or set of files (or in computer memory in certain cases), and every time the program is run, the computer will follow the directions and (ideally) the application will do whatever it is supposed to do.
Even though it’s often imagined that you must be a genius to have the ability to write useful software, nearly anyone who’s computer savvy and has an interest in becoming a power user can learn how to program. Most software is written by ordinary people with technical knowledge and skills. Mastering computer programming may be a lifelong pursuit, but collecting enough knowledge and skill in order to do useful things is not out of reach for anybody who knows how to use a computer and is ready to dedicate a little time… or perhaps lots of time, but still – it is not out of reach.