June 22, 2023

Женя

Что служит мотиватором начать свой проект?

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

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

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

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

Потом поделился идеей с тогдашним коллегой по работе - он говорит: “Давай планировать”. Поделили на части, приоритизировали по актуальности. И сейчас в разработке сервис сбора денег.

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

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

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

И тут на сцену выходит open-source. С появлением платформ хостинга кода участие в чужих проектах стало достаточно тривиальным делом. Идешь на GitHub или GitLab, подбираешь себе проект по интересам и ревьювишь код, закрываешь задачи, предлагаешь изменения.

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

Стал искать, какие есть варианты. Для вещания видео есть PeerTube (аналог YouTube, написан на Python), для публикации фото есть Pixelfed (аналог Instagram, написан на Laravel/php), для организации музыки есть Funkwhale (аналог Spotify, написан на Django|python).

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

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

Самый простой пет-проект, который можно придумать и вести самостоятельно - это блог. У меня таких несколько. К тому же ведение блога помогает чётче излагать свои мысли и создавать “личный бренд”.

Нужно понимать, что любой проект требует времени, поэтому если его нет, то и начинать заниматься им в общем-то не стоит. Другой момент - для начала своего проекта лучше воспользоваться правилом пяти почему от Сакити Тоеда (см. wikipedia.org): это предотвратит серьезную потерю времени, если проект задумывается достаточно сложным. Ну, и в идеале, не делать проекты одному: силу коллективной мотивации не стоит недооценивать.

← Вернуться к дайджесту