Ты сам не поймёшь что сделал херню
Фиг знает. Обычно в разработке и ИТ как раз достаточно легко понять, что ты сделал херню, по сравнению с другими областями. Потому что оно, как правило, не работает, если неправильно сделал. Ну или чуть позже не заработает))
Я неоднократно слышал позицию о том, что в изучении того же программирования самое главное - огромное желание и тупо практика, другими словами, ты должен иметь предрасположенности к задротству, мотивацию и способность провести перед монитором полночи, отлаживая проблему) И я с этим согласен (на себе испытал).
Возможно, у меня несколько искажённое мнение по этому поводу. Я просто столько тысяч часов уже назадротился, что решение обычно приходит интуитивно и почти всегда срабатывает. Поэтому мне достаточно манов и пару ответов со стека почитать, чтобы понять суть и причины проблемы. Кстати, желание понять причину (а не сделать "лишь бы оно работало, я хз как"), я тоже бы отнёс к основным навыкам.
После достаточного количества вводной практики, можно уже основательную теорию почитать, нормальные книги. У меня просто так и было с "Компьютерными сетями" Таненбаума - когда-то давно я начал читать эту книгу тупо из интереса, будучи ещё совсем зелёным)) Интерес не угасал, но в голове задержалось мало чего. Зато через какое-то время судьба меня свела поработать с Wireshark плотненько так, после этого повторное прочтение Таненбаума возымело эффект - у меня сложилась целая картинка. Запоминать было вообще не сложно.
Но это был мой путь. Думаю, что для реально замотивированного человека ХОРОШИЕ курсы - да, действительно, будут очень эффективными. Но тут больше вопрос не в самих курсах, а в наставнике, да. А годного наставника можно найти и на новом месте работы, если повезёт. Мне повезло в своё время два раза)