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

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

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

Создаём сайт на Django, используя хорошие практики. Часть 1: создаём django-проект

Я начинаю серию статей, посвященных разработке сайтов на Django. Информация для этих статей получена из собственного опыта (полтора года коммерческой разработки на Django, несколько мелких фриланс-проектов, часть проекта pythonworld.ru написана на Django).

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

Как написать смарт-контракт на Python в сети Ontology. Часть 1: Blockchain & Block API

Это первая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology при помощи инструмента разработки смарт-контрактов SmartX.

В этой статье мы начнём знакомство с API смарт-контракта Ontology. API смарт-контракта Ontology разделен на 7 модулей

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

Типы для HTTP-API, написанных на Python: опыт Instagram

Сегодня мы публикуем второй материал из цикла, посвящённого использованию Python в Instagram. В прошлый раз речь шла проверке типов серверного кода Instagram. Сервер представляет собой монолит, написанный на Python. Он состоит из нескольких миллионов строк кода и имеет несколько тысяч конечных точек Django.

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

LEGO MINDSTORMS Education EV3 + MicroPython: программируем детский конструктор взрослым языком

Мы уже рассказывали о платформе LEGO MINDSTORMS Education EV3. Основные задачи этой платформы — обучение на практических примерах, развитие навыков STEAM и формирование инженерного мышления. В ней можно проводить лабораторные работы по изучению механики и динамики. Лабораторные стенды из кубиков LEGO и утилиты по регистрации и обработке данных делают опыты еще интереснее и нагляднее и помогают детям лучше понять физику. Например, школьники могут собрать данные о температуре плавления и с помощью приложения систематизировать их и представить в виде графика. Но это только начало: сегодня мы расскажем, как дополнить этот набор средой программирования MicroPython и использовать его для обучения робототехнике.

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

Поиск похожих инцидентов и заявок. Метрики и оптимизация

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

 

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

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

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

Сегодня публикуем вторую часть перевода материала, посвящённого статическому анализу больших объёмов серверного Python-кода в Instagram.

     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. Данный декоратор позволяет кэшировать свойства объектов моделей в зависимости от входных параметров на заданный период времени. В статье описываются варианты применения, а также ограничения декоратора.

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

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

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

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

     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-кода. Часть четвертая: поддержка документирования

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

 

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

     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 — карту клиентского опыта. Ведь процесс обучения — не нечто непрерывное и цельное, это цепочка взаимосвязанных событий и действий студента, причем эти действия могут сильно отличаться у разных учеников. Вот он прошел урок: что он сделает дальше? Пойдет в домашнее задание? Запустит мобильное приложение? Изменит курс, попросит сменить учителя? Сразу зайдет в следующий урок? Или просто уйдет разочарованным? Можно ли, проанализировав эту карту, выявить закономерности, приводящие к успешному окончанию курса или наоборот, «отваливанию» студента?