Знал бы я поточнее твой стиль мышления - ответил бы более точно. Этот ответ - ПРИБЛИЗИТЕЛЬНЫЙ.
1. Способность выучить ЯЗЫК ПРОГРАММИРОВАНИЯ имеет отношение в основном к способности запоминать.
2. Способность научиться мыслить в контексте языков программирования определяется стилем мышления. Лингвист (мой друг, учились вместе) , например, очень легко выучил несколько языков программирования. Но как разработчик - полный ноль. Выше очень простеньких программ не поднялся.
3. По личным наблюдениям: для программиста структурное мышление предпочтительнее образного, абстрактное предпочтительнее, чем конкретное. Способность к определению уровня абстракций для программиста очень важна. Программист имеет дело в объектами, которые нельзя пощупать, увидеть, подрегулировать, ..и т. д. - даже результат их отработки определяется часто не только структурой самих объектов, но и их окружением, которое почти всегда от программиста скрыто.
Понаблюдай внимательно за особенностями своего мышления, и ты сам ответишь на свой вопрос.