5 - дело в мотивации. Когда эти знания могли изменить мою жизнь, - у меня не было компа и источников инфы. А сейчас не будет возможности выучить до такого уровня, чтобы это всерьез повлияло на мою жизнь. Подростком быть круто, - можно выучить все молниеносно к нужному моменту.
Самому дома проще и эффективнее, поскольку: 1. Каждый вопрос можно досконально изучать, углубляясь в детали. А на курсах - понял, не понял - идем дальше ) 2. Каждый вопрос можно одновременно изучать по нескольким источникам, что даст сразу несколько объяснений с разных точек зрения.
Все сами "учат", а дармовых курсов, которые дают лишь направление (методологию) сейчас в достатке. Тут дело не в каких-то скрытых секретах, как у шаолиньских монахов, всё на виду, всё можно пощупать самостоятельно, спросить, найти... Другое дело, как доказать потенциальному работодателю свой скилл. Тут засада конкретная
Если написание программ твое любимое занятие, и ты готов этим заниматься сутками, то выучить можно быстро, если занимаясь смотришь на часы в ожидании, когда время для занятий кончится, то учиться можно бесконечно долго.