Earlier quoted context omitted.
I don't believe for a second it requires "natural aptitude" to program. The problem is any programming curriculum starts with a text editor open. If a developer-to-be doesn't understand the framing context of what they are doing they are being dropped in a lake with no sense of direction. Its why all the "naturals" started as geeks who played with computers from a young age. You learned about the environment you woul…
We convinced our parents to buy a computer because it would help our education when all we really wanted one for was playing computer games. Joke was on us though, because playing computer games at the time usually involved a lot of putzing around and figuring out how stuff worked, ultimately teaching us marketable skills.
In my case it was a natural progression: "videogames are great!" -> "I have an idea for even better videogame!" -> "how do I make one?" -> "can I tweak this one into being a bit more the way I like it?" -> tinkering around data files -> "I really want to make my own game" -> picking up a programming book at 13 -> a programming career.