Copyright Weberica.net.
It may look a bit complex, but every line of code has its clear purpose. I guess that you are familiar with the recipes that help people bake a cake. Things like "ad floor, add water, mix well, add sugar", etc. Similarly, a computer uses a precise, step-by-step recipe to execute a specific task.

Computers aren't able to fully understand natural language yet. This means that they aren't able to create applications on their own. There has been some progress with point-and-click application makers recently, but we are probably a few decades away from the moment when we will use voice-based instructions to create highly flexible, useful software applications.

To run an application, computers need source code and a compiler or interpreter. Programmers write the source code, a series of instructions that tell computers what they need to do, and the compiler turns those instructions into a binary application, which can be run by computers. Some programming languages use an interpreter, a piece of software that executes the source code directly, without compiling it.

Your computer understands machine code, but its "internal" programming language is way too difficult for humans. Not only that, but it would be impossible to run machine code on a different type of computer, because the CPU architecture varies from one computer to the other.

Modern programming languages (the "C" language, for example) provide a nicer user interface, allowing us to write applications using a language that similar with English, and is much easier to understand than machine code. Here's a simple C programming code snippet.

#include <stdio.h>

int main()
  printf("Hello World!\n");
  return 0;

There are dozens of different, low-level and high-level programming languages. Low-level code is closer to machine code, being faster, but harder to understand by humans. High-level code is closer to natural language, and thus easier to learn.

It's true that high-level programming languages create applications that run a bit slower, but the difference has become less noticeable during the last few years, because computers have gotten faster, and compilers have improved their performance as well.

Often times, people compare programming languages by examining the source code that is necessary to display a simple "Hello World!" message on the screen.

I have already posted the C code for this application above. Here's another code snippet that shows how you can do the same thing in Java.

public class HelloWorld
  public static void main(string[] args)
    System.out.println("Hello world!");

As you can see, C appears to be a more efficient programming language, and that is a correct observation. In fact, C has the flexibility and power of a low-level programming language, and yet it is friendly enough to be learned by beginners to programming.

So, how to get started with computer programming? Try to think at an application that would make your life easier or fun. That's what you want to start with. Don't start with a very complex project, though.

Let's pretend that you are a student who has got lots of great PS3 games. (On a side note, I can totally understand you, because I still play games myself). Other students borrow games from you on a regular basis, but some of them "forget" to return them. You could build a "PS3 Games DB" database application, which stores the names of the people who have borrowed your games, and the date when they have returned them.

Now that you know what your application is supposed to do, it's time to ensure that your code will solve the problem for good. Not only that, but your application should also be easy to use and expand.

Your "PS3 Games DB" application should have a button that allows you to add new games, for example. How else will you be able to add your game titles to it?

It should also include a few text boxes where you can input the borrower's name, the date when your game was returned, etc. The application should save the data whenever you exit the program, and reload it automatically when you start it.

There is no need to reinvent the wheel if you can use other people's work, of course. So, before starting to write the code for an application, search the web - somebody else may have already coded what you want.

But let's assume that there is a real need for your application. Begin the process by drawing its user interface on a piece of paper, and then create a new drawing for each step of the process, after each button press. This way you will be able to figure out the input fields, buttons, and so on that are needed for your project.

It's a great time to be a programmer, because you will be able to find 100% free source code on the Internet for almost any application you can think of. You should be aware that some of that code won't have the highest quality, though.
So, it is best to try and do things on your own, and then, if you run into trouble, ask questions in one of the many friendly programming forums on the web.
An introduction to computer programming

If you are reading this article, you are probably interested in learning how to program. To get started, you need to know how to operate a computer. Things like opening an application, closing it, shutting down your computer, and so on, should be familiar to you.

A program consists of several instructions that teach a computer how to perform a desired, specific task. Here's a part of the code that is utilized in a real-life application.