Software development doesn't need much English foundation. In fact, those codes have nothing to do with English. They are just some keywords specified in the programming language. Every programming language has keywords, but the number is small, and it is even less used empirically. For example, in C language, there are only 20 commonly used keywords, and they are all easy to remember. Therefore, the quality of English foundation has little to do with learning software development.
Mathematics and English are the basis of computer;
English is a command and connection language, and pays attention to grammar. Of course, it is impossible to program well if the sentences are not fluent or there are language diseases. Mathematics is the language of logic and operation, and it is an indispensable tool for all scientific disciplines, involving the basic principles of computer programming principles. If you want to further study and develop, learning two languages is essential. Learning English will help you understand and master the programming language, and mathematics (especially discrete mathematics) will let you know the computer principle, programming foundation and so on in essence. Of course, it will be better to learn English and math well.