Как вы остаетесь мотивированными для хобби проектов? [закрыто]

43

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

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

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

Ответы:

57

Один совет - убедитесь, что ваш хобби-проект не имеет ничего общего с вашей повседневной работой. Если вы используете C ++ на работе, используйте что-то еще в своих хобби-проектах. Это поможет вам избежать некоторого выгорания, потому что вы по крайней мере переключаетесь на другую среду разработки и / или набор навыков.

Но хобби - это хобби ... так что не волнуйтесь. Он должен быть расслабляющим, а не стрессовым.

GrandmasterB
источник
+1 ... но единственная проблема в этом заключается в том, что я расстраиваюсь, когда у меня есть полнофункциональная среда разработки для реальной работы и текстовый редактор для игры в Io, Clojure, что угодно. Это как ездить на велосипеде с тренировочными колесами - это весело, но я хочу ехать быстро!
Стив Джексон
1
"текстовый редактор для игры в ... Clojure" Emacs и Slime! Это вряд ли велосипед с тренировочными колесами.
michiakig
31

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

Craig
источник
7
Также рассмотрите приоритетный список целей, в том числе график «выпуска», даже если это просто «используйте его регулярно». Приятно видеть прогресс с течением времени.
JBRWilkinson
22
  1. Выберите проект, который вас действительно интересует.
  2. Потратьте немного времени заранее, определяя ваши цели для проекта.
  3. Разбейте проект на небольшие этапы, чтобы не было часов и часов работы, чтобы ощутить чувство выполненного долга.
BENV
источник
1
Я понял, что чем меньше свободного времени, тем важнее сосредоточиться на вещах, которые мне сразу пригодятся. Жаль, но так оно и есть.
LennyProgrammers
13

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

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

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

Тем не менее, когда у вас есть партнеры, с которыми можно поиграть, все становится гораздо веселее и мотивирующим. Разместите свой проект на таких сайтах, как freshmeat, наверняка кто-то еще подумает, что вы придумали что-то полезное, и поможет вам улучшить его. Вот где вы действительно начнете веселиться :)

Тим Пост
источник
8

Ага. Я сгораю от кодирования тоже. Я люблю программировать и создавать программы, но после долгого дня (или недели, или года) программирования на работе ... запускать IDE у себя дома становится все сложнее и сложнее.

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

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

2) Получение разрешения на работу над несколькими любимыми проектами на работе. Для многих это не стартер, но если вы можете качать договоренность (даже разовую или случайную), это может быть удовлетворительным. Гораздо проще получить кодирование, когда альтернативой являются обычные рутинные работы по точильному камню на работе.

Пример на # 2: в течение многих лет моя компания использовала систему контроля версий, которая, хотя в большинстве случаев была приличной, была абсолютно ужасна, показывая вам ваши неверсионные подпапки на диске. У каждого были свои маленькие способы борьбы с этой неприятностью. Мне это надоело, и я попросил время написать небольшую утилиту, чтобы сделать решение этой проблемы гораздо менее болезненным. Это был не самый интересный код, который я когда-либо писал (хотя было несколько сложных / интересных моментов), но реальная награда заключалась в том, что мои коллеги использовали и наслаждались программным обеспечением, и были благодарны за него.

Майк Кларк
источник
8

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

Benjol
источник
У меня такое же чувство к «завершенным» сторонним проектам. Я все еще использую сторонние проекты, которые я создал более года назад и не обновлял кодовую базу в течение нескольких месяцев. Если это не сломано, не исправляйте это.
Тьерри Лэм
6

Для меня люди имеют значение. У меня есть смехотворное количество побочных проектов, требующих моего внимания. Те, которые получают мое «свободное» время (чрезвычайно ограниченный ресурс), - это те, в которых я работаю с людьми, которые учат меня новым вещам, пробуждают новые идеи или вдохновляют меня каким-то образом. Мне трудно оставаться мотивированным на других.

HedgeMage
источник
4

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

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

Поэтому для меня хитрость заключается в том, чтобы придумать идею, которая была бы действительно полезна (для меня или для моего знакомого), а затем поставить перед собой задачу реализовать ее на этом языке / платформе. Когда это своего рода упражнение в реальном мире, и это действительно полезный продукт, я склонен оставаться более мотивированным. Когда это надуманный учебный проект, легко потерять сюжет.

Бобби Столы
источник
3

Учитывая, что у вас уже есть идея для вашего хобби проекта, я бы предложил

  1. Напишите хорошую документацию
  2. Запланируйте свой проект хобби в некотором смысле

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

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

Если вы еще не решили, что делать для хобби-проекта, я добавлю следующее:

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

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

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

YYC
источник
Боже мой, это звучит как работа! :)
Benjol
Верно. Но главное различие между хобби-проектом и работой заключается в том, что по умолчанию у работы есть очень хороший стимул - ваша прекрасная зарплата
YYC
2

Я не всегда остаюсь мотивированным, но я обнаруживаю, что когда я говорю другим людям, над чем я работаю, я часто заканчиваю тем, что трачу столько энергии на обсуждение (иначе говоря, спор, почему я делаю это X-way, а не Y-way как аргументатор считает, что это должно быть сделано), что я теряю интерес к работе над проектом. Так что мой «секрет» - не говорить о чем-либо до тех пор, пока я не сделаю достаточно, чтобы это сделать.

Мои цели часто бывают по шкале «научиться использовать M» или «как вы можете сделать N?» таким образом, выполнение цели обычно отличается от выполнения проекта.

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

Tangurena
источник
«Мой нынешний работодатель занимает позицию (в трудовом договоре), что я не могу работать над материалами с открытым исходным кодом», в какой стране вы живете? Этот момент просто зло ...
Кальмариус
@ Калмариус, я работаю в США. Работодатель, которого я уволил в конце 2010 года, вербовал меня в прошлом году. Они обеспокоены тем, что открытый исходный код может «заразить» программное обеспечение, которое мы продаем. Вместо того, чтобы выяснить, какие лицензии благоприятны для бизнеса, а какие - с авторским левом, это слишком большая административная нагрузка. Поэтому все это запрещено. Вы можете прочесть один личный опыт: perlmonks.org/… .
Тангурена,
Теперь я вижу. Я выпускаю свои вещи, используя Calmarius или другие псевдонимы под CC-BY-подобной лицензией (делай что хочешь, но упоминай меня). Если моя компания не подслушивает меня, они не могут приписать мне этот код ... (Я делаю это только дома.) Вероятно, вы можете сделать это таким образом ...
Кальмариус
2

Хороший вопрос, особенно потому, что я планирую начать хобби-проект сам (не первый хобби-проект, но проекты в прошлом, как правило, терпят неудачу, когда мне это надоедает, что, по меньшей мере, неудовлетворительно) ,

Мои советы, хотя:

  1. Разработайте то, что вам небезразлично. Довольно очевидно, и упоминалось несколько раз, но действительно заслуживает того, чтобы быть повторенным. Если вы разрабатываете только ради этого, вам в конечном итоге станет скучно.

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

  3. Выберите что-то, что вы можете разработать, протестировать и т. Д. Не покупайте серверные приложения, которые требуют от вас потратить 3000 фунтов на тестирование аппаратного обеспечения (или много денег на хостинг).

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

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

JohnL
источник
Кстати, одна вещь, которая может мотивировать вас, это спрос на обновления - несколько лет назад я написал несколько простых задач по обработке XML для NAnt, и я до сих пор получаю отзывы об этом. Там явно спрос на улучшения NAnt, но он не обновлялся со времен каменного века. Клянусь, кому-то придется его
раскошелиться
0

Вещи, которые меня мотивируют:

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

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

MAK
источник
0

Чтобы оставаться мотивированным чем-то, что не приносит вам денег, у вас должен быть хотя бы один из следующих элементов:

  • Вы гордитесь тем, что делаете (другие видят это)
  • Вы глубоко заинтересованы в этом. Тот простой факт, что вы достигаете чего-то, дает вам высокое удовлетворение
  • делая это позволяет вам интересные социальные взаимодействия

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

Самый эффективный, но самый сложный - первый.

Если вы делаете программное обеспечение, выпустите его!

user2567
источник
0

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

Аюш Гоял
источник
0
  1. Убедитесь, что никто не реализовал то, что вы пытаетесь сделать дома.
  2. Убедитесь, что вы заинтересованы в том, что будет результатом вашей работы на дому.
  3. Убедитесь, что другие люди, кроме вас, думают, что им будет интересно увидеть результат вашей работы дома.

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

Я согласен со многими другими комментариями, такими как выбор тем, которые вы любите, и работа с технологиями, которые не используются на работе.

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

Крис
источник
0

Я не. Если у меня нет мотивации писать код в определенный день, неделю или месяц, я иду и делаю то, что мне хочется.

Это ваше свободное время, вы не должны заставлять себя делать то, что вы не хотите делать - вот для чего работа ...

Джон Хопкинс
источник
0

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

Yash
источник
-1

Приходите к себе на работу в 8 часов утра, только чтобы потратить 2 часа на работу над проектом в столовой внизу (затем идти на работу). :) Свежий мозг будет держать вашу производительность стабильной, а поток мотивации не исчерпан.

оборота AareP
источник
-1

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

Стивен Фурлани
источник
1
Хотя эта ссылка может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными, если связанная страница изменится.
Джалайн
@ Жалайн правда? Это почти 2 года, и есть много, много лучших ответов над ним.
Стивен Фурлани
1
Привет, Стивен, извини, что беспокою тебя. это сообщение печатается автоматически, когда я «проверяю» (ознакомьтесь с новой «бета» системой проверки ») ответы низкого качества (несколько слов). Ничего личного. Я просто хочу указать, что этот ответ следует либо отредактировать, либо удалить. Я могу удалить это если хочешь.
Джалайн
@ Жалайн Нет, это круто. Я расширил это, поскольку я понял, что это был плохой ответ так или иначе.
Стивен Фурлани