My personal hypothesis (if I may) is that programming is hard for a majority (>50%) of people. It starts with reading: Reading comprehension is hard for many people. And reading code is way harder than reading text, which means programming can only be easy for those who read well. And that's just the start. You also have to have a sense of logical thinking and finding solutions. Many people have trouble with that as well. So just from these two aspects (reading + logical thinking) I'd already say that programming is indeed hard. At least if we use the general population as reference.