Разработчик-самоучка из деревни: делаю кино-соцсеть с нуля
Разработчик-самоучка из деревни: делаю кино-соцсеть с нуля

Разработчик-самоучка из деревни: делаю кино-соцсеть с нуля

Личный пост. Про то, почему я уже полгода пишу сайт по ночам — между больничными палатами и тем, что сваливается на голову. И про то, что у меня уже получилось.

Меня зовут Олег. Мне 37. Живу в деревне.

Всё, как в заголовке: сайт я делаю сам — в одиночку, без команды, без инвесторов, без офиса. IT-образования у меня нет. Программировать учился сам, с 2006 года, когда у меня впервые появился интернет.

Эта статья состоит из двух частей:

  • первая — про то, почему я за это вообще взялся. Мне этот текст даётся трудно, но рассказать надо;
  • вторая — про то, что уже работает, как устроен сайт, и что я планирую дальше.

Если личный контекст не интересен — просто скрольте к части «Что это за сайт». Я не обижусь.

Часть 1. Как я до этого докатился

До всего

Образование у меня среднее техническое. Пятнадцать лет я отработал машинистом локомотива в карьере — тяжёлая, вредная работа, но своя. Была смена, была зарплата, был дом, была мама, были родные. Для меня этого всегда хватало.

А потом жизнь начала меняться.

2014. Мама

В 2014 году у мамы обнаружили рак.

С того дня моя жизнь разделилась на «до» и «после». Одиннадцать лет мы вместе через это идём — химия, лучи, операции, снова химия. Были периоды, когда казалось: вот-вот справимся. Были периоды, когда было страшно.

2022. Брат

В 2022 году умер мой родной брат.

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

2025. Снова тяжело

В этом году маме стало хуже. Сделали два курса химии — не помогло. Стало только тяжелее, сильнее боли.

Здесь хочу сразу уточнить один важный момент — иначе будет недопонимание. Дело не в том, что «медицина бессильна». Дело в том, что мы перепробовали всё, что доступно обычным людям «бесплатно» (в кавычках) — через ОМС, по квотам, через стандартные больничные протоколы. Оно не работает.

А то, что есть нового в мире против рака — современные таргетные препараты, иммунотерапия, клинические исследования, — стоит таких денег, которых у меня сейчас нет.

Помощь где-то есть. Просто она не для всех.

Я бросил работу. Не потому что легко это далось — а потому что понял: совмещать больше невозможно. Машинист локомотива в карьере — это сменная работа, это ответственность, это «не отлучиться посреди смены». А маме стало нужно, чтобы я был рядом каждый день — возил по больницам, ухаживал, просто был.

Выбор оказался простой: либо работа, либо мама. Я выбрал маму.

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

Кто со мной рядом

Один я бы не выстоял.

  • Маму держат её родные — сёстры и брат. Они знают её всю жизнь. Приезжают, поддерживают. Им огромное спасибо.
  • Меня держат мои двоюродные сёстры. Звонят, приезжают, не дают провалиться. Без вас было бы в сто раз тяжелее.
  • И отдельно — моя девушка. Мы вместе с 2023 года. Она со мной каждый день — в самые тёмные моменты и в обычные серые будни. Без неё я бы не справился.

Спасибо всем.

Откуда вообще сайт

Я с детства был помешан на компьютерах.

В 2006 году у меня впервые появился интернет — и это была магия. Кто помнит то время, тот поймёт: звук модема при дозвоне, скорость 14-33 Кбит/с, картинки грузились сверху вниз как в старых фильмах. И всё равно — целый новый мир, который открывается у тебя дома.

Я начал делать свои первые сайты на Ucoz. Ковырялся, ломал, снова ковырялся. Читал форумы, разбирался с HTML и CSS, потом постепенно с JavaScript. Учителей у меня не было — был интернет и желание.

Позже увлёкся программированием на Lua — писал модификации для FiveM (это GTA-сервера, если кто не в теме). Опять же — сам, по мануалам и чужому коду. Просто потому что нравилось.

Это была моя мечта — сделать что-то своё в интернете. Настоящее, не поделку. Но жизнь шла по-своему: карьер, смены, усталость, быт. Мечта лежала где-то в шкафу и ждала.

Почему я взялся именно сейчас

Три причины.

Первая — хочу быть полезным. Не просто «заработать».

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

Мне не хватает на мечту.

А мечта у меня простая — вылечить маму. Или хотя бы помочь ей прожить последние годы легче.

У мамы помимо рака ещё и сахарный диабет 2 типа, она инвалид 1 группы. В обычных больницах, когда мы приходим с вопросом «что ещё можно сделать», врачи разводят руками. В онкологическом отделении на последнем приёме сказали прямо: «будем надеяться, но чуда ждать не приходится».

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

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

Я хочу быть полезным. Реально, не на словах. Вот ради чего всё это затеяно.

Вторая — моя детская мечта.

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

Третья — кино.

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

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

Хочется сделать наоборот. Сайт, где всё устроено для зрителя, а не для рекламодателя.

Что это за сайт https://vibemuvik.ru
Что это за сайт https://vibemuvik.ru

Часть 2. Что это за сайт

Проект называется VibeMuvik (vibemuvik.ru).

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

![Главная страница VibeMuvik] ← сюда скриншот 01-homepage-hero.png

Чего мне не хватало в других сервисах

Кинопоиск, IMDB, Letterboxd, Яндекс.Кино — все они хороши в чём-то своём. Но:

  • Кинопоиск — всё упёрто в рекламу и онлайн-кинотеатр.
  • Letterboxd — отличная идея, но весь на английском и русского кино там мало.
  • IMDB — гигантская база, но не сервис «что посмотреть вечером».
  • Яндекс.Кино — про подписку, не про сообщество.

Мне хотелось соцсеть про кино — где люди обсуждают фильмы, голосуют, спорят, рекомендуют, делятся настроением. Не ещё одну базу данных, а живое место.

Три фичи, которых, по-моему, нигде нет

1. Кино-ДНК — вкусовой профиль на 24 параметрах

Когда ты оцениваешь фильмы, система строит твой «кинематографический ДНК» — радар из 24 измерений: сколько в твоём вкусе драмы, ужаса, боевика, артхауса, классики, новинок; любишь ты интеллектуальное кино или адреналиновое, смотришь сериалы или только большие фильмы.

На основании этого ДНК сайт подбирает рекомендации. И — что важнее — ты можешь сравнить свой ДНК с другими людьми и найти «кинематографических двойников». На тесте это оказалось самой залипательной штукой проекта.

2. КиноПати — смотрим кино вместе в одной комнате

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

Видео и звук идут напрямую между пользователями — сайт только синхронизирует время плеера.

![Карточка фильма с кнопкой «Смотреть вместе»] ← сюда скриншот 02-movie-detail.png

3. Батл-арена

Каждый день — новый «батл дня»: два фильма, один голос от каждого зарегистрированного. Всё сообщество голосует, а на странице статистики видно рейтинг самых «побеждающих» фильмов. Плюс есть турниры — Битва года, Битва жанра, Битва эпохи.

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

![Батл-арена] ← сюда скриншот 03-battles.png

А ещё на сайте есть

Помимо трёх больших фич, которые я разобрал выше, на VibeMuvik целая куча разделов. Кратко по каждому:

Личный профиль. Каждый пользователь ведёт свою кино-историю: списки «Хочу посмотреть», «Уже посмотрел», свои оценки, отзывы, медиа-альбом (фото / аудио / видео по ссылкам с внешних платформ), друзья, подписки, лента активности, собственный блог.

Фильмы по настроению. Самое востребованное по первым откликам. Выбираешь настроение — «Грустный вечер», «Хочу адреналина», «Нужно задуматься», «Вспомнить детство» — и получаешь список фильмов, подходящих именно под это состояние.

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

Кино-рулетка. Не хочешь выбирать сам? Крути рулетку — случайный фильм из каталога. Можно тут же запустить его через КиноПати с друзьями.

Скоро в кино. Отдельный раздел про премьеры: какие фильмы выходят в ближайшие недели, с постерами, датами и трейлерами. Удобно планировать поход в кинотеатр.

Новости кино. Автоматически обновляемая лента мировых кино-новостей с указанием источников.

Знаменитости. Страницы актёров и режиссёров: биография, полная фильмография, фото, рейтинги, интересные факты. В базе уже тысячи персон.

Турниры. Помимо ежедневных батлов — большие турниры на несколько дней: Битва года, Битва жанра, Битва эпохи. С сеткой плей-офф, финалом и победителем.

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

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

Дебаты и Кино-пара. Социальные механики: обсуждения спорных кинематографических вопросов и поиск «кинематографических половинок» по совпадению вкусов.

Премия VibeMuvik. Раз в год сайт выдаёт собственные награды на основании голосов сообщества.

Зал Славы. Архив победителей батлов, турниров и премий — кино-история сайта.

Что под капотом

Коротко, без лишней детализации:

  • Фронтенд — Next.js 14 (App Router), TypeScript, Tailwind CSS
  • Бэкенд — FastAPI (Python), SQLAlchemy, PostgreSQL 16, Redis
  • Real-time — WebSocket для КиноПати, WebRTC + TURN для видео/голоса

Стек подбирал по одному принципу: что один человек реально может поддерживать в одиночку. Никаких Kubernetes, микросервисов и модных штук — всё максимально просто и предсказуемо.

Как собирается контент

Объясню честно, но без лишних деталей.

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

Раздел новостей кино работает аналогично: парсится из открытых RSS-лент западных изданий (Variety, The Hollywood Reporter, IndieWire, /Film, The Film Stage и другие), материал перерабатывается на русский язык с обязательным указанием источника. Это не копия — это пересказ, и формально он подпадает под ст. 1274 ГК РФ (свободное использование в информационных целях).

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

Что уже работает (честный чек-лист)

  • Каталог 9700+ фильмов и сериалов с картинками, описаниями, ИИ-рецензиями
  • Поиск с фильтрами, тегами, умной сортировкой
  • Регистрация, профили, подписки, друзья
  • Отзывы, лайки, комментарии, ленты активности
  • Медиа-альбомы у пользователей (фото / аудио / видео по ссылкам с внешних источников)
  • Кино-ДНК на 24 параметрах
  • Батлы дня + турниры
  • КиноПати с WebRTC-видео и голосом
  • Админ-панель (премодерация, бан-система, конструктор главной, статистика)
  • SEO: Яндекс проиндексировал 9191 URL с нулём ошибок, Google индексирует постепенно
  • Двухфакторка, CSRF-защита, бан по причинам, лимиты на действия

Честные цифры

Не стал раздувать — вот как есть на апрель 2026:

МетрикаЗначениеСрок разработки6 месяцев (с октября 2025)Команда1 человек (я)Бюджет0 ₽ (+1200 ₽/мес хостинг)Дневная аудиториядесятки реальных людейПроиндексировано в Яндексе9191 URL, 0 ошибокВсего страниц на сайте~9700

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

Что впереди

Что в ближайших планах (в порядке важности):

  • Мобильное приложение (пока только адаптив)
  • Stories про фильмы (24h-формат)
  • Рекомендации через pgvector (сейчас — самописная евклидова метрика по 24-мерному вектору ДНК)
  • «VibeMuvik Wrapped» — персональная годовая кино-статистика, как у Spotify
  • Групповые чаты и голосовые сообщения
  • Уведомления через WebSocket в реальном времени

Зачем я это пишу

Честно — по двум причинам.

Первая. Мне нужны реальные пользователи и обратная связь. Если вам хоть чуть-чуть интересно — зайдите на vibemuvik.ru, просто потыкайте, зарегистрируйтесь, оцените пару фильмов. Чем больше людей с разным вкусом, тем точнее работает Кино-ДНК и интереснее батлы. Любой фидбэк, критика, баги, идеи — приму всё. Мне нужны не комплименты, а честная обратная связь.

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

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

Спасибо всем, кто дочитал.

P.S. Маме я эту статью пока не показывал. Может быть, покажу. А может — нет. Посмотрим.

1
Начать дискуссию