Обновить
1024K+

Python *

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

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

132 строчки на Python, которые рождают математического гипермонстра

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

Наверное, все слышали хотя быв общих чертах про число Лоадера, очень большого гугологического монстра. Но если нет, то вкратце Loader's number — это одно из самых больших чисел, когда‑либо появившихся в серьёзном математическом контексте, и оно знаменито именно в сообществе гугологов.Оно было получено в 2002 году программистом Ральфом Лоудером в результате работы его программы, которая выиграла соревнование по написанию самой эффективной программы для вывода в Лямбда‑исчислении. Почему оно так знаменито и так велико? Не просто «большое», а «максимально эффективное». Программа Лоудера была настолько оптимизирована, что, по мнению многих специалистов, она достигает практического предела мощности для вычислимой функции в рамках Лямбда‑исчисления. Она создает число, которое, вероятно, является самым большим вычислимым числом, когда‑либо явно описанным с помощью столь компактной программы. Основа — лямбда‑исчисление. Это не просто алгоритм, написанный на C++ или Python. Он работает в фундаментальной системе, которая является основой функционального программирования и самой теории вычислимости,что придает числу огромную «математическую плотность». Ну и как вишенка на торте — оно превосходит других гигантов: Число Лоудера невероятно больше, чем многие другие известные «большие числа», такие как распиаренное число Грэма или даже числа, сгенерированные быстрорастущей иерархией на низких уровнях. Его мощность находится на очень высоких ординалах.

Читать далее

Моделирование стратегий маршрутизации — без формул, но с кодом

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

В статье представлена модель, сравнивающая три базовые стратегии маршрутизации звонков в колл-центре:

Sequential - последовательный индексный перебор свободных агентов от начала и до конца.
Round Robin - циклический обход с запоминанием последнего ответившего  и пропуском занятых агентов.
Longest Idle - выбор агента по максимуму времени простоя (idle_time).

Приходилось подолгу ждать ответа на звонок? Есть шанс узнать как это все там устроено.

Читать далее

Не обижайте Django

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

Чем популярнее становится FastAPI, тем сильнее критикуют Django. И не просто критикуют. Брезгуют? Пренебрегают? Всего понемножку. Всё чаще слышу, что Django — пережиток прошлого. Любой проект на Django — устаревший мусор. Любой «джанговод» — просто не знает, что тоже устарел. Объективно ли это? Нет, не объективно. Если отвёртка плохо забивает гвозди, это не значит, что отвёртки устарели — просто это не их задача.

Читать далее

Хватит это терпеть: как я написал Telegram-бота для VPS, который не бесит

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

Всем привет! Меня, как и многих здесь, в какой-то момент достало. Достало логиниться по SSH, чтобы проверить htop. Достало запускать Termius на телефоне, чтобы сделать sudo reboot зависшему инстансу. Достало ставить тяжелые веб-панели, которые жрут ресурсы и открывают лишний порт, только ради того, чтобы посмотреть загрузку диска.

Я админю несколько VPS. На одних крутятся пет-проекты, на других — сайты, на третьих — кастомные сетевые приложения для транспортировки данных. Мне нужен был инструмент, который:

Читать далее

Передовые алгоритмы глубокого обучения

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

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

В этой главе

1.Вариационные автоэнкодеры для обнаружения аномалий временных рядов

2.Сети смешанной плотности, использующие амортизированный вариационный вывод

3.Механизм внимания и трансформеры

4.Графовые нейронные сети

5. Исследования в области ML: глубокое обучение

Читать далее

Как я автоматизировал поиск работы на LinkedIn при помощи LLM

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

Эта статья по сути является продолжением моей прошлогодней статьи, в которой я автоматизировал отклики на hh.ru. Кстати, если кому это интересно, тот проект до сих пор живой, недавно проверял :-)

В этой статье я расскажу о том, как я сделал тоже самое, но для LinkedIn, и как тоже самое можете сделать вы, потратив примерно полчаса своего времени и 0 рублей (при соблюдении определенных условий, разумеется).

Итак, недавно у меня появилась желание поискать работу на зарубежном рынке, ведь перспектива валютной удаленки выглядит весьма заманчивой, хоть и достаточно смутной в свете последних сокращений в зарубежном IT. В качестве первого ресурса для поиска работы был выбран сайт LinkedIn, а в качестве приложения для автоматизации этого поиска - проект AiHawk, который и вдохновил меня в прошлом году на создание аналогичного приложения для hh.ru. Но вот незадача - проект уже почти год как неактивен а последняя найденная версия не работоспособна. Поэтому было решено переписать данный проект, чтобы он снова мог работать.

Читать далее

Асинхронный Python: руководство для начинающих с практическим заданием

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

Ваш Python-скрипт работает медленно. Вы запускаете его и смотрите, как он "висит", ожидая загрузки файла, ответа от API или завершения запроса к базе данных. Проблема почти всегда одна — ожидание. В программировании такие задачи называются I/O-bound (ограниченные вводом-выводом), и именно они "съедают" драгоценное время.

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

Читать далее

Книга: «Математика и архитектура глубокого обучения»

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

Привет, Хаброжители! Узнайте, что происходит внутри черного ящика! Для использования глубокого обучения вам придется подготовить данные, выбрать правильную модель, обучить ее, оценить качество и точность и предусмотреть обработку неопределенности и изменчивости в выходных данных развернутого решения. Эта книга шаг за шагом знакомит с основными математическими концепциями, которые пригодятся вам как специалисту по данным, – с векторным исчислением, линейной алгеброй и байесовским выводом, представляя их с точки зрения глубокого обучения.

Читать далее

Делаем кастомное параллельное чтение по JDBC в Spark 3.0.1

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

Привет, Хабр! Мы — команда DATA ОАТС в билайн. В этой статье расскажем о кейсе, когда стандартный Spark JDBC не справился с параллельным чтением огромной таблицы из ClickHouse, и мы написали свой «мини-движок». Под катом — разбор ограничений, схема с пулом потоков на экзекуторах и опыт, который может пригодиться не только для ClickHouse.

Читать далее

Разбираемся со звёздочками: понятное руководство по *args и **kwargs для начинающих

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

Многие начинающие разработчики обходят *args и **kwargs стороной, считая их чем-то необязательным или слишком сложным. Но на самом деле, понимание этого механизма — это качественный скачок в вашем умении писать чистый, масштабируемый и по-настоящему "пайтонический" код.

Читать далее

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

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

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

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

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

Так обычная подготовка к соревнованиям превратилась в увлекательный эксперимент, результатом которого стала эта статья и реализация шахмат с туманом войны на Python

Читать далее

itertools для тех, кто думал, что знает itertools

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

Привет, Хабр! Модуль itertools мне известен многим вдоль и поперёк. Ну действительно, что там сложного? Пара функций вроде chain да product, и кажется, что ничего нового для себя уже не найти. Однако стоит копнуть глубже, и выясняется, что у itertools есть немало нюансов и даже новых возможностей, появившихся в свежих версиях. В этой статье рассмотрим многие функции itertools: от базовых до самых интересных.

Понять силу итераторов

Как научить Telegram-бота на Python не терять задачи пользователей при перезапуске. Кейс ассистента для hh.ru

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

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

Мы тут в свободное время пилим проект, который должен решить боль многих айтишников, — автоматизировать рутинный поиск работы. Идея выросла в Telegram-бота «Аврора» , который на "автопилоте" ищет вакансии на hh.ru и откликается на них.

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

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

Под катом — наш подход к Graceful Shutdown, восстановлению сессий и немного про то, как LLM (в нашем случае Gemini) генерирует поисковые запросы.

Читать далее

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

Главный профит — не в докладах. Smart-Lab Conf 2025. Часть 2: Нетворкинг, афтепати и стоила ли поездка своих 50 000 ₽?

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

Приветствую всем снова! В первой части мы с вами долетели из Перми в Москву, разобрались с логистикой и ценами, послушали утренние и дневные доклады Smart‑Lab Conf 2025 — от макропрогнозов до психологии трейдинга — и даже успели заглянуть на «тайную встречу» в Парке Горького. Я также поделился первым и, пожалуй, главным выводом: разительным контрастом между порой токсичной онлайн‑атмосферой Смартлаба и абсолютно конструктивной, уважительной обстановкой на офлайн‑конференции.

Дискуссия под моей первой частью получилась не менее жаркой, чем сами доклады, за что вам огромное спасибо! Комментарии — это настоящий срез мнений: от благодарностей за подробный разбор и вопросов по существу до справедливой критики («суховато, давай эмоций!») и прямых обвинений в инфоцыганстве и нерациональной трате денег. Кто‑то посчитал, что спикер, который сам платит за дорогу, не уважает себя, а кто‑то — что вся поездка затеяна ради фото с Тимофеем Мартыновым. Эти мнения важны, и я обязательно вернусь к ним в конце.

Ирония судьбы — фото с Тимофеем у меня действительно есть. Точнее, даже двойное: с живым и с картонным.

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

Читать далее

Путь автоматизатора на Smart-Lab Conf 2025. Часть 1: Python, парадоксы ценообразования и психология трейдинга

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

Всем привет! Я — Михаил Ша́рдин из Перми, энтузиаст автоматизации в трейдинге. Меня иногда путают с Александром Шадриным, автором блога «Разумный инвестор». Наши фамилии действительно схожи, но разные как и наши подходы: он пишет о долгосрочных инвестициях и стоимостном подходе в духе Баффетта и Грэма, а я — о технической стороне инвестиций, автоматизации и практических инструментах для частного инвестора.

На Smart‑Lab Conf 2025 я прилетел чтобы выступить с докладом про Python, Excel, API (а также чуток про машинное обучение) и одновременно окунуться в атмосферу главного события частных инвесторов России. Я хотел услышать опытных людей, посмотреть реальные кейсы и найти идеи для инструментов и статей.

А ещё важно что это не рекламная статья. Смартлаб даже не оплачивал мою дорогу и проживание — всё это только мои затраты на знания и нетворкинг. Я честно расскажу, во что обошлась поездка и какие выводы я сделал.

Также я подробно расскажу про все доклады на которых побывал.

Читать далее

Автоматическая ферма видеоконтента на основе Sora 2

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

Статья посвящена автоматической генерации видеороликов на основе нейросети Sora с автоматическим монтажём и созданием сюжета без участия человека.

Читать далее

Практическое тестирование приложений на python

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

Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс.

Ну что ж, приступим

Как добавить AI-ревью и ответы ассистента в Pull Request всего за 30 минут

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

В этом материале я покажу, как всего за 30 минут встроить в ваш CI/CD пайплайн полноценное AI-кодревью и ассистента на базе открытого инструмента AI Review — без платных API и лишней инфраструктуры.

Читать далее

Разработка MCP-сервера на примере CRUD операций

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

Model Context Protocol (MCP) — это единый стандарт разработки API для сервисов, с которыми могут взаимодействовать LLM.

В этой статье на простом примере разберем, как создать свой MCP-сервер и как использовать его в связке с LLM.

Мои курсы: Разработка LLM с нуля | Алгоритмы Машинного обучения с нуля

Читать далее

[Алгоритмы, Задачки] Элегантно и идиоматично обходим двоичное дерево поиска на Python 3

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

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

Читать далее