Из моего опыта работы с джунами проблема не просто в том, что они не знают как что-то конкретно сделать. Они не знают как быть разработчиком. В каждой прикладной области нюансов реализации приложения так много и они так скоротечны, что их становится трудно запомнить и вынести для себя какой-то продолжительный опыт.
Можем условно разделить знания на базовые и знание конкретной реализации.
Базовые знания во всей глубине может быть тяжело освоить. Для этого требуется опыт применения, размышления, пробы и ошибки. Зато они практически не меняются со временем и устойчивы к разным прикладным сферам. Сами по себе они не приносят профита, но они как фундамент, без прочности которого, ничего кроме соломенной хатки построить особо не получится. К этой сфере можно прочислить базоые знания программирования, кибернетики, структур данных, паттернов, алгоритмизации, тестирования и культуры написания кода.
Знания конкретной реализации помогают заработать реальные деньги, но со временем они крайне неустойчивы. Без хорошей почвы в виде базовых знаний, реализации получаются ненадежными и трудно-поддерживаемыми. Допустим, мы реализуем CRUD на реакте или вью, но спустя 3 месяца выходят новые мажорные версии и весь стрим коту под хвост, потому что он учит устаревшим подходам.
С этой точки зрения обучения основам будут иметь гораздо более мощный эффект. Начинающему разработчику гораздо важнее знать как не потеряться в этом мире разработки. А именно:
- Как искать и внедрять уже готовые решения.
- Как работать с докуменентацией и читать сигнатуры языка, библиотек, фреймворков и прочих API.
Можно разобрать разные подходы решения одной и той же простой задачи. Как сделать глупо, а как умно. И какова цена каждого решения.
Как по мне, вот это все очень критично. Если это будет в основе, то остальное приложится.
В целом огромный респектос @dmitry за начинания. Советую сделать аккаунт на Patreon, чтобы можно было отблагодарить за твою работу.