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

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

     05.01.2021       Выпуск 368 (04.01.2021 - 10.01.2021)       Статьи

Использование django-version-checks

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

     05.01.2021       Выпуск 368 (04.01.2021 - 10.01.2021)       Статьи

Как я научила свой компьютер играть в пары используя OpenCV и Глубокое обучение

Немного веселья с компьютерным зрением и CNN с маленькой базой данных.

     02.01.2021       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Тестирование в Apache Spark Structured Streaming

На текущий момент не так много примеров тестов для приложений на основе Spark Structured Streaming. Поэтому в данной статье приводятся базовые примеры тестов с подробным описанием.

     31.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

ИИ итоги уходящего 2020-го года в мире машинного обучения

Подведем основные итоги уходящего года. Рассмотрим самые громкие открытия в мире компьютерного зрения, обработки естественного языка, генерации изображений и видео, а также крупный прорыв в области биологии. Коротко о самом главном за год!

     02.01.2021       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Ещё один способ использования python в браузере (и не только)

Весной 2020 года я впервые попробовал себя в разработке сайтов бэкенд я писал на питоне а на фронте пришлось использовать js и он вызвал у меня отторжение(тут надо уточнить, что я не считаю js ужасным языком, просто он мне не понравился). Не долго думая я начал писать транслятор с питона в явускрипт(а если бы погуглил то нашел бы это и это). об этом трансляторе и пойдет речь.

     30.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Создание процедурной анимации смерти при помощи автоматов падающего песка

В этом посте я покажу, как использовал автоматы падающего песка для генерации анимаций смерти монстров в моей игре Vagabond.

     30.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Видео

Нити, потоки, треды

О том, почему я в своих текстах и переводах использую слово «нить» вместо слова «поток».

     29.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Цифровые раскопки: заводим Python 1.0.1

Сегодня мы будем пытаться собрать Python 1.0.1 (1994 год) на современном железе при помощи современного компилятора. Даже если Вы, как Python разработчик, никогда не компилировали проект на Си, то не волнуйтесь, я проведу Вас через весь путь

     29.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Принимаем и декодируем передачи SSTV с МКС

Как было написано в недавнем анонсе, с 24 по 31 декабря производится передача изображений формата SSTV с МКС. Передача идет в радиолюбительском диапазоне на частоте 145.800 МГц и принять её может любой желающий.

     29.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

Кастомизация календаря на PyQt5

Сегодня столкнулся с простой на первый взгляд задачей: в виджете календаря на PyQt5 сделать так, чтобы сегодняшняя дата обводилась зеленой рамкой. Но оказалось, что на русском языке материалов на эту тему вообще нет, а на английском - только один вопрос на stackoverflow. Решил облегчить жизнь другим разработчикам, которые только знакомятся с этой библиотекой, и описать, как я решал эту задачу.

     28.12.2020       Выпуск 367 (28.12.2020 - 03.01.2021)       Статьи

6 лучших декораторов Django

Декоратор— это название одного из самых популярных шаблонов проектирования, используемых в настоящее время, хотя часто мы используем его, не зная, что это именно шаблон проектирования.

     27.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Декодируем сигнал метеоспутника NOAA в 50 строчек кода

Продолжим тему декодирования различных видов радиосигналов. Одним из интересных форматов, разработанных еще в прошлом веке, является APT (Automatic Picture Transmission). Он используется для передачи изображений Земли из космоса, и что для нас гораздо более интересно и актуально, прием сигналов APT прост и доступен радиолюбителям.

     27.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Первое место на AI Journey 2020 Digital Петр

Наша команда приняла участие в решении задачи "Digital Петр: распознавание рукописей Петра I" и заняла первое место. Я бы хотел рассказать о том, что мы наворотили в процессе решения соревнования, кто тут батя, какие трюки и фишки использовали. Информации много, будет много спецэфичных слов, для тех кто не в теме. Это не туториал, очень подробно я описывать не буду, но с удовольствием отвечу на вопросы в комментариях.

     25.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Как мы обучили нейросеть генерировать тени на фотографии

Разрабатывать GAN не так трудно, как кажется на первый взгляд. В научном мире существует множество статей и публикаций на тему генеративно-состязательных сетей. В этой статье я покажу вам, как можно реализовать архитектуру нейросети и решение, предложенное в одной из научных статей. В качестве опорной статьи я выбрал ARShadowGAN — публикация о GAN, генерирующей реалистичные тени для нового, вставленного в изображение объекта. Поскольку от оригинальной архитектуры я буду отклоняться, то дальше я буду называть своё решение ARShadowGAN-like.

     25.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Опыт сопряжения Java, JavaScript, Ruby и Python в одном проекте посредством GraalVM

В прошлом месяце вышла стабильная LTS-версия многоязычной среды выполнения GraalVM 20.3.0 от корпорации Oracle и мне захотелось испробовать её для решения какой-нибудь интересной практической задачи. Для тех кто не в курсе, приведу краткое описание этой новой платформы. GraalVM позволяет использовать в едином окружении различные популярные языки программирования и обеспечивает их разностороннее взаимодействие в рамках некоторой общей среды выполнения.

     24.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Решаем мини-игру про взлом протокола в Cyberpunk 2077 за 50 строк на Python

Если вы хотя бы отдалённо интересуетесь играми и не прожили последнюю пару лет в тайге, то, вероятно, слышали что-нибудь о Cyberpunk 2077. После долгого ожидания она наконец вышла! И в ней есть мини-игра про взлом! И чем больше получишь в ней очков, тем ценнее приз! Может ли магия Python дать нам преимущество в этом жестоком Нете? Разумеется.

     23.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Как джуниор Python-разработчику стать мидлом за год

Я Рома, менеджер продукта в Яндекс.Практикуме, где развиваю курс «Мидл Python-разработчик». Мы делаем из начинающих разработчиков крепких мидлов с инженерным мышлением. Сегодня хочу поделиться небольшими заметками о том, над чем стоит работать, если вы джуниор, который хочет стать мидлом.

     23.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Ещё раз о производительности фреймворков Python для веб разработки

Недавно мне пришлось начинать проект нового веб сервиса, и я решил протестировать максимальную нагрузочную способность Django, а заодно сравнить её с Flask’ом и AIOHTTP. Результат показался мне неожиданным, поэтому я «просто оставлю» его тут.

На диаграммах ниже приведены результаты простейшего Apache Benchmark’a для фреймворков Django версии 3.1, Flask 1.1 и AIOHTTP 3.7. AIOHTTP работает в «штатном» однопоточном асинхронном режиме, Django и Flask обслуживаются синхронным WSGI сервером Gunicorn с числом потоков, равным числу доступных ядер процессора * 2. ASGI в тесте не участвовал.

     22.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Не баян: ищем дубликаты изображений на основе Milvus с индексом FAISS внутри

В user-generated проектах часто приходится бороться с дубликатами, а для нас это особенно актуально, так как основной контент мобильного приложения iFunny — это изображения, которые постятся десятками тысяч ежедневно. Для поиска повторов мы написали отдельную систему, чтобы облегчить процесс и сэкономить море времени.

     22.12.2020       Выпуск 366 (21.12.2020 - 27.12.2020)       Статьи

Обучение на табличных данных. TABNet. Часть 2. Реализация

Декодирование табличных объектов: Предлагаем архитектуру декодера для восстановления табличных функций по закодированным представлениям, полученным с помощью кодировщика TabNet. Декодер состоит из блоков преобразователей признаков, за которыми следуют слои FC на каждом шаге принятия решения. Выходные данные суммируются для получения реконструированных функций.