Pull to refresh

Почему умирает твой пет-проект?

Level of difficultyEasy
Reading time7 min
Views5.8K
Автор прощается со своим пет-проектом
Автор прощается со своим пет-проектом

Привет, Хабр! В своей статье я хотел бы поделиться мыслями в формате нескольких коротких историй о том, почему большинство пет‑проектов остаются где‑то на маленькой свалке в гите. Возможно, пет‑проекты и не должны быть завершены.

А нужен ли тебе пет-проект?

Первый вопрос, с которым мы сталкиваемся: зачем нам это вообще нужно? Давайте попробуем разобраться и для начала представим вымышленного разработчика, который задумался о реализации своего пет‑проекта, но пока еще не до конца осознал, зачем он ему нужен.

Знакомьтесь Вося, он также известен как Восьменог. Он — профессионал в полном смысле этого слова, за его плечами более десяти лет опыта коммерческой разработки и в настоящее время он занимает должность главного разработчика в крупной компании. Казалось бы, все идет хорошо, но в какой‑то момент Восе стало казаться, что программирование перестало быть для него интересным, а все задачи превратились в рутину, которую нужно выполнять, следуя определенным шаблонам, без всякого элемента творчества.

Некоторый визуальный портрет Воси
Некоторый визуальный портрет Воси

Он все больше осознаёт, что хочет вернуть к программированию тот детский интерес, который он испытывал в начале своего пути. Однако создание CRUD API для галеры по одному и тому же шаблону не поможет ему в этом стремлении. Поэтому начинает зарождаться идея о собственном большом и увлекательном проекте. Единственный недостаток заключается в том, что ему не приходит в голову ни одной интересной идеи для реализации.

В данный момент становится очевидным, что для Воси не является приоритетом конечный продукт или его успешная реализация. Ему просто хочется заняться чем‑то, что не связано с работой, можно сказать, погрузиться в процесс прокрастинации.

Ведь пет-проекты - это круто
Ведь пет-проекты - это круто

Но интересная идея так и не приходит в голову, заставляя Восю обратиться к друзьям и знакомым, чтобы выяснить, существует ли потребность в каких‑либо программных продуктах, в разработке которых он может принять участие. И вот внезапно появляется предложение создать мини CRM для кальянной. Вося, не задумываясь, соглашается, и уже начинает строить планы по расширению своего проекта на другие заведения.

И с чего же начинает разработку наш гениальный Вося? Со сбора требований или определения границ проекта, первоначального MVP? Нет, он начинает заниматься тем, чем он всегда мечтал заниматься: проектированием микросервисной архитектуры для своего mini CRM. Там он стремится использовать все, чего ему не хватало на работе: он реализует DDD (domain‑driven design) правильно, а не так, как это делали его коллеги на работе, а также в микросервисах сочетает это с чистой архитектурой.

Казалось бы, Вося — опытный разработчик, но почему же он принимает такие непоследовательные решения? Потому что, на подсознательном уровне, он всего лишь стремится применить свои навыки, которые ему не удается в полной мере реализовать на работе, и получить свою порцию дофамина.

Проснись Вося, тебе нужно хранимку на проде поправить... какой еще такой кубер...
Проснись Вося, тебе нужно хранимку на проде поправить... какой еще такой кубер...

После завершения работы над самым захватывающим для Воси проектом он ощущает прилив дофамина. Он снова чувствует себя снова молодым разработчиком и испытывает искренний интерес. На данном этапе он решает остановиться и отдохнуть, ведь сегодня он достиг того, что хотел.

В последующие разы он продолжает работу и извлекает максимум возможного из разработки проекта. Однако, по мере того, как интересные задачи иссякают, возникают различные сложности и проблемы: серверные проблемы, проблемы с базой данных, задачи связанные с деплоем и так далее. Поскольку эти задачи не приносят Восе ценности или интереса, он начинает постоянно откладывать их на будущее, а затем, в конечном итоге, теряет интерес к проекту, понимая, что он ему на самом деле не нужен, и в общем‑то, все это слишком сложно.

В итоге, можно заключить, что если вы чувствуете усталость от своей работы и от однотипных задач, стоит сначала обратиться к своему руководителю и описать ситуацию. Возможно, тогда найдется решение, такое как смена проекта или роли в команде. На крайний случай всегда можно уделить время обучению и углублению в своей специализации, и в дальнейшем искать новую работу.

А вы потянете пет-проект в одиночку?

Теперь мы плавно переходим ко второму вопросу в нашей повестке: А вы вообще реально думаете, что сможете реализовать все самостоятельно? Ведь крупные компании располагают тысячами сотрудников и множеством команд, каждая из которых разрабатывает свою часть продукта. И вы считаете, что все это можно сделать в одиночку.

Главным героем в этой небольшой истории будет Иван, которого все зовут Вонич. Он является весьма успешным разработчиком, активно проявляющим себя в работе, и мечтает реализовать свою крутую идею, чтобы как можно скорее стать новым Павлом Дуровым. У него нет проблем с интересными идеями, и у него нет усталости от программирования. Однако у него каким‑то образом не получается довести свой проект до конца.

Как видит себя Иван...
Как видит себя Иван...

Иван решает реализовать свою криптовалютную биржу с изюминкой, которую мы оставим в секрете. И казалось бы по версии Ивана достаточно фронт на реакте запилить, бек и авторизацию и кошельки, и можно отправляться на минимальном MVP в релиз. Но будет ли так — это большой вопрос.

Ведь для разработки фронтенда на React требуется ряд шагов: сначала необходим интересный дизайн, затем его нужно сверстать. После этого следует интегрировать дизайн в проект на React и создать привязку к API. Это, в свою очередь, предполагает необходимость разработки собственного API для биржи, а также реализацию авторизации. И вот с чего начинать Ивану чтобы не запутаться?

Иван старается
Иван старается

Для успешной работы ему приходится находится в роли заказчика, аналитика, разработчика, тестировщика и девопса. В дальнейшем он пытается совместить все эти роли, но несмотря на затраченное время, его цель остается далекой. Учитывая, что на разработку крупных продуктов командам требуется годы, в одиночку он может лишь сделать небольшую часть. Возможно, стоило начать с чего‑то более ограниченного или посильного.

В целом, если у вас есть интересная идея, возможно, как и в любом бизнесе, вам придется вложить финансовые средства и заказать часть работ. В современной среде очень сложно, если не невозможно, создать продукт в одиночку. Необходимо искать сторонников или помощников среди коллег, иначе реализация идеи будет затруднительной.

А обладаете ли вы временем для работы над пет-проектом?

Переходим к последнему вопросу: А есть ли вообще время для работы над пет‑проектом? Ведь для того чтобы начать разрабатывать что‑то своё, нужно на регулярной основе выделять время для дополнительной работы, а не только искать свободное окно, чтобы покодить один раз в месяц. Любая работа должна вестись регулярно, чтобы её не забрасывать, возможно, небольшими частями.

Давайте опишем персонажа по имени Олег, которого прозвали «Где правки?». Он является весьма успешным и востребованным тимлидом небольшой команды разработки. Помимо рабочей сферы у него есть также настоящая семья: жена и несколько детей. И вот ему поступает предложение о совместной разработке проекта с друзьями, на что он соглашается.

От Олега требуют правки
От Олега требуют правки

И вот работа над пет‑проектом набирает обороты, и жизнь в нем оживает: друзья уже приступили к выполнению своих первых задач, но Олег пока не может присоединиться. Ведь на его работе требуется закрыть релиз, а после работы он обещал сводить жену в магазин, а также забрать детей из садика. И вообще кровь из носу он завтра точно выполнит свою часть заданий.

Олег дает обещание друзьям...
Олег дает обещание друзьям...

А Олег продолжает искать отговорки и душить идею проекта, ожидая момента, когда все потеряют интерес, чтобы с чистой совестью сказать: «Эх, ребятушки, не срослось. Надеюсь, в следующий раз мы будем организованнее, и все получится». Но что мешало ему отказаться от этой работы? Возможно, он просто не хотел упускать возможность и сам не осознавал, что времени на этот проект у него недостаточно. Так или иначе, как и большинство стартапов, этот проект умер, и Олег смог вздохнуть спокойно, ведь он не виноват.

В целом всегда важно заранее понимать свои силы. Конечно, всегда хочется участвовать во всех интересных проектах, но если нет возможности, стоит отказаться, чтобы не подводить других. Или определить, что график работы будет не очень напряженный, чтобы вы смогли справиться.

Заключение

В целом, я считаю, не так уж важно, закончите ли вы свой пет‑проект или нет. Если процесс разработки приносит вам удовольствие, то, возможно, это и не так важно. Но если вы всё же хотите довести свой проект до конца, то стоит разобраться, действительно ли вам нужны эти трудности, насколько реальна ваша идея, и имеете ли вы достаточно времени. Думаю, если всё тщательно продумать, то всё может получиться.

Спасибо за внимание!

Для тех кому понравилось
Автор обращается к тем, кому понравилось
Автор обращается к тем, кому понравилось

Поэтому если интересно получать анонсы новых статей, технические истории работяги или выбрать тему следующей статьи, присоединяйся к моему Телеграмм каналу.

Tags:
Hubs:
Total votes 23: ↑17 and ↓6+17
Comments28

Articles