Перейти к содержанию

Рубрика «Программирование»

Тестовое задание с неожиданным результатом

На темно-сером фоне надписи: Python, SQLAlchemy, MySQL, Flask, Bootstrap, Pydantic

Всем привет! Сейчас я нахожусь в поиске работы, поэтому откликаюсь на вакансии Python разработчика. Иногда hr-менеджеры находят меня сами (да, такое случилось целых два раза). Именно так произошло на прошлой неделе. Давайте я не буду держать интригу, чтобы сэкономить ваше время, так как текст получился большим. По итогу выполнения тестового задания я получил предложение о …

Telegram бот «Работа для всех»

На фото автор проекта. Мужчина средних лет в черной футболке и очках на плюс!

Всем привет! Сегодня я делаю то, чего никогда не делал, но очень хотел это сделать. Сегодня я презентую первый разработанный мною проект — Telegram бот «Работа для всех», который помогает людям с инвалидностью искать вакансии. Впрочем, давайте все по порядку. 2023 г. был для меня одним из самых сложных, но очень интересных периодов в моей …

Docker и Docker Compose для бота

На темно-сером фоне надпись Docker

Ох уж этот Docker, а с ним и Docker Compose… Хотя давайте все по порядку. По моему плану, деплой Telegram бота на сервер должен быть осуществлен с помощью  средств контейнеризации. На данный момент я более или менее знаком с Docker и Docker compose. Именно с помощью этих инструментов на учебе в Яндекс.Практикуме мы деплоили сайты, …

Переезд с SQLite на PostgreSQL

На темно-сером фоне надпись: Переезд с SQLite на PostgreSQL

Ранее я уже писал о том, что в процессе разработки бота буду использовать SQLite. Выбор мотивирован тем, что это достаточно легкая БД, для использования которой ничего дополнительно устанавливать не надо. А вот в production я буду использовать PostgreSQL. Конечно, никто не мешает сразу вести разработку с использованием PostgreSQL, но компьютер у меня не такой мощный, …

Фильтрация и конечные автоматы

На темно-сером фоне надпись: filters and FSM

Фильтрация и использование состояний (конечные автоматы) для работы Telegram bot являются важными составляющими. Как фильтры, так и состояния, помогают последовательно собирать данные пользователя, для дальнейшей работы с ними. Я подошел к этому вопросу серьезно и написал собственные фильтры.

Генерация inline клавиатур

на темно-сером фоне надпись: generation inline keyboards

В прошлом отчете о своей работе над Telegram ботом Work for Everyone я поведал себе и вам о создании основы для работы с данными. В частности, создал таблицу, в которую загрузил данные регионов. Эти данные будут использоваться для генерации клавиатуры, а также для иных целей. Постановка задачи Первая inline клавиатура мне нужна в хендлере, который …

База данных для Telegram bot

На темно-сером фоне несколько надписей: Work for everyone, Peewee ORM

Для дальнейшей реализации логики бота мне необходимо проработать вопросы, связанные с хранением и обработкой данных. Первые хендлеры, обрабатывающие команды /start, /help, нажатие кнопок  «Готов!», «Справка по боту» и кнопки «Начать ввод данных» не требовали какой-то сложной логики и данных. Все тексты я брал из ранее созданного словаря, и этого было достаточно. Однако далее мне необходимо …

LeetCode: Two Sum

На темно-сером фоне надпись: LeetCode: Two Sum (Python)

Продолжаю решать задачи на LeetCode для тренировки мозга и создания новых нейронных связей! Сегодня передо мной стоит задача из разряда легких под названием Two Sum. Условия задачи На вход функции передается список целых чисел (nums) и одно целое число (target). Необходимо вернуть список, состоящий из индексов двух чисел из списка nums. При этом сумма этих …

Telegram bot: обработка команд start и help. Inline кнопки

На темно-сером фоне несколько надписей: Work for everyone, '/start', '/help'.

Повествование о разработке бота Work for everyone продолжаю с описания хендлеров, отвечающих за обработку команд /start и /help. Кроме того, сразу же напишем хендлер, который будет отвечать на сообщения, обработка которых пока еще не реализована и не будет реализована в будущем. Это нужно для того, чтобы пользователь, который случайно отправил не то, что от него …

Telegram бот Work for everyone

на темно-сером фоне надпись: Work for everyone и логотип Telegram.

Telegram bot Work for everyone – альтернативный интерфейс поиска и просмотра вакансий для людей с инвалидностью в России. Начало разработки.