Pull to refresh
0
0
Сергей @KommanderSER

TeamLead

Send message

Реализация взаимодействия с БД через Middleware в Telegram-ботах

Level of difficultyEasy
Reading time6 min
Views3.4K

Когда я начинал писать своих первых ботов с использованием базы данных, их код был очень плохим: он расходовал лишние ресурсы, а также была плохая архитектура проекта. Поэтому я хочу поделиться с вами своими знаниями, чтобы вы не наступали на те грабли, на которые наступал я. В проекте бота, который будет использован в качестве примера в данной статье, я использовал такие технологии, как aiogram, SQLAlchemy, alembic и Docker. В качестве СУБД выступает PostgreSQL. Приятного чтения!

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments7

Новые горизонты баз данных: 8 тенденций в управлении информацией

Reading time14 min
Views4.8K

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

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

Читать далее
Total votes 13: ↑9 and ↓4+5
Comments3

Рекомендации при работе с PostgreSQL

Level of difficultyMedium
Reading time10 min
Views24K

Доброго времени суток. Основываясь на своём опыте хочу представить некоторые рекомендации при разработке кодовой базы на SQL.

Данные рекомендации получены горьким опытом, так что надеюсь, они Вам помогут :)

Читать подробнее и больше не косячить
Total votes 57: ↑54 and ↓3+51
Comments53

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

Level of difficultyEasy
Reading time5 min
Views8.8K

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

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

Меня зовут Камиль Калимуллин, я — IT-предприниматель, основатель компании AdvantShop и крупнейшей региональной IT-конференции «Стачка».

В 2023 году на «Стачке» выступила Вера Маневич, HRD с крепким опытом работы в IT, ментор и преподаватель MBA. Она много лет исследует тему офбординга и уверена, что это ключевой навык всех руководителей и HR. 

Делюсь видео доклада Веры и основными тезисами выступления.

Читать далее
Total votes 16: ↑9 and ↓7+2
Comments9

Telegram bot для наших bmw G серии часть 2

Level of difficultyEasy
Reading time7 min
Views2.4K

В первой части постарался объяснить зачем мне это все надо и дал пояснение - как я достаю данные с авто. В данной части разберемся как выслать эти данные в телегу чтобы получать сообщения наподобие вот этих:

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments2

Telegram bot для наших bmw G серии

Reading time3 min
Views4.9K

Итак, однажды мне пришла мысль сделать что-то большее, чем доступно в официальном myBMW приложении. В приложении все вроде ок, но чувство добавить чего-то своего не покидало меня. Немного покопавшись в могучем и необъятном интернете нашел библиотеку bimmerconnected на Github. Каково было мое удивление, что достать данные со своих авто оказалось не очень сложно. С этого и начался мой долгий и упорный труд небольшой оптимизации под себя моих же авто, а точнее их информационной составляющей. Прошу не пинать меня за предоставленный код ниже, я не являюсь серьезным программистом, а всего лишь занимаюсь АСУТП.

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments14

9 архитектурных антипаттернов при разработке телеграм-ботов на Python

Level of difficultyEasy
Reading time17 min
Views15K

Привет, Хабр! Если вас заинтересовал заголовок этой статьи, значит, вас интересует созданием телеграм-ботов, и вы стремитесь к совершенству в этом. Разработка телеграм-ботов требует не только креативности, но и правильной архитектуры. В этой статье мы рассмотрим 9 архитектурных антипаттернов, которые могут стать серьезными преградами на вашем пути к созданию бота.

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

Читать далее...
Total votes 21: ↑14 and ↓7+7
Comments6

Как сделать вашего телеграм-бота лучше? Конечно, добавить ему аналитику

Level of difficultyEasy
Reading time25 min
Views12K

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

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

В этой статье мы рассмотрим как реализовать аналитику для телеграм-бота.

Читать далее
Total votes 15: ↑13 and ↓2+11
Comments2

Архитектура высоконагруженных телеграм-ботов на Python

Level of difficultyMedium
Reading time22 min
Views23K


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

Мессенджеры стали нашими неотъемлемыми спутниками, а их потенциал не ограничивается простым обменом сообщениями. Боты обеспечивают автоматические решения задач, которые ранее требовали участия человека. Они работают как виртуальные ассистенты, способные отвечать на вопросы, предоставлять информацию, обрабатывать заказы, делать рекомендации и многое другое.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments13

Создание telegram-ботов с интерактивным меню

Level of difficultyMedium
Reading time15 min
Views35K

Однажды меня попросили провести ревью и рефакторинг одного telegram-бота. Увидев файл размером 2000 строк, рассчитанный только на обработку разных меню я понял, что это требует унификации и общих подходов. Так родилась библиотека aiogram-dialog

В этой статье я бы хотел обратить внимание на некоторые проблемы, которые мы встречаем при создании таких меню, предложить варианты их решения. А во второй половине статьи показать как это решается с помощью aiogram-dialog.

Мы не будем рассматривать архитектуру всего приложения, об этом вы можете прочитать у Фаулера или Мартина. Мы поговорим только про определенную часть UI ботов. Так же это не будет введением в разработку telegram-ботов с нуля. Я предполагаю, что читатель знаком с питоном, ООП и слышал о такой вещи как DRY.

Примеры выбраны так, чтобы проще было показать определенные проблемы, но это не единственные сценарии приводящие к ним.

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments4

Как мы использовали Telekube для удаленной отладки приложений в Kubernetes

Reading time7 min
Views1.9K

Привет, Хабр! Эта статья расскажет о способе, который мы в Just AI придумали и реализовали для локальной разработки и отладки сервиса, работающего в Kubernetes.

Допустим, у нас есть некий компонент (ядро системы), который обычно запускается в Kubernetes и имеет множество взаимосвязей с другими сервисами. У компонента два сетевых интерфейса, которыми активно пользуются другие части системы, также развернутые в Kubernetes. Наша задача — научиться запускать его в IDE на своем ноутбуке в режиме отладки, чтобы максимально удобно и быстро отлаживать этот компонент. Telekube предоставляет возможность это сделать

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments2

Как быстро выбирать языковые модели (LLM) под свои задачи

Level of difficultyMedium
Reading time6 min
Views12K

Последние полгода я активно занимаюсь разработкой сервисов на базе больших языковых моделей, они же «LLM». Для каждого проекта мне приходится подбирать модель по определенным критериям: языковая поддержка, требования к памяти, типу (instruction-based или completion), скорости генерации и т.п. Первое время я использовал платформу HuggingFace, где ежедневно публикуются около сотни новых моделей. Но кто им пользовался, знает, насколько там неудобный и слабый поиск: даже точные совпадения по названию он иногда не выдаёт. Плюс к этому, приходится тратить достаточно времени, чтобы найти и сравнить модели по нескольким критериям. В этой статье я расскажу, как решил проблему выбора языковых моделей.

Читать далее
Total votes 31: ↑29 and ↓2+27
Comments25

Локальные нейросети. Аналог ChatGPT-3.5 на домашнем ПК: OpenChat 7B превосходящая 70B, DeepSeek для кода уровня ChatGPT

Reading time8 min
Views78K

Есть много локальных аналогов ChatGPT, но им не хватает качества, даже 65B модели не могут конкурировать хотя бы с ChatGPT-3.5. И здесь я хочу рассказать про 2 открытые модели, которые всё-таки могут составить такую конкуренцию.

Речь пойдет о OpenChat 7B и DeepSeek Coder. Обе модели за счет размера быстры, можно запускать на CPU, можно запускать локально, можно частично ускорять на GPU (перенося часть слоев на GPU, на сколько хватит видеопамяти) и для такого типа моделей есть графический удобный интерфейс.

И бонусом затронем новую модель для качественного подробного описания фото.

UPD: Добавлена информация для запуска на Windows с ускорением на AMD.

Читать далее
Total votes 107: ↑105 and ↓2+103
Comments87

Kubernetes на AWS: пошаговое руководство

Reading time7 min
Views4.1K

В этой статье мы рассмотрим несколько распространенных способов создания кластера Kubernetes на AWS:

Создание кластера с помощью kops: kops — это инструмент, предназначенный для промышленной эксплуатации, используемый для установки, обновления и управления Kubernetes на AWS.

Создание кластера с помощью Amazon Elastic Kubernetes Service (EKS): EKS — это управляемый сервис Kubernetes, предоставляемый компанией Amazon. Кластер Kubernetes с EKS можно создать с помощью AWS Management Console.

Создание кластера с помощью Rancher: Rancher — это платформа управления Kubernetes, которая упрощает развертывание Kubernetes и контейнеров.

Читать далее
Total votes 11: ↑8 and ↓3+5
Comments5

Фаззинг с AFL++. Знакомство

Level of difficultyEasy
Reading time9 min
Views4.1K

Для реверсера, пывнера и бинари ресерчера очень важно уметь фаззить, поэтому данные статьи посвященны новичкам, которые только начинают фаззить и знакомятся со зверьком - AFL++.

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

Упражнение 1 - Xpdf

В этом упражнении мы проведем фаззинг просмотрщика Xpdf PDF. Цель - найти сбой для CVE-2019-13288 в XPDF 3.02.

Чему вы научитесь

После выполнения этого упражнения вы будете знать основы фаззинга с помощью AFL

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments2

Атакуем WiFi или NodeMCU на службе сил зла

Reading time9 min
Views5.1K

О макетной плате NodeMCU можно найти немало статей на просторах Хабра. Авторы предлагают управлять шторами, включать освещение и выполнять другие операции с ее помощью для создания умного дома. Однако это небольшое устройство можно использовать и при тестировании на проникновение.

NodeMCU — это платформа на основе модуля ESP8266. Отличием этой платы от других Arduino подобных решений является наличие встроенного модуля WiFi. С помощью этого модуля мы можем управлять различными схемами на расстоянии посредством передачи сигнала  через Wi-Fi. Для NodeMCU написано множество различных библиотек и помимо прочего на ней можно реализовать точку доступа. Да, для создания полноценной точки доступа к плате необходимо подключать Ethernet модуль, но как вы увидите далее, для тех задач, которые мы будем реализовывать, нам отправлять трафик дальше совсем не обязательно.

Читать далее
Total votes 10: ↑9 and ↓1+8
Comments4

Как я статистику git парсил

Level of difficultyEasy
Reading time9 min
Views26K

Работаю я в бюрократизированной конторе с плохими процессами. Текучка тут достаточно большая. Люди приходят и уходят. Менеджмент на уровне дна. В какой-то момент в команду докинули нового разработчика (с неясными целями и задачами). Ну вроде парень умный, вроде что-то делает, вроде не просто так.

Спустя четыре месяца (испытательный закончился) у многих закрались подозрения, что на самом деле парень ничего не делает. Но как доказать это со стороны объективно? Решили посмотреть историю коммитов. Оказалось, он почти не коммитил (последний месяц вообще перестал), а на совещаниях ссал в уши ездил по ушам. Парень продолжил работать на прошлой работе и был преподом на курсах. Такой вот overemployed, с двумя зарплатами по ставке синьора.

Ему предложили перевестись в другой отдел. Менеджеру все сошло с рук. Часть разрабов сидела с лицами «‎а что так можно было?»‎. А я понял, что нельзя так просто взять и посмотреть статистику коммитов.

Велосипед через 3, 2, 1...
Total votes 98: ↑92 and ↓6+86
Comments50

Клонирование голоса, замена лица по фото, удаления объектов в видео и все в одном open-source проекте Wunjo AI

Level of difficultyEasy
Reading time4 min
Views27K

Привет, читатель! В этой статье вы погрузитесь в захватывающий мир новых возможностей для создания дипфейков и синтеза речи в Wunjo AI v1.5, проект полностью с открытым исходным кодом. Вы узнаете о последних фичах, которые позволяют помимо синтеза речи, теперь клонировать голос из аудиофайлов или даже в режиме реального времени, меняют лица на видео с использованием всего одной фотографии, удаляют объекты с видеороликов и значительно повышают качество дипфейков с помощью нейронных сетей для ретуширования. К тому же остается возможность создавать анимацию лица из обычных картинок и анимирования движение губ по аудио в Wunjo AI, Вы не только увидите и услышите результаты этих функций, но и окунетесь в мир приложения, которое делает это возможным.

Важно отметить, что Wunjo AI с открытым исходным кодом доступен для установки локально на операционных системах Windows, Ubuntu и MacOS, и это абсолютно бесплатно, без ограничений.

Готовы? Погнали!
Total votes 34: ↑33 and ↓1+32
Comments37

Необычный дуалбут: ноутбук с «двойным дном»

Reading time15 min
Views80K

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности
Total votes 361: ↑357 and ↓4+353
Comments122

Linux с двойным дном

Level of difficultyMedium
Reading time13 min
Views49K

Кулхацкеры всех стран — соединяйтесь!

Если у вас паранойя, это не значит, что за вами не следят.

В этой статье я расскажу как сделать так, чтобы ваша линуксовая машинка выглядела невинной игрушкой, но при вводе нескольких команд превращалась в настоящую боевую единицу. Конечно, у вас могут найти на диске сектора с необычно высокой энтропией, несколько подозрительных системных настроек, но никаких явных зашифрованных разделов, файлов, или сторонних шифровалок. Конечно, вас могут спросить - "а для чего тебе cryptsetup, сынок?", на что вы ответите - "это же Linux Mint, это всё искаропки!" Хуже, если бы вас спросили: зачем ты используешь LUKS, или, что ещё хуже, зачем ты поставил VeraCrypt или Shufflecake.

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

Главное в системе с двойным дном - это, конечно же, секретные зашифрованные разделы, которые нигде не отсвечивают. Мой способ - это...

Читать далее
Total votes 65: ↑65 and ↓0+65
Comments82

Information

Rating
Does not participate
Location
Ingolstadt, Bayern, Германия
Date of birth
Registered
Activity