I'm interested in learning how to program. Partially because I would like to gain a fuller understanding of how things I use every day work and partially because I’m fed up of being constrained by ...