Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE
Когда автотесты начинают тянуться как улитка, страдают все. CI медлит, разработчики косо смотрят на отчёты, а я вместо багов натыкаюсь на тайминги. Особенно это бесит в UI‑тестах — там каждый шаг может тормозить, но с ходу это не видно.
Want to test a function with dozens of variants? I'll show you how to organize test cases in a CSV file and connect them to pytest using the pytest-csv-params plugin.
При работе с внешними интеграциями мы часто реализуем базовую реакцию на ошибки. В большинстве случаев достаточно ограничиться response.raise_for_status(), а детальную обработку оставить на потом. Нередко мы не управляем ошибками. Не знаем в действительности ни как поведет себя внешняя система, ни какие типы этих ошибок следует от нее ожидать. В самом деле, бывает непросто учесть все возможные крайние случаи и обеспечить соответствующее ответное действие.
Наша команда решает задачу поиска оптимального расположения даркстора (место, где хранятся продукты, а также собираются заказы). Зона покрытия даркстора — радиус в пару километров, и количество их постоянно увеличивается. Мы хотим уметь размещать новый даркстор так, чтобы как можно больше людей получали заказы за минимальное время доставки.В этой статье мы расскажем, как выбираем локации для новых дарксторов: определимся с постановкой задачи, погрузимся в контекст проекта и покажем, как можно анализировать сотни тысяч разных точек на карте в секунду.
В этой статье расскажу о том, как можно повысить эффективность хранения данных за счет уменьшения их дублирования. Разберем, что из себя представляют Slowly Changing Dimensions-2 (далее SCD-2) таблицы и самостоятельно реализуем на PySpark алгоритм сохранения данных в них. Попутно поговорим о том, как находить изменения в любой таблице, даже если отсутствуют поля для выбора изменившихся записей, и научимся получать из созданной SCD-2 таблицы срезы на требуемую дату в прошлом.
Scikit-learn — это одна из основных Python-библиотек для машинного обучения. В 2025 году в библиотеку добавили несколько важных обновлений: доработали работу с пайплайнами, подключили полную поддержку pandas API, упростили контроль за экспериментами.
Встроенная командная строка в Windows не устраивает многих разработчиков. У нее скудный функционал, нет «запоминания» и многих других функций, который были бы полезны её пользователям. Поэтому я решил попробовать сделать свою «консоль», с возможностью создания своих модулей для расширения функционала. Для этого, на языке программирования Python я начал писать своё CLI‑приложение, которое упрощает работу с консолью. И что из этого вышло? Узнать продолжение
Я всегда разделял два этапа: разработку торговых идей (логика стратегии) и реализацию механизма исполнения (отправка заявок, автотрейдинг). Сначала - бэктестинг и базовая оптимизация, и только потом - реальная торговля.
Вы обожаете Emacs, но вам необходимо работать с Jupyter ноутбуками? Данная статья расскажет еще об одном способе, как их подружить.
Говорят, что невозможно по-настоящему возненавидеть кого-то, если сначала не полюбил его. Не знаю, справедливо ли это в целом, но это определённо описывает моё отношение к NumPy.NumPy — это ПО для выполнения вычислений с массивами на Python. Оно невероятно популярно и очень сильно повлияло на все популярные библиотеки машинного обучения, например, на PyTorch. Эти библиотеки во многом имеют те же самые проблемы, но для конкретики я рассмотрю NumPy.
Я расскажу, как провела синтетическое исследование без респондентов, но с результатом, используя AutoGen — фреймворк от Microsoft, который позволяет моделировать диалоги между ИИ-агентами.Здесь не будет сложного кода. Только пошаговая инструкция, минимум настроек и максимум пользы, чтобы вытащить из AI внятные сценарии поведения пользователей.
Концепция проста: создаем поле для рисования, распознаем написанный текст с учетом отступов и пытаемся его «запустить». С точки зрения архитектуры проект представляет собой веб-приложение. Фронтенд — JavaScript для работы «пера», а также исполнения кода в браузере. Бэкенд — Python для распознавания рукописного ввода.
В прошлом году на работе появилась задача для нашего отдела эксплуатации, где я работаю, о поиске сервиса, в котором можно подводить итоги совещания. Это в целом — стандартная для нас задача, а именно общение с вендором и определение, возможно ли их продукт внедрить в наш контур.
Собеседования - всегда стресс. Я замечал, что после каждого интервью трудно вспомнить детали: какие вопросы задавали, как именно я отвечал, где были ошибки или неточности. А переслушивать запись, которая может длиться от часа и выше это долго и неэффективно. Задумался: а что если использовать что-то, что автоматически превратит аудиозапись интервью в текст? Так я открыл для себя Whisper от OpenAI
Продолжаем заставлять ботов бесконечно играть в карты в надежде вытрясти оптимальные настройки для нашей карточной игры. Итак, в предыдущих сериях мы: написали логику карточной игры на питоне; внедрили в игру ботов и заставили их играть друг с другом тысячи и тысячи партий; описали метрики, которые мы собираем с игры; пообещали себе, что доведем дело до конца и получим оптимальные настройки карточной игры
Если бы меня спросили, какой мой любимый векторный редактор, я бы, не задумываясь, ответил: PowerPoint. Это началось с желания делать презентации, которые приятно смотреть. Меня всегда огорчало, как часто даже в хороших докладах используются мыльные, шакальные картинки – особенно там, где вполне можно обойтись аккуратными векторными схемами.