По поводу как учиться питону, или какому-то другому языку.
Я на реддите, для практики своего разговорного английского, находил студентов, для которых придумал следующую стратегию, может быть она кому-то тут пригодится.
- Сразу начинаем искать programming buddies, паримся о networking. Причем это не просто текстовые чатики, а ищем людей, с которыми в зуме или скайпе переодически созванимаемся. Обсуждаем свои технические проблемы, новости, делаем код ревью друг другу.
- Сразу начинаем активно пользоваться гитхабом. На гитхабе могут быть не только ваши идеальные фреймворки, а любые учебные проектики. Придумываете себе какой-то учебный проект, делаете его, и с вашим друзьями программистами обсуждаете ваш код.
- Постоянно ищем новых друзей программистов. 95% всех кого вы найдете, они со временем отпадут. Окажется, что они не имеют искренней любознательности в программировании, а хотят лишь высокую зарплату. Вам нужны только такие, которые искренне любят программировать. Которым будет интересно вникнуть в ваш код, и код которых вам тоже будет интересно посмотреть.
- Делаем себе правило: 1 час вечером общаемся в зуме с друзьями программистами. Лично я считаю полезными только тет-а-тет разговоры, но тут могу ошибаться. Это делаем вечером, когда уже сил изучать что-то и писать код нет. Этот 1 час в день можно рассматривать как часть своего рабочего времени. Мир изменился, уже почти никто не тратит время на дорогу в офис. И потратить 1 час каждый день вечером на общение с коллегами можно себе позволить.
И вот какие я вижу плюсы у такого подхода:
1) Скорость обучения будет сильно лучше. Лично я считаю, что код ревью — самое полезное что бывает. Но раз у вас нет еще тимлида, который будет делать вам код ревью, то делайте его друг другу на свои учебные или пет проджекты.
2) Работу найдете быстрее и на более лучшие условия. Ведь когда-то кто-то из вашей банды программистов найдет себе работу. А если это человек как и вы, который каждый день по 1 часу в день обсуждает технические новости, делает код ревью и прочее — это скорее всего хороший программист, даже пока еще и джуниор. И много шансов, что его новая контора будет нанимать еще программистов, и вы найдете работу себе по его рекомендации, минуя HR.
3) Если вам искреннее нравится программирование, то эта активность (1 час в день с друзьями созваниваться) должна быть вам по кайфу. Это будет улучшать настроение и повышать социальные навыки.
В принципе эта стратегия выгодна не только новичкам, но уже и опытным. Вот только опытным программистам это сильно сложнее сделать. По крайней мере у меня плохо получается найти программистов с большим стажем, которым интересно было бы в видео звонках обсуждать программирование. Но вот новичков, которые согласятся с вами в скайпах болтать о программировании, вы найдете кучу.