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

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

Ваш побочный проект является самым важным.

Через два месяца ты почти забыл о своем сайд-проекте. Ты не трогал его с тех пор, как появился этот причудливый жук… Возможно, ты потратил на него слишком много времени. Вы сожгли слишком много нейронов этой роковой ночью. Маленькая часть себя все еще любила это, но боль была слишком яркой. Сейчас мотивация пропала...

Вы хотите создать сайд-проект своей мечты? В этой небольшой истории хорошо описано, что нельзя делать, дорогой читатель. Я могу относиться к истории выше: я начал множество побочных проектов, так как я поймал себя на программировании. Моя первая программа на C была побочным проектом 18 лет назад.

Поскольку прямо сейчас я выпускаю MVP моего нового сайд-проекта Sharetoall, я подумал, что это хорошая возможность написать о своем опыте о сайд-проектах в целом.

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

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

Но обо всем по порядку: вы можете спросить себя, сумасшедший философ, что я имею в виду под «побочным проектом»?

Это личный проект, которым вы занимаетесь помимо своей утомительной и полной занятости работы/учебы/всего, чем вы занимаетесь весь день. Простой.

Разобравшись с этим вопросом, давайте начнем.

1. Идеи: найти или не найти

Это случилось с лучшими из нас. Вы хотите начать сторонний проект по множеству причин, но не знаете, по каким именно.

Я вижу, как вы уже сидите перед своим компьютером, гуглите под рукой в ​​поисках идей. Они где-то есть, ты это знаешь, и ты их найдешь.

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

Сюрприз-сюрприз, дорогой читатель: на самом деле легче позволить идеям прийти к вам.

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

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

Поэтому принимать к сведению ваши идеи важно. Отметьте любую вашу идею, даже если вы считаете ее неуклюжей или глупой.

Идеи, даже плохие, могут вас вдохновить. Вдохновение создаст больше идей. Чем больше идей вы заметите, тем больше идей у ​​вас может появиться в будущем.

Ваш «мешок идей» будет становиться все больше и больше, и вам нужно будет только раскрыть их потенциал.

2. Четкие и точные цели

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

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

Они должны иметь смысл для вас и вдохновлять.

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

Поскольку вы, вероятно, являетесь разработчиком, я уверен, что у вас хотя бы раз возникала такая мысль: «Было бы неплохо иметь этот инструмент для выполнения этой скучной задачи». Ну вот и идея для побочного проекта с четкой целью.

Зарабатывание денег также может быть целью, но гораздо эффективнее заниматься на более эмоциональном уровне. С сайд-проектом никогда нельзя быть уверенным, что деньги потекут рекой. Это может быть сомнительно, а сомнения могут затруднить продолжение и достижение вашего побочного проекта.

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

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

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

3. Наслаждайтесь поездкой!

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

В краткосрочной перспективе вам нужно получать удовольствие от процесса строительства.

Может быть, вы очень любопытны в каких-то технологиях и хотите их изучить? Может быть, вам очень нравится тот или иной язык программирования и вы хотите стать лучше?

Сторонний проект идеально подходит для обучения. Если вам нравится учиться (и если вы разработчик, вы должны это делать), это будет отличным повседневным источником мотивации.

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

Помните также, что неудачи — это только хорошие возможности для обучения.

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

Если вам не нравится создавать свой сайд-проект во время его создания, спросите себя: вам не нравится технология, которую вы используете? Что делает процесс строительства таким скучным?

Постарайтесь выяснить, что происходит не так, и исправить это.

4. Спросите об отзывах

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

Задайте себе важный вопрос: для кого вы создаете свой сторонний проект? Это может быть группа людей, один человек или даже вы сами.

Разрабатывайте свой побочный проект изолированно в своем пузыре, не говоря об этом, и вы можете создать что-то, что никто не захочет использовать. Это никогда не бывает приятным чувством.

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

Тогда просто спросите. Если вы не хотите прямо говорить о своей идее, вы можете быть довольно расплывчатым. Что-то типа:

"Всем привет! Я подумал: что вы думаете о новом сайте для изучения иностранных языков? Интересно, будет ли кому-нибудь интересно составить свой собственный список слов и выполнять упражнения на их основе».

Чем больше у вас отзывов, тем лучше.

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

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

Постарайтесь дистанцироваться от этих отзывов и оставить того, кто хорошо объяснил. Отзывы полезны только для того, чтобы вы становились лучше, иначе они бесполезны.

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

Вы должны быть уверены, что идете в правильном направлении. Если вы можете быть уверены в этом на каждом шагу, это даже лучше.

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

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

5. Баланс жизни и выгорание

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

Очень важно найти баланс между личной жизнью, работой и побочным проектом.

Попробуйте объяснить своей семье, друзьям или родственникам, с которыми вы живете, что вам нужно время для вашего супер-пупер-проекта. Объясните им свои цели и свои мотивы.

Объяснение — ключевое слово здесь: если вы навязываете своей семье 6 часов непрерывного глубокого сосредоточения, это может быть слишком много. Помните: работать над этим по 30 минут каждый день лучше, чем по 10 часов раз в месяц.

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

Для того, чтобы работать стабильно, лучше, если вы сможете выделить какое-то время на свой побочный проект, не отвлекаясь.

Опять же, здесь ключевыми являются навыки общения и слушания.

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

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

6. Чем меньше, тем лучше

Ваша мечта — создать самостоятельно приложение для отправки ракет на Луну? Это мечта, но давайте будем реалистами. Большой и сложный сайд-проект имеет больше шансов никогда не увидеть свет, чем более простой.

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

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

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

Разделите свой побочный проект на несколько небольших частей. Каждый раз, когда вы достигаете одного из этих «побочных проектов», вы вызываете это чувство удовлетворения. Это большая помощь в продвижении вашего проекта.

Разделение вашего проекта на части также гарантирует, что вы останетесь на правильном пути, ведущем к конечному продукту. Эти части должны соответствовать вашим целям.

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

Это также может принести новые возможности… и трудности.

7. Хорошая организация

Хорошая организация будет огромным подспорьем в эффективном управлении как объемом, так и графиком вашего стороннего проекта.

Многие инструменты могут помочь вам отслеживать время, которое вы хотите потратить на каждую задачу, время, которое вы действительно потратили на их выполнение, какие задачи вам еще нужно выполнить в ближайшем будущем. e Я вернусь к этой части более подробно во второй части этой серии статей. Там я подробно объясню свою организацию.

8. Выработка привычек

Постоянная работа — один из ключей к успешному стороннему проекту.

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

Вам нужно найти баланс. Как? Вырабатывая хорошие привычки. Они могут очень помочь вам.

Я бы солгал вам, если бы сказал, что вырабатывать привычки легко. Это не. Однако, когда у вас есть свои привычки, ваша продуктивность резко изменится. Я могу это гарантировать.

Ваша жизнь уже полна привычек. Если вы пьете кофе каждое утро, это привычка. Если вы чистите зубы каждое утро, еще одна привычка.

Ключ в том, чтобы выработать такую ​​сильную привычку, имея в виду ваш побочный проект. Например, можно работать над этим каждый день по 10 минут в 17:00.

Если вы думаете, что вам не хватает силы воли, чтобы сформировать эти привычки, вы ошибаетесь. У всех более или менее одинаковые сильные и слабые стороны в отношении силы воли. Сила воли — это не то, что у вас есть или чего нет. Это сложный набор механизмов, которые вам просто нужно понять.

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

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

9. Избегайте давления

В вашей жизни достаточно давления: не давите на свой сайд-проект. Это то, чем вам нужно наслаждаться, иначе вы откажетесь от этого.

Во-первых, вообще избегайте фиксированных и точных сроков. Способны ли вы точно оценить объем работы, которую вам необходимо выполнить? Я не знаю никого, кто на это способен.

Вы можете примерно оценить каждую маленькую задачу, из которой состоит ваш сайд-проект, но не относитесь к этому слишком серьезно. Если задача занимает в 10 раз больше вашей оценки, просто примите ее.

Сроки могут помешать вам экспериментировать. Если у вас есть возможность попробовать что-то новое, это может многому вас научить.

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

10. Перфекционизм: качество или дефолт?

Я перфекционист по натуре: в начале своей карьеры я мог часами смотреть на свой код, модифицировать его, чтобы сделать его красивым, совершенным, свободным от ошибок. Проблема? Написание более 10 строк кода заняло бы сумасшедшее количество времени!

Всегда помните, что вы всегда можете улучшить свой код позже.

Вот моя стратегия:

  1. Заставьте это работать
  2. Проверьте свою функциональность
  3. Рефакторинг, если он выглядит слишком уродливо
  4. Время начать другую функцию

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

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

Выделите время в неделю на рефакторинг или просто на рефакторинг, когда вам захочется. Это ваш сайд-проект, вам позвонят.

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

Это не конец

Эта статья может показаться очень теоретической (и скучной), но она является основой для следующей статьи, которая будет гораздо более конкретной.

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

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

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

Продолжайте пробовать, ошибаться и учиться. Это их путь к успеху.

Первоначально опубликовано на сайте web-techno.net 5 июня 2018 г.