Собрали в одном месте самые важные ссылки
читайте нас в Telegram
Конкурентные программы весьма полезны: в веб-приложениях, обслуживающих запросы и вебсокет-подключения; чат-боты, участвующие во множестве обсуждений одновременно; пауки, собирающие данные сразу с нескольких страниц. А вот писать конкурентные приложения непросто — они пугают новичков и бросают вызов бывалым.
Но так ли должно быть? Питон известен своей простотой и однозначностью; может ли он привнести в конкурентное программирование эти черты? Думаю, да.
Тщательно изучив промахи других библиотек, и воспользовавшись новыми возможностями Python 3, я создал новый набор примитивов, позволяющих существенно облегчить написание правильных конкурентных программ, и оформил их в новую библиотеку под названием Trio.
В своём выступлении я расскажу об этих примитивах, а также продемонстрирую, как они могут быть использованы для реализации незамысловатого алгоритма, позволяющего ускорить TCP подключения. В сравнении с лучшими предшествующими реализациями в Питоне, наш код получится более понятным, правильно выполняемым и много более коротким.
Выступление предполагает наличие базовых знаний о Питоне, но не требует какого-либо опыта в конкурентности, async/await или сетевом программировании.
«О большая» в информатике является инструментом для анализа производительности кода в ходе роста объёма данных.
Для практикующего программиста это весьма удобный инструмент, который, однако же, зачастую, обвешивают множеством отталкивающих математических деталей.
Из этого выступления вы узнаете всё, что вам нужно знать о большой О и о том, как ею пользоваться, чтобы ваши приложения отлично работали. «О большая» поможет вам выбирать структуры данных и алгоритмы так, чтобы ваш код эффективно справлялся даже с большими объёмами данных.
Чтобы понять «О» вам не нужно быть ботаном от теоретической информатики. Она не так загадочна, как кажется. Она окружена математическими препонами, но не потребует от вас ничего кроме здравого смысла, чтобы позволить понять, как поведёт себя код в ходе исполнения.
Модуль dataclasses, описанный в PEP 557, доступен в Питоне начиная с версии 3.7. Скоро он станет важным инструментом для каждого питониста.
Из этого выступления вы узнаете о задачах, которые решает модуль, о применённых в нём архитектурных решениях. Будут и примеры его использования.
Классы данных представляются очередным шагом в развитии инструментов для работы с данными: кортежи, словари, обычные классы, классы-пачки, именованные кортежи, records, attrs и, наконец, классы данных. Каждый из инструментов базируется на предшественнике, добавляя выразительность в обмен на сложность.
Классы данных уникальны в плане того, что позволяют не только выборочно включать и отключать некоторые аспекты, но также выбирать место хранения данных (словарь объекта, слоты, наследуемый базовый класс).
И классы данных и typing.NamedTuple используют аннотации переменных, введённые в Python 3.6.
Хотели ли вы написать приложение с графическим интерфейсом для своего ноутбука? А как на счёт телефона? Это всегда была задача трудно решаемая Питоном, и нерешаемая без знания различных программных интерфейсов на разных платформах. Но не теперь.
BeeWare — набор инструментов и библиотек, позволяющий создавать кроссплатформенные приложения с родным графическим интерфейсом для настольных, мобильных и веб платформ на чистом Питоне.
Это выступление познакомит вас с инструментарием BeeWare, и поможет разобраться в том, как вы можете использовать его для того, чтобы с нуля создать программу ChatBot, которое можно будет запустить как самостоятельное приложение и на компьютере, и на телефоне, и как одностраничное веб-приложение, при этом используя единую кодовую базу.
Хочу поделиться опытом работы с камерой Intel RealSense, модель d435. Как известно, многие алгоритмы машинного зрения требуют предварительной калибровки камеры. Так уж получилось, что мы на нашем проекте используем ROS для сборки отдельных компонентов автоматизированной интеллигентной системы. Однако, проштудировав русскоязычный интернет, я не обнаружил каких-либо толковых туториалов на эту тему. Данная публикация призвана восполнить этот пробел.
Если вы всё ещё думаете на тему нужен ли Python 3, вот вам ещё один аргумент.
Хакатон "Цифровой завод", организованный Сибуром и AI Community, состоялся на прошлых выходных. Одна из двух задач хакатона была на тему predictive maintenance — нужно было предсказывать проблемы в работе экструдера. Её мы и решили. Рассказ сосредоточен в основном на data science'ной части решения, и о том, как нам удалось научиться неплохо прогнозировать довольно редкие события.
Мы, наконец, дождались еще одной части серии материалов от выпускника наших программ “Специалист по большим данным” и “Deep Learning”, Кирилла Данилюка, об использовании популярных на сегодняшний день нейронных сетей Mask R-CNN как части системы для классификации изображений, а именно оценки качества приготовленного блюда по набору данных с сенсоров.
Рассмотрев в предыдущей статье игрушечный набор данных, состоящий из изображений дорожных знаков, теперь мы можем перейти к решению задачи, с которой я столкнулся в реальной жизни: «Возможно ли реализовать Deep Learning алгоритм, который мог бы отличить блюда высокого качества от плохих блюд по одной фотографии?». Вкратце, бизнес хотел вот это:
Ссылки на предыдущие части:
Это двадцать третья часть Мега-Учебника, в которой я расскажу вам, как расширить микроблог с помощью интерфейса прикладного программирования (или API), который клиенты могут использовать для работы с приложением более прямым способом, чем традиционный рабочий процесс веб-браузера.
Скоро будет выпущена технология предоставляющая Qt для Python о чём рассказали в блоге Qt Company. Речь идёт о PySide2, которая явяется официальным аналогом PyQt .
Рассмотрим создание не сложного приложения показывающего простоту Qt для Python с использованием виджетов QWidgets
Медленные тесты не только тратят время разработчиков на ожидание, но и усложняют следование лучших практик TDD (red-green testing). Когда тестовый набор выполняется несколько минут или дольше - это приводит к тому, что весь набор тестов запускают редко и баги, которые можно было бы исправить раньше и быстрее, откладываются.
В этом посте я расскажу как ускорить тесты вашего Django приложения и рассмотрю, что убивает скорость ваших тестов. В качестве примера буду использовать простой набор тестов, который вы можете найти на GitHub.
В этот раз снова о Data Science. Думаю, многим знакома методология CRISP-DM, о которой говорят на большинстве курсов, но вот про первый пункт (business understanding) информации достаточно мало, в зря, ведь он очень важный.
Поэтому в этой статье мы поговорим о взаимодействии с бизнесом и о том, какие обычно бывают проблемы и сложности в этом вопросе. Давайте разберем все на примере.
В течение последних нескольких лет интерес к технологиям машинного обучения и искусственного интеллекта быстро рос. Решение H2O.ai становится все более популярным в этой сфере: оно поддерживает быстрые алгоритмы машинного обучения в оперативной памяти и недавно получило поддержку глубокого обучения. Сегодня поговорим о разработке с использованием H2O.
Мы поговорим об использовании модных «Word embedding» не совсем по назначению — а именно для исправления опечаток (строго говоря, и ошибок тоже, но мы предполагаем, что люди грамотные и опечатываются). На хабре была довольно близкая статья, но здесь будет немного о другом. Визуализация Word2Vec модели, полученная студентом. Обучалась на «Властелине колец». Явно что-то на черном наречии.
Этой статьей я начинаю серию рассказов о состязательных сетях. Как и в предыдущей статье я подготовил соответствующий докер-образ в котором уже все готово для того чтобы воспроизвести то что написано здесь ниже. Я не буду копировать весь код из примера сюда, только основные его части, поэтому, для удобства советую иметь его рядом для более простого понимания. Докер контейнер доступен здесь, а ноутбук, utils.py и докерфайл здесь.
Все же знают, что такое Рамблер/топ-100? На всякий случай — это сервис веб-аналитики. Наши пользователи ставят себе на сайты счетчик, ну а мы в свою очередь готовим всю необходимую статистику посещений в виде набора стандартных отчетов. Под катом рассказ Виталия Самигуллина, руководителя группы разработки технологий Рамблер/топ-100, о том, как мы разрабатывали API ClickHouse на Python и зачем вообще всё это затевали.