2. If the later goal is to be an algorithm designer, you must have a good mathematical foundation. Better mathematical knowledge is needed from the aspects of algorithm design, calculation reduction and system memory occupation reduction, and different algorithm flows will be designed according to different requirements.
To sum up, learning computer programming doesn't need to be proficient in mathematics from the beginning. If you want to develop further, you should consider learning mathematics while learning programming. The starting point of programming is still relatively low.