Быстрый старт

Как быстро запускать личные проекты.
26 апреля 2017225057Андрей Никифоров65442536


Louis Smith, unsplash.com

Пару месяцев назад я запустил pianoramaradio.ru за один день. Если бы я не управился за день, то не запустил проект вообще. Расскажу о том, что я понял о запуске личных проектов.

Делайте минимум

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

Для стриминга музыки я использовал Icecast + Ices — самое простое, что можно использовать. Можно было бы использовать более продвинутое ПО, но на его поиск, настройку и отладку ушло бы время.

Все улучшения можно сделать потом. Сначала нужно запустить минимальный рабочий вариант.

Упрощайте процесс

Когда я выбирал музыку, то не закачивал её на сервер по одному файлу. Вместо этого я собрал все подходящее и залил на сервер одной командой через scp.

Конфиг Nginx я скопировал из другого проекта и подправил под свои нужды, вместо написания с нуля, а конфиг Ices скопировал с первого попавшегося форума и подправил в нужных местах.

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

Параллелизуйте

Многие процессы стоит делать параллельно. Скажем, делегирование домена после регистрации занимает несколько часов, поэтому первым делом я оплатил домен, а уже потом занялся остальным. Аналогичная история с DNS-записями.

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

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

Ставьте ограничения

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

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

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

Мотивируйте себя

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

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

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

Памятка

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

Всем запусков!

Новые комментарии