Но в России профессиональных программистов практически не готовят (по крайней мере не готовили 10 лет назад).
Готовят и готовили. Просто не на физических и не на математических факультетах. Это не их задача.
Может и готовили где-то. Но их, видимо, "где готовили, там и употребляли".
Я проработал в России программистом очень много лет. За это время моими коллегами были в основном выпускники мехматов, отделений прикладной математики инженерных вузов (типа МИИТа или МИНХ), экономической кибернетики, АСУ. Некоторое количество - из переквалифицировавшихся инженеров. Был даже один историк.
В США первые 8 лет (я занимался industrial programming - типа АСУТП) коллеги были в основном после Electrical Engineering. Сейчас, в чисто софтверной фирме - после Computer Science.