Маленькие проекты или большие проекты для поддержания знании?
Добрый день всем.
Я перестал заниматься активной разработкой уже больше двух лет. Временами курирую разработку других разработчиков, но активно не лезу сам. По факту я уже руковожу группой разрабов, веду продажи ИТ продуктов и тд.
И недавно решил я заняться своим проектом который уже несколько лет не выходит у меня с головы, который похожие есть, но по функционалу меня не устраивает, при этом он отлично мне помогал для работы по часовым графикам.
И вот я решил им заняться, сделал наброски проекта на тетрадке, нарисовал и обрисовал все, наклепал на Wix и Figma подобие дизайна, и когда начал приступать к верстке понял что я ничего почти не помню.
JavaScript? Почти забыл, в трудных решениях могу тупить жестко.
PHP, Python? Почти забыл, в трудных решениях могу не додуматься.
То есть по факту чем я занимался раньше и мог на зубок сделать просто по описанию функционала, сейчас я уже не могу поднять свой проект.
И решил я клепать маленькие проекты, но даже маленькие проекты мне стали не по силам, на некоторых задачах и решениях я просто встал в тупик.
Так как дальше поддерживать знания? Прыгать сразу на большой проект с набросками, с идеями с шаблонами или лучше вслепую делать маленькие мини проекты наподобии timer JavaScript, Snake WebGL и тд?
Обычное дело. Когда долго чем-то не занимаешься, то навык теряется и требуется время, чтоб восстановить форму. Но если вы когда-то владели забытой темой хорошо, то процесс восстановления может пройти достаточно быстро. Но, все равно, требуется приложить некоторые усилия и потратить время.
В больших проектах, обычно, больше трудных мест, чем в мелких. Но мелких проектов можно насоздавать под каждую проблему. Другое дело, что проблему сначала нужно осознать, т.е. она должна возникнуть в проекте. Так что, на мой взгляд, лучше восстанавливаться на большом проекте, там проблемы, по которым нужны дополнительные усилия, будут возникать сами собой.
Я хоть и не совсем разраб, но иногда веду разработки на node для нашей инженерной службы. Так вот, иногда поступают большие задачи, иногда простые.
Я сторонник микросервисной архитерктуры. Т.е. на каждую задачу создавать отдельный микросервис и по мере необходимости соединять между собой.
Т.е. если есть большая задача - разбиваем ее на множества малых, более простых и решаем их. Если задача простая, то и в целом решается одним сервисом. Поэтому если отвечать на ваш вопрос в лоб, я бы выбрал путь мелких разработок. В случае необходимости, их будет проще объединить для выполнения какой то более сложной задачи, да и в дальнейшем проще анализировать мелкие проекты, чем какой то монолит.