programmatic problematic!

Programming

In essence, programming is using a pre-defined language to communicate a set of instructions to a programmable system. This set of instructions is in general related to the processing of inputs and outputs in relations to the system or to the running of algorithms for the processing of data.

Programming a Micro-controller

A micro-controller processes inputs and outputs thanks to an uploaded programme. In general a micro-controller 'reads' your programme in the order that you wrote it. Starting from the top and working its way down line by line, executing instructions as they are 'read'.

Easiest way to lear about programming a micro-controller is to use an Arduino board and follow the Arduino tutorials.

Programming a phone application

A phone application is a very specific type of software, depending on the platform you are using, you will rely on a SDK (Software Development Kit) with a comprehensive library of routines and functions and with specifications regarding the interfaces, the I/O (inputs Outputs) and other system related features.

If you want to develop phone applications on the Android OS, I suggest you visit the Android Developer page. For iOS you can enroll with the Apple Developer Programme. If you want to look at Windows mobiles, there is a development centre.

Programming a computer

A computer program is written to perform some tasks on a computer, this being in the widest range of applications - games, simulations, visualisations, calculations, applications etc...

Programming Style

Programming is producing some code, it is about writing some text, as such I believe prose and style apply here as well.
As with a report, it is important to be clear, unambiguous, and succinct. The best programmes are those that can be read by anybody and understood immediatly. Furthermore, your programme should be at least partially reusable. Make sure to rely on built-in routines and libraries of functions.

I've come up with a set of golden rules for good programming style:

Rule #1

Never ever start programming straight away. Always design your programme with flowcharts and then pseudocode.

Rule #2

Always use names for functions, variables and parameters that are self-explanatory.

Rule #3

Minimise the scope (the range of validity within your programme) of your variables and functions.

Rule #4

Be generous with your comments and explanations in your code.