+Programming

Themes and techniques

For distributed computing, computer networks, software engineering, see elsewhere.

Also of interest -

Architecture considers how code may be organized.

The overall picture

Programming is a matter of unambiguously telling the computer what to do, in a language it understands.

Analogies

Programming is analogous to wiring a complicated electronic circuit: Joining wires of various modules is the right way.

Programming is analogous to designing a pipeline or circuit on the computer (as in chip design or in designers like rational rose, or in rapidminer or in lego robotics).