Я проработал над своим проектом три года. Причем этот был далеко не первый, у меня скопилось целое кладбище незаконченных проектов. Но ведь на основной работе я вполне успешно справляюсь со своими задачами. Нет проблем ни с оценкой сроков, ни с исполнением.
Конечно, такая ситуация не должна никого удивлять: работа — это работа, а домашний проект должен приносить удовольствие, можно делать самое вкусненькое, а не заниматься однообразной шлифовкой мелких деталей, которые необходимы для релиза.
Все это так, но удовольствие видеть, как твоим продуктом пользуется кто-нибудь еще, видеть, что он решает чьи-то проблемы — несравнимо выше. Так что я решил во что бы это ни стало довести хотя бы один проект до релиза.
Нужно было всего лишь разобраться, что мне мешало сделать это раньше.
Самое начало: что такое пет-проект?
Судя по моему опыту (и опыту моих знакомых) — это что-то, что всегда находится в стадии «в процессе разработки» и закончить это невозможно. Я могу легко перечислить причины, почему происходит именно так:
- Мы постоянно врем себе. Это абсолютно нормально, так наш мозг помогает нам справиться с неприятностями. Например, вместо «у меня это не получилось» мы говорим себе «мне это больше не интересно»;
- Нет никакой литературы, или курсов о том, как управлять пет проектом;
- Даже начать работать над чем-то неизвестным довольно сложно;
- Со временем даже самый интересный проект превращается в рутину.
Есть еще тысяча причин и оправданий, чтобы не заканчивать персональный проект.
Давайте перестанем заниматься пет проектами, это что-то слишком неопределенное, слишком непонятное, давайте фокусироваться на том, что приведет нас к логическому завершению.
Проект. Просто проект
Каждый знает как работать над проектом. Мы занимаемся этим изо дня в день на основной работе. Вы, наверное, представляете себе все эти таблицы, диаграммы, тайм-трэкеры и думаете, что проект — это скучно. Не стоит переживать. Свой собственный проект — это очень увлекательно. Прежде всего подумайте о перспективе: наблюдать за развитием своего проекта очень приятно. И потом — нужно просто увидеть, как этим пользуется кто-нибудь еще. В любом случае, опыт работы над проектом в качестве и заказчика, и исполнителя, и менеджера никогда не будет лишним.
Терпение безусловно понадобится, но результат стоит этого.
Мне часто приходится повторять себе:
Это не спринт, это марафон.
Цель
Даже если вы работаете над своим проектом уже не первый месяц, стоит приостановиться и честно ответить себе на один вопрос:
Какова моя цель? Для чего я это делаю?
На пути много разных интересных блестяшек, которые постоянно отвлекают от основной цели. Ответ на этот вопрос поможет правильно расставить приоритеты.
Цель должна быть простой и понятной. Когда я говорю себе «я хочу разобраться с фреймворком Х», это скорее не цель. Чаще есть еще скрытый мотив: «Я хочу разобраться с фреймворком Х, для того чтобы ...» Ответ должен быть честным. Если я хочу, чтобы мой персональный проект приносил мне деньги, стоит ли врать себе и говорить «я просто хочу сделать классный продукт» и надеяться, что деньги придут сами собой? Этого не произойдет. Не лучше ли сразу сфокусироваться на доказательстве (или опровержении) гипотезы о том, что ваш продукт коммерчески интересен?
Время
Тайм-менеджмент — это огромная проблема. Написано масса литературы, существует множество лекций и пр., но, конечно, же универсального алгоритма не существует.
Я могу просто дать несколько советов, которые в моем случае работают. Начинайте с планирования. Нет ничего лучше, чем старые добрые диаграммы Ганта. Разбейте свой проект на задачи, сделайте временную оценку каждой задачи, выпишите их. Убедитесь, что для завершения всех задач потребуется больше одной жизни, перенесите некоторые задачи в бэклог «на потом». Повторите все сначала. Опять же, четкое понимание цели поможет расставить приоритеты для каждой задачи.
Кстати, при оценке задачи учтите, что дни — это уже не те самые восьмичасовые рабочие дни. Засекайте время, которые вы потратили на выполнение каждой задачи. Во-первых, это сделает временную оценку более аккуратной. Во-вторых, тайм-трекинг будет хорошей подсказкой, что вы движетесь в правильном направлении (или наоборот — в неправильном). Очень важный момент — таймтрекинг поможет не терять мотивацию в те моменты, когда кажется, что усилия не приносят никаких результатов.
Ресурсы
Изначально может казаться, что у персональных проектов нет ресурсов, которыми нужно управлять, но это не так. Для начала подумайте о своем личном времени. Можете разделить вашу зарплату на количество рабочих часов и получить (очень грубо) вашу стоимость как специалиста в час. Теперь подумайте о деньгах: что дешевле — починить кран на кухне самостоятельно, или заплатить кому-нибудь за эту работу и сэкономить свое время? Если вы собираетесь зарабатывать деньги своим проектом, то почему бы не начать раньше? Вы можете нанять человека для создания сайта, SEO статьи, или проведения маркетингового исследования.
Самый ценный ресурс вашего проекта, его жизненная сила — это ваша мотивация. Не ждите вдохновения, управляйте своей мотивацией как и любым другим ресурсом.
Опять же — никаких серебренных пуль, только советы:
Держите под рукой список задач. Всегда есть что делать, даже если вы не в настроении делать что-то одно, можно заняться и другим. Просто убедитесь, что вы не тратите время на ненужные задачи.
Не дописывайте до точки, оставляйте работу на завтра. У меня есть только 2-3 часа после работы на свой проект. Намного проще продолжить вчерашнюю задачу, чем начинать вникать в новую. А еще это избавляет от «раскачки» (всего 2-3 часа, на фейсбук, любимые блоги и комиксы просто не остается времени).
Сейчас вы прочитали про управление проектом и, возможно, думаете: «А в чем же собственно фан?» Я могу поспорить, что ваш домашний проект очень инновационный. По крайней мере для вас это что-то новенькое (иначе зачем это?).
Хм. Управление инновационным проектом, в условиях полной неопределенности, постоянный поиск. Погодите, разве это не…
Стартап
Стартапы — это очень весело и увлекательно. Спросите кого угодно. Более того, сейчас вы можете найти тонны литературы, видеоуроков, блогов, лекций, курсов о том, как управлять стартапом. Еще лучше: стандартные стартап-техники можно брать и использовать в своем проекте уже прямо сейчас.
Минимально жизнеспособный продукт — MVP
Minimum viable product, или MVP — это общепринятый термин (МЖП звучало бы странно). Стартапы используют MVP чтобы подтвердить (или опровергнуть) гипотезы о продукте. Изначально — «этим будут пользоваться», «это будут покупать», и пр.
MVP в домашнем проекте — не совсем тоже самое, что и в стартапе. Что-то минимально жизнеспособное нужно сделать как можно раньше, с минимальными затратами, но его основная задача — поддерживать вашу мотивацию. Если работать над чем-то, что нельзя «пощупать», это очень быстро надоест.
Например, если мне предстоит написать массу кода перед тем, как я смогу что-нибудь запустить, я делаю юнит тесты. Возможность запустить юнит тесты помогает двигаться дальше, не говоря уже о пользе раннего тестирования.
Что-то рабочее нужно иметь под рукой постоянно. И это не только мотивирует, но и дисциплинирует. Например, заставляет сфокусироваться только на одном изменении, вместо внесения множества изменений за раз, чтобы ничего не сломать, если говорить о коде.
Аудитория
Основная проблема стартапа — поиск своей аудитории. Это тоже можно взять на заметку (есть масса литературы и уроков). Вы не одни, есть еще люди, которые потенциально заинтересованы в вашем проекте также, как и вы сами. Найдите их, расскажите о своей идее. Вы можете найти единомышленников, наслушаться хороших советов и замечаний. В любом случае, отзывы живых людей мотивируют лучше тысячи видео с котиками.
Можно использовать множество других идей из мира стартапов, все зависит от того, чего вы хотите добиться своим проектом.
Продуктивность требует жертв
Времени постоянно не хватает, не только на личные проекты, а вообще. Мы не можем увеличить количество часов в сутках, но мы можем быть более продуктивными.
Режим. Плохие новости, да. Люди наиболее продуктивны, когда живут согласно цикличному графику.
Если сегодня я лягу в 4 утра, завтра я не успею выполнить все задачи на основной работе, прийдется овертаймить, и на персональный проект не останется времени, и т.д. Лучше придерживаться графика.
Спорт. Как ни крути, а тушку нужно поддерживать в хорошем состоянии, иначе — последствия будут печальными. Занятия спортом трудно начать, но зато уже через пару недель тело начнет просить следующую порцию физической нагрузки, да и состояние, когда хочется просто бежать вперед, потому что можешь, словами не описать.
Баланс. Все как всегда, но при наличии персонального проекта ситуация становится более критичной. Я и сам много читал про важность уметь балансировать, но при этом умудрялся загнать себя в burnout. Burnout — это состояние физического и эмоционально истощения. Даже понимая свое состояние, уже не остается сил на то, чтобы переключиться, поехать куда-нибудь, просто отдохнуть. И ты действуешь по привычке, как белка в колесе, не в состоянии вырваться из этого круга.
Вот и все. Я надеюсь, что эта статья поможет вам закончить ваш домашний проект, а с ним Мир станет пусть чуточку, но лучше.
Комментарии (10)
reiser
26.05.2015 08:13Ну наконец-то!
А то все эти статьи «вы должны иметь pet-project» сильно демотивировали.
«Когда?» — cпрошу я вас.cachelot Автор
26.05.2015 13:03Я отдаю себе отчет в том, что статья не всем подходит. Мне в какой-то момент захотелось доводить свои домашние проекты до какого-то логического завершения. Хотя бы с той точки зрения, что на отрезке начало проекта -> проект надоел вы получаете 20% опыта, а 80% — во время полировки деталей.
Но у каждого свои приоритеты.
binarydao
26.05.2015 09:20+4С удивлением узнал из этой статьи, что есть люди, которые кому-то должны иметь свой пет-проект и они вступают в конфликт с людьми, которые кому-то должны не иметь свой пет-проект.
Не хотел бы я быть вами. Вы пытаетесь заменить одно долженствование другим. Это помогает снять ответственность со своей рациональной, оценивающей части личности и переложить на супер-эго. Экономит время, лишает осознанности.
А казалось бы: хочешь — делай, не хочешь — не делай… Каждый конкретный случай уникален и нуждается в собственной оценке, без каких-то жёстких навязанных извне категорий.cachelot Автор
26.05.2015 12:51Почему же? Никто никому ничего не должен. Просто если рассматривать пет проект исключительно с точки зрения получаемого удовольствия, есть краткосрочные и долгосрочные и цели, соответственно есть маленькое ежедневное удовольствие и большое — за победу в эдаком персональном challenge.
Эта статья для тех, кто хочет получить большое удовольствие в конце, но никак не может довести проект до этого самого конца.
kohus
26.05.2015 10:15+2Вообще-то многие люди на работе программируют за деньги, а дома просто для удовольствия. А некоторые еще делают пет-проект, чтобы решить какую-то свою личную проблему.
cachelot Автор
26.05.2015 12:57Само собой, у каждого своя мотивация и цели. Поэтому так важно определить для себя эти цели изначально. Завершение пет проекта — это ведь не обязательно релиз и финансовая прибыль.
Например, если целью является изучение нового языка программирования, то побочным продуктом будет несколько программ разной степени корявости и готовности. В то же время оценка завершенности задачи — это понимание как пользоваться технологией.
FFormula
27.05.2015 09:52Для меня стала откровением фраза, что «проект это не спринт, а марафон».
А я-то всё время к своему проекту по спринтерски отношусь, из-за чего
иногда накапливается такая усталось, что могу несколько недель
вообще ничего не делать. Спасибо за статью.cachelot Автор
27.05.2015 20:28Спасибо за комментарий. Очень приятно знать, что это кому-нибудь полезно.
progchip666
Жизненная статья.
Не знаю поможет ли она чем, но описано всё красиво и правильно.
Правда на вопрос статьи — «почему» ответа в ней я так и не нашёл.
Наверное, лучше было бы заменить это слово в заголовке на «как».
cachelot Автор
Спасибо.
Ответ на вопрос «почему?» — потому что вместо пет-проектов можно заниматься проектами.