プログラミングはとてもハードルが高く、理系の人が持っている高度な論理的思考力が必要だと思っていました。始めて間もない頃は確かに躓く場面もありましたが、文系の大学に通っていた自分でも、今では一緒に働いているプログラマーと遜色ないレベルにはなれました。
もちろん理系っぽい要素は少なからずあります。ですが、本当に必要なのは「適切な処理を選べる力」と「根気」だな、といつも思っています。これらの2つは、特別な能力がなくても誰にでも会得できると私は思います。
前者は、知識と経験、場数を重ねることで少しずつですが身についていきます。この構成ならこう、このコードを使うときは…など、色々触っているうちに自分なりの“流れ”のようなものが見えてくるようになります。
後者は何事にも必要ですが、ことプログラミングにおいては本当に大事です。高度な作業であることには変わりないのですが、プログラミングは単純な作業が大部分を占める場面も少なくはないです。
コードの記述ミスなどの間違いを探すときなんかは、思い当たる箇所を1つずつ徹底的に潰していく作業がほとんどなので、それこそ根気がない人はどうしても挫けてしまいます。