Собрали в одном месте самые важные ссылкии сделали Тренажер IT-инцидентов для DevOps/SRE
Minecraft GIS + Google Sheets — отличный инструмент для обучения детей основам работы с данными!
Наверняка, у всех есть групповой чат со всякими приколами, но в котором периодически проскакивают нужные вещи, которые теряются в потоке мемов, флуда и всего прочего. У меня есть такой девчачий чат, в котором мы обсуждаем проблемы, скидываем рецепты, раздаем какие-то рекомендации друг другу что посмотреть, что почитать и т.д. Однажды я полчаса листала чат в поисках новой рекомендованной книги, которую скинули между фоткой с котиком и горением от работы, тогда мне в голову пришла гениальная мысль - создать бота, который будет пересылать сообщения в нужную тему.
В 2024 году я не знал ничего про Arduino и Python. Но за неделю собрал на макетке рабочий прототип для управления музыкой, при помощи сил ИИ и интернета. На этом я не остановился и решил получить очень ценный опыт в разработке, сделав настоящий контроллер!
Learn how SlimToolkit can reduce a Python Docker image by analyzing what your app actually uses at runtime. This tutorial walks through slimming a Chainlit LLM chatbot image, shows where container bloat comes from, and explains how to avoid breaking lazily loaded Python frameworks.
Основная идея: сделать ПО, выглядящее для Telegram-клиента как MTProxy-сервер, и осуществляющее дальнейший обмен данными со сторонними MTProxy-серверами.
with open() знают все. Но контекстные менеджеры в Python — это не только про файлы. Они помогают безопасно управлять соединениями с БД, транзакциями, async‑ресурсами, временными настройками и cleanup‑логикой без бесконечных try/finally. В статье разбираем, как работают контекстные менеджеры, как писать свои через contextlib и где они реально упрощают продакшен‑код.
Один ученик писал экзаменационную работу, а кто-то чужой дописал часть за него. Как мы научили нейросеть распознавать это.
Всё началось с наивной мысли: зачем платить за API или тащить 7B-модель, если мне нужна маленькая модель для простых разговоров на одном языке? Логика казалась железной — большие модели умеют всё и на всех языках сразу, но это же избыточно. 0.7B, заточенная под один язык и один стиль общения, должна справляться не хуже. Спойлер: это было наивно. Но путь оказался ценнее результата.
Yet another способ сверхбыстрого прототипирования из мелких модулей и печатных плат. Также, рассматривается вопрос вайбкодинга любых шрифтов на основе генерации из ttf для дисплея и вывода рисунка.
Вторая статья цикла о внутрянке Celery: на этот раз — зелёные потоки (gevent/eventlet). Как gevent и eventlet работают под капотом Celery, что такое Hub, monkey patching и почему autoscale для гринлетов бесполезен. А ещё — неожиданный бенчмарк: prefork против gevent на одном ядре. Спойлер: gevent проигрывает, но не спешите его хоронить. Для тех, кто выбирает пул под свои задачи.
У носимых устройств есть парадокс: браслет измеряет ваши пульс, сон и активность, но готового открытого API для интеграции этих данных в сторонние системы (например, домашний мониторинг или локальную БД) производитель не предоставляет.
А теперь о том, что происходило в последнее время на других ресурсах.
История о том, как сделать видимыми ошибки yt-dlp, которые молча умирали в логах воркера. Bridge на 200 строк, классификатор content vs infra, борьба с alert-fatigue. Читать
Эта статья родилась из работы над AlpinaGPT. Мы недавно зарелизили в нём по-настоящему крутых AI-ассистентов и AI-проекты: с подключаемыми базами знаний, общим контекстом чатов и нормальной памятью между сессиями. Я начал смотреть, как RAG сделан у других — и оказалось, что во многих продуктах на рынке всё гораздо проще и грубее, чем нам кажется.
Модель может показывать 95–99% accuracy и при этом не решать задачу: особенно если редкий класс важнее всего для бизнеса. В статье разбираем, почему accuracy ломается на несбалансированных данных, как читать precision, recall и F1, зачем смотреть PR‑кривую и confusion matrix, а также как подбирать порог классификации с учетом стоимости ошибок.
Почти каждый сервис, который мы сегодня пишем, ходит куда-то наружу — платёжный шлюз, биллинг, чужой публичный API. И каждый раз, когда садимся писать тесты на этот код, упираемся в один и тот же вопрос: как протестировать клиента, не привлекая внимания санитаров выходя в реальный мир?Эта статья про то, как выбирать инструмент под эту задачу. Не абстрактно — на одном маленьком, но гордом настоящем сервисе catfact-demo-service, в tests/ которого рядом лежат пять способов протестировать одну и ту же интеграцию.
Кэширование — ключевой механизм оптимизации производительности веб-приложений, позволяющий снизить задержки и уменьшить нагрузку на серверы. В этой подробной статье рассмотрим пять основных уровней кэширования, применимых в современных веб-системах. Ты узнаешь о внутреннем и внешнем кэше, кэшировании на уровне reverse proxy, браузера и фронтенда.
Около трёх лет назад я выпустил программный комплекс для ускорения разработки и управления мини-приложениями на Python + PySide6, которые помогают мне в повседневной работе.За время его эксплуатации я обнаружил ряд архитектурных недостатков, которые ухудшали опыт его использования, да и многие возможности, о которых я мечтал не были реализованы. Так или иначе, я нашел в себе силы исправить свои ошибки и реализовать задуманное. Поэтому, если вы, как и я, пишете инструменты на Python или хотите этим заняться, то можете взять на вооружение мой инструмент, он бесплатный и имеет открытый исходный код. Присоединиться к проекту
В первой части была создана инфраструктура для запуска машинного обучения. Там же была создана БД с данными для использования в примерах.В данной части будет искаться, какой тип файлов вызывает увеличение нагрузки. При этом, зная, какой именно тип файла был указан как вызывающий нагрузку.Будет использоваться машинное обучение в Apache Spark.