IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог

     15.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Интересные проекты, инструменты, библиотеки

Использование модуля tempfile в Python

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

     15.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Строим надёжную конкурентность с FSP и моделированием процессов

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

 

 

  • Повысить производительность многопроцессорного железа, это и называется параллелизм;
  • Увеличить пропускную способность приложения (вызову ввода-вывода нужно блокировать только один поток);
  • Сделать приложение отзывчивее за счёт выполнения основных задач параллельно фоновым (высокоприоритетный поток для запросов пользователей);
  • Структурировать программу, повысив её эффективность (взаимодействующие со средой программы управляют несколькими действиями и обрабатывают несколько событий).

     15.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Constraint Programming или как решить задачу коммивояжёра, просто описав её

Пожалуй, наиболее популярной парадигмой программирования является императивное программирование. Но это не единственный вид программирования, широко известны функциональное и логическое программирование. Constraint Programming (Программирование в ограничениях/Ограниченное программирование) не так популярно. Но это очень мощный инструмент для решения комбинаторных задач. Вместо реализации алгоритма, который решает задачу, с последующей тратой кучи времени на его отладку, рефакторинг и оптимизацию, программирование с ограничениями позволяет вам просто описать модель в специальном синтаксисе, а особая программа (решатель - solver) найдет решение за вас (или скажет, если их нет). Впечатляет, не правда ли? Мне кажется, каждый программист должен знать о такой возможности.

     15.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Релизы

django-etc 1.3.0 — пользовательские формы в админке Django

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

     14.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Как мы в СберМаркете боремся с товарами-призраками

В офлайне покупатель видит полки магазина и сам может понять, чего нет в наличии, а что можно положить в корзину и купить прямо сейчас. В онлайне«‎глазами»‎ пользователя становится каталог: он всегда должен быть актуальным. 

 

     14.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Мы опубликовали современный Voice Activity Detector и не только

Для решения задачи детекции голоса (Voice Activity Detector, VAD) существует довольно популярный инструмент от Google — webRTC VAD. Он нетребовательный по ресурсам и компактный, но его основной минус состоит в неустойчивости к шуму, большом числе ложноположительных срабатываний и невозможности тонкой настройки. Понятно, что если переформулировать задачу не в детекцию голоса, а в детекцию тишины (тишина — это отсутствие и голоса и шума), то она решается весьма тривиальными способами (порогом по энергии, например), но с теми же минусами и ограничениями. Что самое неприятное — зачастую такие решения являются хрупкими и какие-то хардкодные пороги не переносятся на другие домены.

     14.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Скрапинг современных веб-сайтов без headless-браузеров

Многие разработчики считают скрапинг сложной, медленной и неудобной для масштабирования задачей, особенно при работе с headless-браузерами. По моему опыту, можно заниматься скрапингом современных веб-сайтов даже не пользуясь безголовыми браузерами. Это очень простой, быстрый и хорошо масштабируемый процесс.

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

     14.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Соревнование KAGGLE по определению риска дефолта заемщика. Разработка признаков

Соревнования Kaggle с использованием структурированных данных очень часто выигрывают специалисты по разработке признаков: побеждают те, кто может создавать наиболее полезные признаки из данных. Это представляет собой одну из закономерностей в машинном обучении: разработка признаков дает больший возврат инвестиций, чем построение модели и настройка гиперпараметров. Как говорит один из ведущих ученых в области машинного обучения – Эндрю Ын: «Прикладное машинное обучение — это в основном разработка признаков».

 

     14.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Вопросы и обсуждения
     13.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи
     12.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Пора избавляться от мышки или Hand Pose Estimation на базе LiDAR за 30 минут

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

     12.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Стилометрия, или как отличить Акунина от Булгакова с помощью 20 строк кода?

Довольно интересным направлением "прикладной статистики" и NLP (Natural Languages Processing а вовсе не то что многие сейчас подумали) является анализ текста. Появилось это направление задолго до компьютеров, и имело вполне практическую цель: определить автора того или иного текста. С помощью ПК это впрочем, гораздо легче и удобнее, да и результаты получаются весьма интересные. Посмотрим, какие закономерности можно выявить с помощью совсем простого кода на Python.

     11.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Релизы

fpdf2 2.2.0

fpdf2 is a minimalist PDF creation library

     11.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи
     11.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Подборка статей о машинном обучении: кейсы, гайды и исследования за декабрь 2020

Последний месяц года нельзя назвать удачным моментом для масштабных анонсов, так как большинство переходит в режим “давайте уже после праздников”, но судя по этой насыщенной подборке в области машинного обучения, и в декабре во всю кипела работа. Поэтому с небольшой задержкой встречайте двенадцатый выпуск дайджеста, в котором мы расскажем о самом важном, что произошло в ML в конце 2020 года.

     11.01.2021       Выпуск 369 (11.01.2021 - 17.01.2021)       Статьи

Чистый Cython VS nvc++: жжем металлические пластины на GPU для сравнения скорости

Все знают, что Python не блещет скоростью сам по себе. На мой взгляд язык прекрасен своей читабельностью, но основная ниша его применения там, где вы большую часть времени ожидаете ввода/вывода каких-то данных. Условно, вы можете написать суперпроизводительный код на Rust или С, но 99% времени он будет просто ждать.

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