Найти в Дзене

Где найти друзей для изучения языков, просмотра сериалов, чтения книг и тд.

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

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

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

Вот как она выглядит:

Хотелось просто показать как это выглядет в маштабе, текстовый вариант ниже
Хотелось просто показать как это выглядет в маштабе, текстовый вариант ниже
От некоторого отказался, некоторое видоизменил.
От некоторого отказался, некоторое видоизменил.

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

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

первые шаги
первые шаги

Что получилось в итоге?

Вот что:

Основная часть функционала
Основная часть функционала

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

Всего на создание бота ушло 3-4 месяца, много усилий (перевалило за 4 тыс. строчек кода, что больше связано с тем, что я плохо пишу) и моментов самозабвенной работы. Однако создавать свой проект было очень прикольно и принесло много опыта.

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

TimmyMate