Английский нужен программисту не для программирования, а для чтения технической информации или документации, большинство книг и документаций выходят в основном на английском языке, а русскоязычные появляются намного позже, а к этому времени русскоязычная информация может устареть в отличии от оригинальной. Даже без знаний английского языка можно программировать успешно, выучить языковые конструкции, не так то сложно. Чтобы успешно программировать нужно хорошо знать математику и иметь логическое мышление, необязательно знать высшую достаточно школьной математики. Если ты не знаешь даже школьную математику, то даже простейшие задачи по программированию для тебя будет не по силу, если ты не можешь выполнить простую элементарную задачу, то что говорить о других?