in reply to Programming and math

Answering 2). If someone have no such training he can allwayas get one. I believe you need to know some theory to be a good programmer. The most value in such knowlege is that only it can give you negative answers - i.e. if something cannot be done.