Обновить
1024K+

Python *

Высокоуровневый язык программирования

709,66
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Мой первый open source проект с Cursor и Opus 4.6 — GenAI Prices Parser

Уровень сложностиСредний
Время на прочтение1 мин
Охват и читатели11K

Запустил свой первый open source проект. Задача простая, но полезная: автоматический сбор цен на LLM-модели всех основных провайдеров и загрузка в PostgreSQL для BI-аналитики.

Что делает:

Каждый день скачивает актуальные цены из базы pydantic/genai-prices (29 провайдеров, 1100+ связок провайдеров и моделей)

Раскладывает в плоскую таблицу: провайдер, модель, контекстное окно, цена input/output за 1M токенов, кэширование, аудио

Загружает в PostgreSQL: текущий снимок + историческая витрина для отслеживания динамики цен

Читать далее

Алгоритм Крускала и кишки лабиринтов

Время на прочтение5 мин
Охват и читатели7.6K

Алгоритм Крускала (также алгоритм Краскала) - алгоритм, который преобразовывает связный неориентированный граф в минимальное остовное дерево. На самом деле пока что непонятно, что делает он, поэтому разберём поподробнее.

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

Читать далее

Telegram Bot API 9.5: Пользовательские теги и форматирование времени

Время на прочтение3 мин
Охват и читатели8.9K

Всем привет!

Сегодня Telegram выпустил небольшое, но как всегда интересное обновление своего Bot API под номером 9.5. Оно оказалось компактным, но в нём есть один интересный момент с надеждой на будущие обновления...

Кстати, одно из нововведений было известно ещё два дня назад в моём ТГ. Подписывайтесь на канал «Код на салфетке», если интересны подобные новости и разборы!

Читать далее

Клиент заказал AI-бота. Но помог не он

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.9K

Клиент пришёл за AI-чатботом для поддержки — 200 обращений в день, четыре оператора, вечная текучка. Мы прочитали 500 тикетов глазами и обнаружили: 68% закрываются обычным API-вызовом, ещё 14% — формой-визардом. А вот AI понадобился совсем для другого — кластеризация жалоб выявила бракованную партию товаров до того, как проблема стала массовой.

Читать далее

Pandas на Python: От чтения CSV до сложной аналитики за 1 статью

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели17K

Сколько раз вы пытались открыть в Excel файл на пару миллионов строк и смотрели на зависший белый экран под звук взлетающего кулера? А сколько раз писали трехэтажные циклы for в чистом Python, чтобы просто сгруппировать данные и посчитать среднее?
Pandas — это Excel на максималках и швейцарский нож любого разработчика и аналитика. В этой статье я собрал абсолютную выжимку: 10 главных шагов для работы с таблицами. Разберем вечную путаницу между loc и iloc, правильную очистку от пропусков, группировки и джойны (merge).

Читать далее

Webhook в Telegram и Discord: как подключить и чем лучше polling

Время на прочтение7 мин
Охват и читатели8.3K

Привет, Хабр!

Если вас заинтересовал заголовок, то вы, скорее всего, уже знакомы с разработкой Telegram или Discord-ботов. И что также вероятно: для получения обновлений вы используете обычный polling. Сегодня же я вам предлагаю ознакомиться с другим способом получения обновлений - через webhook.

Читать далее

Сделка с совестью на хакатоне или «Как победить с нерабочим кодом?» История одной команды…

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели16K

🏆 1 место на хакатоне без работающего кода? Легко!

Мы заняли 3 место с рабочим сервисом. Победители показали картинки и получили премию Мэра. Мы проверили их GitHub: там пусто.

Внутри расследование:

Ссылки на код победителей (alert() вместо API).

Разбор метрик (SMAPE 79%).

Как связи решают всё.

Читайте, как выигрывают не технологии, а подрядчики. 👇

Погрузимся в историю...

Автоматизированный анализ графита по ISO 945: архитектура и инженерная реализация модуля

Время на прочтение6 мин
Охват и читатели7.3K

Всем привет! Я пытаюсь реализовать свою систему анализа металлов и сплавов. Занимаюсь своим проектом уже год. В составе системы уже около 15 модулей. И хочу представить один из них. Если кому-то интересно или есть изображения, которые нужно измерить, верифицировать с другими системами я только - за.

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

Определение чугуна

Чугун представляет собой сплав железа с углеродом, где содержание углерода превышает 2,14% (обычно от 2,5% до 4,5%). Благодаря своей жидкотекучести, малой усадке и относительно низкой стоимости, чугун является одним из основных конструкционных материалов в машиностроении, энергетике и строительстве.

При анализе чугуны разделяют по состоянию углерода и форме графитовых включений, что определяет их физико-механические свойства:

Читать далее

Создание идеального лабиринта с помощью упрощённого алгоритма Прима

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели8K

Лабиринты использовались в видеоиграх с момента их появления. Первой видеоигрой с процедурно генерируемым лабиринтом была Beneath Apple Manor, выпущенная в 1978 году. Лабиринт в ней генерировался методом деления на комнаты и коридоры, из-за этого лабиринт часто выглядел однообразным и предсказуемым, что портило впечатление от игры. Для того, чтобы лабиринт выглядел естественнее разработчики стали использовать различные алгоритмы на графах. В этой статье мы рассмотрим реализации генерации идеального лабиринта с помощью алгоритма Прима.

Читать далее

Декораторы в Python для самых маленьких и немного для взрослых

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели9.1K

Представьте типичную ситуацию: вы написали отличный кусок кода. У вас есть десяток функций, которые делают полезную работу — например, ходят в стороннее API, парсят данные и аккуратно складывают их в базу. Код читаемый, лаконичный, всё работает как часы.

И тут приходит тимлид (или заказчик) и говорит: «Слушай, а давай-ка мы будем замерять время выполнения каждой функции и писать это в логи. Ну, чтобы отлавливать тормоза на проде».

Что делает разработчик, который не знает про декораторы?

Читать далее

Анатомия WebSocket: человечный разбор RFC 6455

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели6.8K

Как правило, работа с веб-сокетами сводится к паре строк: connect() и send(). Удобные абстракции библиотек превратили этот протокол в магическую трубу, по которой летают данные в обе стороны. Но магия заканчивается ровно в тот момент, когда соединение молча отваливается с кодом 1006, балансировщик рвет коннект, а в логах появляются странные ошибки фрагментации. В этой статье мы спустимся с небес высокоуровневых фреймворков на уровень байтов и битовых масок.

Мы пройдем полный путь WebSocket-соединения, опираясь на RFC 6455: от генерации ключа на стороне клиента до обмена закрывающими фреймами. Попутно разберем весь необходимый понятийный аппарат: что такое фреймы, какими они бывают, зачем их маскируют и фрагментируют и т.д. Цель не в том, чтобы научиться пользоваться конкретной библиотекой, а в том, чтобы понять, как протокол работает изнутри независимо от языка и реализации. Для иллюстраций по тексту статьи даны сниппеты на Python.

Погружаемся

Python уже не торт? Как и почему меняются приоритеты разработчиков

Время на прочтение4 мин
Охват и читатели21K

Последние годы Python был вроде универсального инструмента: на нем писали всё — от мелких скриптов до огромных ML-систем, а его первое место в рейтингах воспринималось как норма. Но к началу 2026-го заметно, что динамика меняется. Скорее всего — вслед за приоритетами. Уходит время, когда удобство и низкий порог входа перекрывали любые вопросы к производительности. Компании всё чаще смотрят на отдачу — сколько ресурсов съедает система и как ведет себя под нагрузкой. Давайте посмотрим, что там с местом Python’а в рейтингах, и оценим причины. 

Читать далее

Linux в Windows + VSC

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели9.1K

Эта статья для тех, кто столкнулся с необходимостью иметь компьютер под управлением одной из систем семейства Linux и при этом имеется единственный компьютер под управлением Windows. Для таких случаев в Windows есть стандартное решение под названием WSL (Windows Subsystem for Linux). Конечно нельзя назвать данное решение полноценным. Но для тестирования проекта или обучения вполне может подойти. В моем случае решил использовать эту систему для обучения работы в Airflow. Что из этого вышло покажу дальше в статье. Забегая вперед скажу, что не все так однозначно ни с подсистемой Linux в Windows ни с дальнейшей работай проектов в ней.

Читать далее

Ближайшие события

Зачем аналитику математика

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели9.4K

«Зачем мне эта ваша математика?» честный разбор для тех, кто хочет расти в аналитике

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

Что внутри:
Логарифмы: не просто log1p, а эластичность и среднее геометрическое
Производные: как поймать момент перед падением (вторая производная)
Пределы: почему retention не упадет ниже 15% (и при чем тут асимптоты)
Интегралы: LTV с дисконтированием и площадь под uplift-кривой

Для кого: аналитики, которые уже вышли из Excel и хотят понимать, что на самом деле делают их .diff() и .cumsum().

Читать далее

Робастный Variational Bayes Fusion UKF в городском каньоне: RMSE и NIS при аномальных сигналах GPS

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели4.8K

В «городском каньоне» GPS-сигнал подвержен эффектам многолучевого распространения и экранирования, что порождает аномалии в измерениях псевдодальности.
Классические фильтры Калмана, предполагающие аддитивный гауссовский шум, в таких условиях демонстрируют резкое падение точности оценки позиционирования.

В статье сравниваются два нелинейных фильтра Калмана:

\circ классический Fusion UKF (централизованный мультисенсорный UKF с фиксированной гауссовской моделью шума)
\circ мультисенсорный Variational Bayes Fusion UKF, в котором шум измерений моделируется распределением Стьюдента через вариационное байесовское приближение, а итеративная оценка скрытой масштабирующей переменной позволяет автоматически подавлять аномальные GPS-измерения.

В сценариях с имитацией GPS-аномалий по типу городского каньона Variational Bayes Fusion UKF более чем вдвое превзошёл Fusion UKF по RMSE позиционирования.

Читать далее

Литания: создаем свой язык программирования с лексером, парсером и интерпретатором

Время на прочтение16 мин
Охват и читатели11K

В наше время программирование стало очень доступным из-за развития инструментов и языков. Написать «привет, мир» может практически каждый, а количество фреймворков для JavaScript уже воспевается в шутках. Теперь, чтобы выделиться и впечатлить друзей и коллег, нужно спускаться глубже. Придумаем свой язык шуточный программирования! 

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

Это упрощенная статья, которая расширит ваш кругозор, а у некоторых вызовет интерес и любопытство погрузиться в тему.

Читать далее

️ UPDATE: Специально для тех, кому лень составлять JSON (решил ставить даты моих правок, чтобы было понятнее)

Время на прочтение6 мин
Охват и читатели8K

Смотрю на вас как в зеркало... но в ответ не тронь, мы не для таких как ты, правда? Да мы не для таких, мы были созданы для настоящих мужиков. Когда одухотворяют неживые вещи для общения с ними это Антропоморфизм, а как называется когда человек с головой другого человека не разговаривает, но одушевляет части его тела, для общения с ними? Хм, ну да ладно от вымысла к реальности, а реальность у нас - 5ая статья в серии Шампур-Скребок выходит в публичное пространство. Route Load bot (телеграмм) для укладки груза.

Читать далее

Линейная регрессия: от теории до production

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели9.1K

📚Линейная регрессия – это первый алгоритм, который осваивает аналитик, и последний, который он перестает использовать.
✔️В статье разберем, что это такое, как работает, где применяется и с какими подводными камнями вы обязательно столкнетесь.

Читать далее

Вайбкодинг – не для гуманитариев? Юрист сделал кривой поиск по PDF и просит помощи…

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели16K

Я столкнулся с простой (как мне изначально показалось – даже очень) задачкой. Мне в последнее время потребовалось часто проводить поиск в 4-х словарях. Государство мне их дало в виде 5 PDF файлов, выложенных онлайн. Это нормативные словари русского языка, слова из которых можно использовать в публичном пространстве.

Например, cash - можно использовать на русском как кэш, а не переводить как тайник или склад, поскольку в Словарь иностранных слов это слово уже включено. И это слово нам еще пригодится далее по тексту)

Читать далее

Делаем динамический кол-трекинг: Flask + SQLite + офлайн-конверсии Яндекс.Метрики

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели4.5K

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

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

В этом гайде разберём MVP на Python: он добавляет номер на лендинге под yclid, хранит выдачу в SQLite, принимает вебхук звонка от МТС Exolve, создаёт конверсию и формирует CSV под импорт в Яндекс.Метрику. Получается повторяемый поток данных от рекламного клика до офлайн-цели без ручной склейки.

В конце статьи у вас будет рабочий сценарий запуска, тестовые запросы и список технических доработок для боевого контура.

Читать далее