Собрали в одном месте самые важные ссылкии сделали Тренажер IT-инцидентов для DevOps/SRE
Буквально пару недель назад, проводя код-ревью, меня внезапно накрыло осознание: огромный кусок логики наших мини-приложений - это чтение и парсинг Excel-файлов. При этом целая команда разработчиков решает одну и ту же задачу, но каждый по-своему.
threading, multiprocessing и asyncio. На первый взгляд – механизмы схожие. Но при детальном разборе ясно, что они решают принципиально разные задачи, опираются на разные модели исполнения и обладают своими ограничениями. В статье расскажу об особенностях каждого метода – будет интересно и познавательно.
После негодования по поводу реализации паттерна Repository в обучающих материалах, а именно скудность функционала, я решил, что нужно расширяться и это привело к тому, что появился ORM Query Builder, о котором подробно расскажет вам эта статья.
WSGI HTTP-сервер для UNIX. Скачать можно по ссылке: https://pypi.python.org/pypi/gunicorn/
Сегодня хочу поделиться историей о том, как желание автоматизировать рутинную работу привело меня к созданию собственного инструмента FullMute и, как следствие, к первым серьезным выплатам на платформах bug bounty.Как многие начинающие исследователи, я начал с хаотичного ручного поиска уязвимостей: проверял заголовки, искал известные пути к админкам, пытался угадать версии CMS. Это было неэффективно, медленно и сильно зависело от везения. Мне нужен был «компас», который бы проводил первоначальную разведку за меня и давал четкие цели для атаки. Так родилась идея FullMute.
А теперь о том, что происходило в последнее время на других ресурсах.
ㅤ
Фоновая музыка, гул, шипение — классические фильтры с этим не справляются. Нейросети справляются, но падают на длинных файлах. Решение: чанкование + сохранение прогресса. Делюсь инструментом.
Use Memray to profile Django startup, identify heavy imports like numpy, and reduce memory by deferring, lazy importing, or replacing dependencies.
Модуль для работы с многомерными массивами. Скачать можно по ссылке: https://pypi.python.org/pypi/numpy/
На работе одним из постоянных и важных процессов является проверка чеков на подлинность. Их поток достаточно большой (порядка нескольких сотен каждый день) и при этом каждый документ разбирается вручную - это может занимать до нескольких минут на один файл. На дистанции получается достаточно много. К тому же ручная проверка это медленно, дорого, и зачастую с ошибками из-за усталости аналитиков.
Дескрипторы — одна из тех фич Python, о которых многие слышали, но мало кто использует напрямую. При этом они лежат в основе @property, @classmethod, @staticmethod, слотов и даже обычного доступа к методам. Разберём, что такое дескрипторы, как их писать и когда они реально полезны
Сейчас я расскажу, как использую агенты, чтобы упростить себе backend-разработку и не тратить на рефакторинг больше, чем на написание кода.Какие задачи идеально подходят для оптимизации с помощью ИИ, а какие не стоит отдавать агенту.
Бывали у вас датасеты, где класс «1» встречается в 100 раз реже класса «0»? У меня — постоянно. Модель радуется высокой точности, а на деле совершенно промахивается по редкому классу. Давайте обсудим, почему старый добрый SMOTE уже не торт, и что помогает в таких случаях.
Утилита для управления модулями в Python. Скачать можно по ссылке: https://pypi.python.org/pypi/pip/
Переписать решение с Python на Go и получить ускорение в 35 раз — звучит приятно. Но можно ведь пойти дальше, вспомнить о возможностях современных процессоров и увеличить отрыв Go до 200 раз!
Django ORM прячет SQL за красивым Python-интерфейсом. Пишешь User.objects.filter(active=True).order_by('name')[:10] — получаешь список пользователей. Круто. Но когда запросы тормозят или N+1 пожирает базу, приходится понимать, что вообще происходит.Разберём внутренности QuerySet: почему он ленивый, как работает chaining, когда запрос реально выполняется, и чем select_related отличается от prefetch_related на уровне SQL.