Programming is a three-way relationship between a programmer, some source code, and the computer it's meant to run on, but computers are such famously inflexible interpreters of instructions that it's extraordinarily difficult to write out a set of instructions that the computer knows how to execute, and that's if one person is writing it.