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

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

     04.03.2019       Выпуск 272 (04.03.2019 - 10.03.2019)       Конференции, события, встречи разработчиков

Python Meetup Chelyabinsk #5

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

Место: Труда, 179 (Рэдиссон), зал Galaxy I на 1 этаже.

Начало в 12:00.

     04.03.2019       Выпуск 272 (04.03.2019 - 10.03.2019)       Статьи

Знакомство с Neural ODE

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

Есть также и другой тип последовательных данных, это дискретные данные, например, данные NLP задач. Состояния в таких данных меняется дискретно: от одного символа или слова к другому.

Сейчас оба типа таких последовательных данных обычно обрабатываются рекуррентными сетями, несмотря на то, что они отличны по своей природе, и похоже, требуют различных подходов.

     02.03.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Python и FPGA. Тестирование

В продолжение к первой статье, хочу на примере показать вариант работы с FPGA (ПЛИС) на python. В данной статье затрону подробнее аспект тестирования. Если фреймворк MyHDL позволяет людям, работающим на python, используя знакомый синтаксис и экосистему, заглянуть в мир FPGA, то опытным разработчикам ПЛИС смысл использования python не ясен. Парадигмы описания аппаратуры для MyHDL и Verilog похожи, а выбор в пользу определенного языка вопрос привычки и вкуса. За Verilog/VHDL выступает то, что на этих языках давно пишут прошивки, и по факту они являются стандартными для описания цифровой аппаратуры. Python, как новичок в этой сфере, может конкурировать в области написания тестового окружения. Значительную часть времени у FPGA разработчика занимает тестирование своих дизайнов. Далее я хочу на примере продемонстрировать как это делается в python с MyHDL. Допустим, есть задача описать на ПЛИС некое устройство, работающее с памятью. Для простоты возьму память, общающуюся с другими устройствами через параллельный интерфейс (а не через последовательный, например I2C). Такие микросхемы не всегда бывают практичны в виду того, что для работы с ними требуется много пинов, с другой стороны обеспечивается более быстрый и упрощенный обмен информации. Например отечественная 1645РУ1У и ее аналоги. 

     02.03.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 1/2

Рейтинги, статистика и немного исходного кода на Python под катом.

     01.03.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Жизненный цикл кода на Python – модель выполнения CPython

Python компилируемый и интерпретируемый язык. Таким образом компилятор Python генерирует байткоды, а интерпретатор исполняет их.

     28.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Видео

Что внутри у питона: как устроена память

Злата Обуховская (Teamlead в Nvidia, евангелист MoscowPython)

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

Слайды: http://www.moscowpython.ru/meetup/63/python-memory/

Цикл "Что внутри у Питона": https://www.youtube.com/playlist?list=PLv_zOGKKxVpi6BSAuySAtX5KyCa50PSCz

     27.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Создание Dataflow шаблона для стриминга данных из Pub/Sub в BigQuery на базе GCP с помощью Apache Beam SDK и Python

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

 

Весь процесс включает в себя участие следующих сервисов Google Cloud Platform:

  • Pub/Sub — сервис для realtime стриминга данных
  • Dataflow — сервис для преобразования данных (может
    работать как в realtime так и в batch режиме)
  • BigQuery — сервис для хранения данных в виде таблиц
    (поддерживает SQL)

     27.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Введение в аннотации типов Python. Продолжение

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

     26.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Гадание на нейросетях: отметился ли в комментариях к посту сам автор

Поделюсь рассказом о небольшом проекте: как найти в комментариях ответы автора, заведомо не зная кто автор поста.

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

     26.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Как мы делали платежную систему для криптовалюты: пять основных проблем

Когда летом 2017 года мы запускали платформу, то задумались о том, как принимать криптовалюты и какой процессинг использовать. Увы, никто на тот момент не был готов дать хоть какие-либо гарантии по уязвимости контракта, да и история с атакой платформы DAO была еще на слуху. Мы не хотели идти по стопам DAO. К тому же, у нас были некоторые наработки по приему платежей через блокчейн. Так что мы решили самостоятельно проработать весь цикл проведения блокчейн-платежей. В этом посте мы расскажем о том, что у нас получилось, и, что самое интересное, — о том, какие проблемы нам пришлось решить в процессе.

     26.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

Сервим всё

Про создание и обучение моделей нейронных сетей (навыков) на Хабре написано не мало, поэтому не будем об этом сегодня. Обучив или получив сериализованные навыки ИИ, мы рассчитываем использовать их в наших целевых информационных системах, и тут возникает проблема. То что работает на стенде в лаборатории не перенести в производство в исходном виде, необходимо внедрение всего сопряженного стека технологий и даже существенная доработка под целевую платформу (есть, конечно, исключения в виде CoreML, но это частный случай и только для техники Apple). К тому же, инструментов разработки и сериализации моделей великое множество, неужели для каждого придется разрабатывать отдельное решение для интеграции? Кроме того, даже в лаборатории часто возникает необходимость получить быстрый вывод от модели, не ожидая прогрузки всего связанного девелоперского стека.


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

     26.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Статьи

[Перевод] Управление памятью в Python

Задумывались ли вы когда-нибудь о том, как данные, с которыми вы работаете, выглядят в недрах Python? О том, как переменные создаются и хранятся в памяти? О том, как и когда они удаляются? Материал, перевод которого мы публикуем, посвящён исследованиям глубин Python, в ходе которых мы попытаемся выяснить особенности управления памятью в этом языке. Изучив эту статью, вы разберётесь с тем, как работают низкоуровневые механизмы компьютеров, в особенности те из них, которые связаны с памятью. Вы поймёте то, как Python абстрагирует низкоуровневые операции и познакомитесь с тем, как он управляет памятью.

     25.02.2019       Выпуск 271 (25.02.2019 - 03.03.2019)       Конференции, события, встречи разработчиков

Регистрация на конференцию Pycon Russia 2019 открыта

PyCon 2019 пройдет 24 и 25 июня в отеле «Cronwell Яхонты Таруса» в 95 км. от Москвы. До места проведения и обратно будет организован трансфер.

Формат конференции остается прежним — двухдневная конференция на природе с иностранными докладчиками, Lightning Talks и афтепати.

     22.02.2019       Выпуск 270 (18.02.2019 - 24.02.2019)       Статьи

Опыт построения инфраструктуры на микросервисной архитектуре

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

 

У нас в небольшом банке были большие проблемы: 3 python монолита связанных чудовищным количеством синхронных RPC взаимодействий с большим объемом legacy. Что бы хотя бы отчасти решить все возникающие при этом проблемы было принято решение перейти на микросервисную архитектуру. Но прежде чем решиться на такой шаг нужно ответить на 3 основных вопроса:

 

  • Как разбить монолит на микросервисы и какими критериями следует при этом руководствоваться.
  • Каким образом микросервисы будут взаимодействовать?
  • Как осуществлять мониторинг?

     21.02.2019       Выпуск 270 (18.02.2019 - 24.02.2019)       Статьи

OpenAI Gym+ROS+Gazebo: обучение автономного робота в домашних условиях. Часть 1

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

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

     21.02.2019       Выпуск 270 (18.02.2019 - 24.02.2019)       Статьи

Jupyter Notebook в Netflix

В последнее время Jupyter Notebook стал очень популярен среди специалистов Data Science, став де-факто стандартом для быстрого прототипирования и анализа данных. В Netflix, стараемся раздвинуть границы его возможностей еще дальше, переосмысливая то, чем может быть Notebook, кем может быть использован, и что они могут могут с ним делать. Мы вкладываем много сил, чтобы воплотить наше видение в реальность.

 

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