Some people take to programming very readily, whilst others find it more challenging. But what does programming involve? Here I speculate on aspects of programming as a cognitive activity Consider a hypothetical programmer; let’s call him Algy. Algy is tasked with writing an application that has to connect to a…