Правда ли что программистам навязывают определенные мысли?
1)обязательно надо знать математику алгоритмы и тд(даже если это не используется)
Если хочется выйти за рамки дешевой рабочей силы - да.2)надо работать бесплатно на первых порах
Зависит от навыков самообразования. Кто-то уже в школе делает деньги, а кому то и после университета сложно найти работу.3)создавать open source проекты бесплатно чтобы показать всем свой код
Скорее нет4)всегда думать о работе даже по выходным и тд
Если хочется выйти за рамки дешевой рабочей силы - ДА.UPD:
Реальность такова, что если вы хотите выйти за рамки дешевой рабочей силы - у вас ровно 2 способа это сделать: 
а) вы можете основать собственное дело
b) вы можете в чужом деле вырасти из человека который пишет код, в партнера который решает проблемы бизнеса ( что в конечном счете эквивалентно предыдущему пункту)
И то и другое подразумевает что вы перестаете разделять свою жизнь и работу.
Вы, это и есть то дело, которым Вы занимаетесь. 24/7/365.
И это к слову сказать справедливо для практически любой сферы, не только IT.
1) Да
2) Не обязательно, но в погоне за опытом можно согласиться на разное
3) Не обязательно
4) Нет