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

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

     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.

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

Как я писал графического бота и во что это превратилось

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

Понадобилось мне сделать бота для выполнения нескольких задач, требовательных к логике и скорости реакции. Лезть в API и ковырять бинарники программ не хотелось. Было решено пойти путём визуальной автоматизации. Нашел несколько ботов, но ни один из них так и не подошел под мои требования, оказавшись или слишком медленным, или скриптовая часть была сильно урезана или был недостаточный функционал для работы с визуальной составляющей. Так как у меня был успешный опыт использования визуального бота в прошлом (хоть и медленного и сильно урезанного в скриптовой части) – решил сделать свою реализацию.

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

Наука эмоций: как умные технологии учатся понимать людей

Наука об эмоциях стала популярной не так давно, и в основном благодаря Полу Экману — американскому психологу, автору книги «Психология лжи» и консультанту популярного сериала «Обмани меня», который основан на материалах книги.

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

Мега-Учебник Flask, Часть XXII: Фоновые задачи

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

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

Как заставить государство открываться, ч.1: Качаем статистику ДТП своими руками

Если хорошо поискать, можно обнаружить довольно много полезной, приличного качества, государственной информации. Но к сожалению, это все еще не: ЕГЭ и образование, погода, картография, данные о преступлениях… и ДТП.

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

Эта статья станет первым мануалом в серии «как получать машиночитаемые данные с госсайтов». Итак, сегодня — про статистику ДТП, а раз государство нам ее не дает, мы научимся забирать ее самостоятельно. По традиции, код и данные — прилагаются.

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

ScadaPy Creator для python

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

     28.04.2018       Выпуск 227 (23.04.2018 - 29.04.2018)       Статьи

Как Netflix эвакуируется из региона AWS за семь минут

Зимой 2012 года Netflix пережил длительный сбой, уйдя в отключку на семь часов из-за проблем с сервисом AWS Elastic Load Balancer в регионе US-East (Netflix работает на AWS — у нас нет собственных дата-центров. Всё ваше взаимодействие с Netflix происходит через AWS, кроме самого потокового видео. Как только вы нажмете Play, начинает загружаться видеопоток из нашей собственной сети CDN). Во время сбоя ни один пакет из региона US-East не доходил до наших серверов.

     27.04.2018       Выпуск 227 (23.04.2018 - 29.04.2018)       Статьи

SmartMailHack. История победителей в задаче Name Entity Recognition

На прошедших выходных (20-22 апреля) в офисе Mail.ru Group прошел студенческий хакатон по машинному обучению. Хакатон объединил студентов разных ВУЗов, разных курсов и, что самое любопытное, разных направлений: от программистов до безопасников.

     27.04.2018       Выпуск 227 (23.04.2018 - 29.04.2018)       Статьи

Мега-Учебник Flask, Часть XXI: Уведомления пользователей

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