Anyone, it depends on YOU
Let me preface this by saying that I am a firm believer that anyone can do anything if they put their mind to it. I have learned many skills I never thought would be possible, and I did it just because I believed I could learn it. And that is the key, believing you can do it.
It will be harder for some
There are some skills that are needed to be an effective programmer. Not all people inherently have those skills. You need to be able to think logically and be a problem solver. The good news is, those are skills that can be learned!