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

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

     01.06.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Статьи

Python 3 для тех, кто ещё в раздумии

Если вы всё ещё думаете на тему нужен ли Python 3, вот вам ещё один аргумент.

     29.05.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Статьи

Машинное обучение и экструдер полипропилена: история 3 места на хакатоне Сибура

Хакатон "Цифровой завод", организованный Сибуром и AI Community, состоялся на прошлых выходных. Одна из двух задач хакатона была на тему predictive maintenance — нужно было предсказывать проблемы в работе экструдера. Её мы и решили. Рассказ сосредоточен в основном на data science'ной части решения, и о том, как нам удалось научиться неплохо прогнозировать довольно редкие события.

     29.05.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Статьи

ConvNets. Создание прототипа проекта с помощью Mask R-CNN

Мы, наконец, дождались еще одной части серии материалов от выпускника наших программ “Специалист по большим данным” и “Deep Learning”, Кирилла Данилюка, об использовании популярных на сегодняшний день нейронных сетей Mask R-CNN как части системы для классификации изображений, а именно оценки качества приготовленного блюда по набору данных с сенсоров.

Рассмотрев в предыдущей статье игрушечный набор данных, состоящий из изображений дорожных знаков, теперь мы можем перейти к решению задачи, с которой я столкнулся в реальной жизни: «Возможно ли реализовать Deep Learning алгоритм, который мог бы отличить блюда высокого качества от плохих блюд по одной фотографии?». Вкратце, бизнес хотел вот это:

     29.05.2018       Выпуск 232 (28.05.2018 - 03.06.2018)       Статьи

Автоматическая визуализация python-кода. Часть третья: новые возможности графического представления кода

Ссылки на предыдущие части:

 

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

     27.05.2018       Выпуск 231 (21.05.2018 - 27.05.2018)       Статьи

Мега-Учебник Flask, Часть XXIII: Интерфейсы прикладного программирования (API) Flask

Это двадцать третья часть Мега-Учебника, в которой я расскажу вам, как расширить микроблог с помощью интерфейса прикладного программирования (или API), который клиенты могут использовать для работы с приложением более прямым способом, чем традиционный рабочий процесс веб-браузера.

     24.05.2018       Выпуск 231 (21.05.2018 - 27.05.2018)       Статьи

Быстрые тесты в Django

Медленные тесты не только тратят время разработчиков на ожидание, но и усложняют следование лучших практик TDD (red-green testing). Когда тестовый набор выполняется несколько минут или дольше - это приводит к тому, что весь набор тестов запускают редко и баги, которые можно было бы исправить раньше и быстрее, откладываются.

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

     23.05.2018       Выпуск 231 (21.05.2018 - 27.05.2018)       Статьи

Постановка Data Science задач и взаимодействие с бизнесом

В этот раз снова о Data Science. Думаю, многим знакома методология CRISP-DM, о которой говорят на большинстве курсов, но вот про первый пункт (business understanding) информации достаточно мало, в зря, ведь он очень важный.

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

     23.05.2018       Выпуск 231 (21.05.2018 - 27.05.2018)       Статьи

Просто добавь воды: разработка с H2O.ai

В течение последних нескольких лет интерес к технологиям машинного обучения и искусственного интеллекта быстро рос. Решение H2O.ai становится все более популярным в этой сфере: оно поддерживает быстрые алгоритмы машинного обучения в оперативной памяти и недавно получило поддержку глубокого обучения. Сегодня поговорим о разработке с использованием H2O.

     23.05.2018       Выпуск 231 (21.05.2018 - 27.05.2018)       Статьи

Исправление опечаток, взгляд сбоку

Мы поговорим об использовании модных «Word embedding» не совсем по назначению — а именно для исправления опечаток (строго говоря, и ошибок тоже, но мы предполагаем, что люди грамотные и опечатываются). На хабре была довольно близкая статья, но здесь будет немного о другом. Визуализация Word2Vec модели, полученная студентом. Обучалась на «Властелине колец». Явно что-то на черном наречии.

     20.05.2018       Выпуск 230 (14.05.2018 - 20.05.2018)       Статьи

Введение в состязательные сети

Этой статьей я начинаю серию рассказов о состязательных сетях. Как и в предыдущей статье я подготовил соответствующий докер-образ в котором уже все готово для того чтобы воспроизвести то что написано здесь ниже. Я не буду копировать весь код из примера сюда, только основные его части, поэтому, для удобства советую иметь его рядом для более простого понимания. Докер контейнер доступен здесь, а ноутбук, utils.py и докерфайл здесь.

     18.05.2018       Выпуск 230 (14.05.2018 - 20.05.2018)       Статьи

Разработка API Clickhouse для Рамблер/топ-100

Все же знают, что такое Рамблер/топ-100? На всякий случай — это сервис веб-аналитики. Наши пользователи ставят себе на сайты счетчик, ну а мы в свою очередь готовим всю необходимую статистику посещений в виде набора стандартных отчетов. Под катом рассказ Виталия Самигуллина, руководителя группы разработки технологий Рамблер/топ-100, о том, как мы разрабатывали API ClickHouse на Python и зачем вообще всё это затевали.

     14.05.2018       Выпуск 230 (14.05.2018 - 20.05.2018)       Статьи

Свой асинхронный tcp-сервер за 15 минут с подробным разбором

Ранее я представил пару небольших постов о потенциальной роли Spring Boot 2 в реактивном программировании. После этого я получил ряд вопросов о том, как работают асинхронные операции в программировании в целом. Сегодня я хочу разобрать, что такое Non-blocking I/O и как применить это знание для создания небольшого tcp–сервера на python, который сможет обрабатывать множество открытых и тяжелых (долгих) соединений в один поток. Знание python не требуется: все будет предельно просто со множеством комментариев. Приглашаю всех желающих!

     14.05.2018       Выпуск 230 (14.05.2018 - 20.05.2018)       Статьи

Открытый вебинар: «Трудности перевода: 2 и 3 версии»

Провели на прошлой неделе открытый вебинар про вторую и третью версию. На нём создатель курса Стас Ступников разбирал нюансы миграции между версиями, отличия в производительности, новые особенности, да и вообще общался и отвечал на вопросы слушателей.

     11.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Статьи

Органайзер-каталог для карт Heroes III и более 7700 карт в придачу

Я играю в Heroes of Might and Magic со времен царя Гороха королевы Ламанды, и за это время накопилось такое количество карт для 3-х Героев, что я решил их как-то упорядочить и структурировать.

     11.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Статьи

1000+1 способ определение того, являются ли все элементы в списке одинаковыми

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

     08.05.2018       Выпуск 229 (07.05.2018 - 13.05.2018)       Статьи

NumPy в Python. Часть 2

Продолжаем перевод статьи о numpy в python. Для тех кто не читал первую часть, сюда: Часть 1. А всем остальным — приятного чтения.

     06.05.2018       Выпуск 228 (30.04.2018 - 06.05.2018)       Статьи

SmartMailHack. Решение 1-го места в задаче классификации логотипов

Две недели назад закончился проходивший в офисе Mail.Ru Group хакатон для студентов SmartMailHack. На хакатоне предлагался выбор из трех задач; статья от победителей во второй задаче уже есть на хабре, я же хочу описать решение нашей команды, победившей в первой задаче. Все примеры кода будут на Python & Keras (популярный фреймворк для deep learning).

     05.05.2018       Выпуск 228 (30.04.2018 - 06.05.2018)       Статьи

Кросс-языковая разработка ПО

Вот бы, разрабатывая программу на одном языке, сразу получать исходники на других языках программирования… Я пишу на C# .NET, но в последнее время всё больше требуется интегрироваться с Java. Одно из решений — оформление web-сервисов для взаимодействия, но не то это, не то. Вроде и существуют конвертеры C# в Java, но эксперимент показал, что для реального проекта они (те, что удалось попробовать) не работают, хотя на «hello world» отрабатывают отлично. Переписать с нуля на Java весь проект нереально — он активно разрабатывается более 6 лет (Pullenti — обработка естественного языка), да и на C# он нужен. Пришлось мобилизоваться и в прошлом году написать этот конвертер, а в этом году и конвертер C# в Python.