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

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

     06.11.2019       Выпуск 307 (04.11.2019 - 10.11.2019)       Статьи

Почему Солнце вращается вокруг Земли

В России одна известная организация под названием ВЦИОМ проводила социологическое исследование, на котором гражданам предлагали ответить на вопрос: «Согласны ли вы со следующим утверждением: Солнце вращается вокруг Земли?» Данные этого опроса многократно перепечатываются в СМИ, и на различных сетевых ресурсах в комментариях часто ссылаются на него при обсуждении различных общественно-политических проблем.

     05.11.2019       Выпуск 307 (04.11.2019 - 10.11.2019)       Статьи

34 open source библиотеки Python (2019)

Мы просмотрели и сравнили 10 000 open source библиотек для Python и выбрали 34 самые полезные. Мы сгруппировали эти библиотеки в 8 категорий.

     05.11.2019       Выпуск 307 (04.11.2019 - 10.11.2019)       Статьи

Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1

Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями.

     04.11.2019       Выпуск 307 (04.11.2019 - 10.11.2019)       Статьи
     04.11.2019       Выпуск 307 (04.11.2019 - 10.11.2019)       Статьи

Работа над PEG на Core Developer Sprint

В этой статье я не буду рассказывать о новых фичах генератора парсера — я достаточно описал его в предыдущих частях. Вместо этого хочу рассказать что я делал на Core Developer Sprint на прошлой неделе, прежде чем всё сотрётся из моей памяти. Хотя большая часть материала так или иначе всё равно касается PEG. Так что мне придётся показать некоторый код, который задаёт направление в реализации PEG-парсера для Python 3.9.

     03.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Кэширование свойств объектов моделей с помощью model_cached_property

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

     03.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Сводка новостей от python.net 27.10.2019 — 03.11.2019

А теперь о том, что происходило в последнее время на других ресурсах.

     02.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи
     02.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Python v3.x: как увеличить скорость декоратора без регистрации и смс

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

Для начала хочу поблагодарить Mogost. Благодаря его комментарию я пересмотрел подход к Пайтону. Я и ранее слыхал о том, что среди пайтонистов достаточно много неэкономных ребят (при обращении с памятью), а теперь выяснилось, что я как-то незаметно для себя присоединился к этой тусовке.

     02.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи
     01.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Реализация остальных возможностей PEG

После того, как я собрал все части генератора PEG-парсеров воедино в предыдущем посте, я готов показать как реализовать и некоторые другие интересные штуки.

     01.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Python за месяц

Руководство для абсолютных новичков.

     01.11.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Вывод модели динамической системы дискретного фильтра Калмана для произвольной линейной системы

Фильтр Калмана (ФК) является оптимальным линейным алгоритмом фильтрации параметров динамической линейной системы при наличии неполных и зашумленных наблюдений. Этот фильтр находит широкое применение в технических системах управления до оценок динамики изменения макроэкономических ситуаций или общественного мнения

     31.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

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

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

 

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

     31.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

What You Probably Don't Know About Python Decorators

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

     30.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Мета-грамматика для PEG парсера

На этой неделе мы делаем генератор парсеров «самостоятельным», то есть он будет генерировать свой собственный парсер.

     29.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Многопроцессный доступ к Intel Neural Computer Stick через REST

В прошлой серии я поставил на танк Intel Neural Computer Stick 2 и перекинул на него все нейросетевые вычисления, отказавшись от Tensorflow и OpenCV-DNN.

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

     29.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Как мы используем цепи Маркова в оценке решений и поиске багов. Со скриптом на Python

Нам важно понимать, что происходит с нашими студентами во время обучения, и как эти события влияют на результат, поэтому мы выстраиваем Customer Journey Map — карту клиентского опыта. Ведь процесс обучения — не нечто непрерывное и цельное, это цепочка взаимосвязанных событий и действий студента, причем эти действия могут сильно отличаться у разных учеников. Вот он прошел урок: что он сделает дальше? Пойдет в домашнее задание? Запустит мобильное приложение? Изменит курс, попросит сменить учителя? Сразу зайдет в следующий урок? Или просто уйдет разочарованным? Можно ли, проанализировав эту карту, выявить закономерности, приводящие к успешному окончанию курса или наоборот, «отваливанию» студента?

     29.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Python v3.x: обработчик исключений для корутин и синхронных функций. Вобщем, для всего

В свободное время я работаю над своим небольшим проектом. Написан на Python v3.x + SQLAlchemy. Возможно, я когда-нибудь напишу и о нем, но сегодня хочу рассказать о своем декораторе для обработки исключений. Его можно применять как для функций, так и для методов. Синхронных и асинхронных. Также можно подключать кастомные хэндлеры исключений.

     29.10.2019       Выпуск 306 (28.10.2019 - 03.11.2019)       Статьи

Превращаем скрипты в красивые инструменты для машинного обучения

Мой опыт подсказывает, что любой более или менее сложный проект по машинному обучению рано или поздно превращается в набор сложных неподдерживаемых внутренних инструментов. Эти инструменты, как правило, мешанина из скриптов Jupyter Notebooks и Flask, которые сложно развёртывать и интегрировать с решениями типа GPU сессий Tensorflow.

 

Впервые я столкнулся с этим в университете Карнеги, затем в Беркли, в Google X, и, наконец, при создании автономных роботов в Zoox. Зарождались инструменты в виде небольших Jupyter notebooks: утилита калибровки сенсора, сервис моделирования, приложение LIDAR, утилита для сценариев и т.д.

С ростом важности инструментов появлялись менеджеры. Бюрократия росла. Требования повышались. Маленькие проекты превращались в огромные неуклюжие кошмары.