21 день, если только практиковать, с лихвой хватит.
По причине большого количества комментариев внесу дополнения.
Многие высказались, что данное время смехотворно, но меня удивляет как все проходили учебу в ВУЗах и теперь имеют дипломы о высшем образовании, но не знают сколько времени для них было отведено на обучение предмету.
Напомню.
Берем специальность 230700 - "Прикладная иформатика". И что в учебном плане?
Предмет "Информатика и программирование". Всего часов 288 из них аудиторных 144 часа и 144 на самостоятельное обучение (кто-то потратил столько?). Из этого времени 78 часов лабораторных работ.
И государство при этом считает, что из ВУЗа выходит специалист, который может работать в фирмах страны.
Вернемся к указанному мной 21 дню. (168 часов - если уделять 8 часов в день). В этом случае подразумевается, что обучающийся не будет просиживать часы на лекциях, не будет тратить время на обощенную информацию и статистику, а будет изучать в деле все тонкости языка, практики и сталкиваться с реальными задачами. Книги "Что-то за 21 день" это хрень, но вот хороший опытный наставник и желание обучаться из человека сделают хорошего специалиста за 21 день точно.