Где моя красная таблетка?

Привет! Я та самая девочка, которая вместо «привет» пишет в чат print(“Hello, world!”).

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

Меня часто спрашивают: «Как ты, гуманитарий в душе, вообще влезла в эту цифровую бездну?»Отвечаю. Это не была история любви с первого взгляда. Это была история «всё сломалось, а починить некому, придется самой». Итак, погнали.

Акт первый: «Копипаст и надежда»

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

Я полезла в Гугл. Нашла статью 2017 года, где было написано: «Просто вставьте этот токен». Я вставила. Бот не работал. Я вставила еще раз. Бот обиделся и выдал ошибку про telebot.apihelper.В тот момент я поняла, что просто копипастить — это путь самурая, который забыл меч. Нужно было понять, почему это работает.

Акт второй: «Мой первый баг, или как я плакала в подушку»

Я села за Python. Первые два дня я просто красиво оформляла переменные и давала им человеческие имена (super_important_bot, koteika). И тут я наткнулась на обработку сообщений.

Код:

python

[object HTMLPreElement]

Я думала, что это магия. Я думала, что @ — это смайлик, который программисты вставляют для красоты. Я удалила этот «смайлик» — и всё сломалось.

Друзья, если вы не знали: @ — это не смайлик, это декоратор. Я заплакала. Но потом выпила кофе и решила: «Раз эта палочка решает судьбу бота, я буду с ней дружить».

Акт третий: «Хелп, я пишу бота, а он отвечает не тем»

Самый смешной момент в моей карьере — это когда я написала команду /start. Бот должен был говорить: «Привет, красотка!». А он говорил: None. Потому что я забыла return.Я полдня объясняла своей кошке, почему так вышло. Кошка не поняла. Я пошла на Stack Overflow. Там мне сказали: «Девочка, у тебя функция ничего не возвращает, она просто красиво дышит».

С тех пор я всегда помню: если функция не возвращает — она просто бесполезно существует, как сериал, который вы смотрите ради фона.

Акт четвертый: «Боевое крещение вебхуками»

О, это была песня! Когда я перешла от простого поллинга к вебхукам (чтобы бот отвечал мгновенно, а не когда ему вздумается), я поняла, что такое настоящий ад.

Мне нужно было поднять сервер. Я полезла на хостинг. Там было столько кнопок, что я чуть не ушла в монастырь.— Настройте SSL-сертификат! — сказал Telegram.— Зачем? — спросила я.— А вдруг твой бот украдут хакеры и он будет всем говорить «ку-ку»? — ответил Telegram.

Я настраивала этот сертификат 3 часа. Когда всё заработало, я танцевала под Rammstein так, что соседи вызвали полицию (шутка, но было близко).

Акт пятый: «Я — девочка-оркестр»

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

Потому что быть разработчиком — это не «знать всё наизусть». Это «знать, что искать». И уметь гуглить быстрее, чем твой бот отвечает на запрос.

Бонус-трек: Честный совет новичкам

Если ты читаешь это и думаешь: «Боже, как же сложно!» — скажу тебе так.

  1. Твой первый бот будет тупить. Это нормально. Твой второй бот будет падать. Это тоже нормально. Третий бот — ты уже не будешь называть его «ботом», ты назовешь его «мой малыш».
  2. Кофе — это святое. Если я не пью кофе, я не могу писать код. Если я пью сок, я могу только смотреть видосики про серфинг.
  3. Никогда не пиши код после 2 часов ночи. Я написала один раз функцию, которая приветствовала пользователя, а прощалась с ним через 3 секунды. И назвала это «фича для быстрого общения». На самом деле это был баг. Но я выдала это за новую фишку, и все поверили! Ахах.

Финал. Я здесь, чтобы создавать

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

Всем мир, код и отсутствие багов! 🖤