Никита Колмогоров, создатель бота Shieldy: «Главный совет: не пилить продукт годами»

«Я наполовину разработчик, наполовину предприниматель. Если я могу построить что-то быстрое и эффективное, я делаю это сам», — презентует себя на своем сайте Никита Колмогоров. Летом 2021 года он продал бота-антиспамера за 329 000 $. Покупателем стал криптопроект 1inch.io. На момент сделки у бота было 20 703 474 пользователя в 190 621 чатах. Вместе с тем Колмогоров — автор почти трех десятков других проектов. По просьбе Мегаплана он рассказал об особенностях создания продуктов для Telegram и дал несколько советов начинающим предпринимателям.

Никита Колмогоров, создатель бота Shieldy: «Главный совет: не пилить продукт годами»

Бот Shieldy

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

За два дня написал первую версию Shieldy. Это было в 2018 году. Новички в чате либо проходили небольшую капчу, либо отправлялись в бан. Потом несколько лет я добавлял одну новую функцию за другой. Основная часть оставалась простой: добавил бота в чат, дал ему админку — забыл про спам.

Никаких новых решений тут нет, я видел подобное в старых веб-чатах еще в 2007 году.

Очевидные конкуренты Shieldy — это ComBot Федора Скуратова, Controller Bot Олега, а недавно появился бот Miss Rosa. Конкуренты зачем-то пытаются сделать все-все-все в одном боте. Я придерживаюсь немного другой философии: каждый продукт с одной целью-функцией.

На момент их запуска у Telegram был самый удобный API для разработчиков. Facebook Messenger ограничен, группы там редко используются, социальный рост бота обеспечивать тяжело. У остальных мессенджеров типа Viber и WhatsApp плохой API, не могу с ними работать.

Сегодня у меня еще 25 других проектов. Я хочу дойти до миллиарда пользователей, сейчас их более 60 миллионов.

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

Идеи, польза и инвесторы

Идеи создания ботов возникают так же, как и для других продуктов. Вижу «боль» — записываю в длинный список идей, которые потом, может, и реализую. В списке есть даже самые безумные, ненужные, глупые или нереализуемые мысли.

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

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

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

Особенности ботов в «телеге»

Одна из проблем ботов в Telegram: они не могут писать пользователям первыми. Поэтому капчу нельзя пройти в личке — только в общем чате. Бот может писать пользователю определенное количество сообщений в час.

Bot API — это то, что мы видим в прямом смысле на bot.telegram.org/api. Это описание основных кейсов и методов работы с ботами в чате.

User API используют все пользователи — телеграм-клиенты. Через него тоже можно делать ботов. Но нет удобных фреймворков под TypeScript или JavaScript, которые я использую.

Поддержка Telegram по ботам не всегда работает быстро и эффективно. Есть ряд хардверных ограничений Telegram API (я так понимаю, что на Telegram API и Telegram Bot API работают две команды).

Каждый раз, создавая популярных ботов, я натыкаюсь на ограничения Telegram. Одно время Shieldy слишком часто делал запросы к Telegram — потому что бот стал очень популярным, — и это давало сбой в работе мессенджера. Компания получает миллиарды долларов, и я — маленький, с серверами по 20 $ — довожу их серверы до 504-й ошибки.

Создаю разработчиков, а не ищу их

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

Код Shieldy в открытом доступе, любой может посмотреть на технологический стек. Это Node.js, TypeScript, Telegraf.js, Mongo.

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

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

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

В моем боте Temply реализованы 4 шага: пройти джаваскрипт-курсы, пройти курсы по NodeJS, разобраться в TypeScript, написать определенный код в определенном репозитории. Эти шаги я выдаю постепенно: один шаг закончен — я даю следующий.

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

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

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

Расходы и инвестиции

Я вложил в регистрацию компании в Канаде сумму в 350 $. Она называется Borodutch Labs Inc. Через нее оплачиваю работу контрактерам.

Я выступил соучредителем еще в одной компании. Недавно в нее инвестировали Samsung, Slow Ventures (они вкладывали в CoinBase, Robin Hood, Citizen) 655 000 $. Эта компания развивает псевдонимную социальную сеть Dosu. Там нет привязки к личности, но можно использовать социальный капитал других площадок.

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

На оплату их труда в основной компании в месяц уходит около 2500 $. Если сравнивать с рынком, это сопоставимо с зарплатами одного сеньора или мидл+ в Европе или СНГ. А у меня четыре сотрудника, некоторые из них на частичной занятости. Стараюсь делать так, чтобы все работали не более 40 часов в неделю. У всех должна быть личная жизнь.

На серверы трачу примерно 250 $ в месяц, на все проекты. Это копейки. Компания, конечно, зарабатывает гораздо больше.

Shieldy хостился на DigitalOcean на дроплете за 20 $ до покупки 1inch. Где он хостится сейчас и на каком сервере, лучше спрашивать у команды покупателя. Масштабировал тоже просто: в Node.js и в Mongo есть отличные встроенные инструменты как вертикального, так и горизонтального масштабирования. Минут 20 можно почитать документацию — и быстро все развернуть.

Токсичность в России и критика на глобальном рынке

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

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

Посмотрим на Reddit: у меня там есть критические комментарии, но они не токсичны. Человек может спокойно объяснить, где есть ошибки. Он не говорит: «Ха, лохонулся, у тебя ошибка, ахаха».

Хотите запускаться на русском комьюнити — пожалуйста. Но обязательно переведите бота хотя бы на английский. Voicy отчасти стал популярным, потому что на старте его перевели на 20–25 языков. Первые 50 тысяч пользователей пришли из Ирана. Для понимания: персидского языка в боте не было, потому что один из бесплатных движков отключил его у себя. Изначально в Voicy был персидский, что дало первых 50 тысяч пользователей из Ирана. Спустя примерно год, в 2018-м, движок бесплатного распознавания речи отключил персидский. В 2021 году у Voicy уже 12.6M+ пользователей.

Главный совет: не пилить продукты месяцами или годами, а запускать за 1–2 недели. Слишком много людей пишут что-то гигантское и комплексное, выпускают на рынок, а это оказывается никому не нужным.

Нужна польза, которую продукт будет приносить. Малую пользу большому количеству людей, либо огромную пользу малому количеству людей.

6060
17 комментариев
26
Ответить

Вот так читаешь комментарии, а потом фраза
Русскоязычная аудитория не любит платить, но очень любит ненавидетьначинает иметь все больше и больше смысла))

10
Ответить

чувак лепит ботов и продает? очень интересное занятие, в конце на смертном одре "что я сделал за всю свою жизнь? 20 ботов". скука смертная

3
Ответить

БОльшая часть людей и этим похвастаться не может.

17
Ответить

чувак лепит комментов и продает? очень интересное занятие, в конце на смертном одре "что я сделал за всю свою жизнь? 20 комментов". скука смертная

2
Ответить

Одно время Shieldy слишком часто делал запросы к Telegram — потому что бот стал очень популярным, — и это давало сбой в работе мессенджера. Компания получает миллиарды долларов, и я — маленький, с серверами по 20 $ — довожу их серверы до 504-й ошибки.

Если ловишь антифлуд, не значит что ты положил сервер телеги )

5
Ответить

504 — это не антифлуд. Весь антифлуд с Щилди сняли ещё в самом начале через поддержку.

2
Ответить