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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     01.08.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Airtest IDE — новый путь в автоматизации тестирования мобильных игр?

Сегодня я хочу вам рассказать о достаточно новом open-source инструменте для автоматизированного тестирования под названием Airtest. В дальнейшем я сделаю ещё несколько статей с подробным рассказом об отдельных элементах данного инструментария и как с ними работать, а сейчас у меня цель познакомить вас с ним и дать общее представление о нем.

     31.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Реляционно-сетевая модель данных

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

     31.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Разработка надёжных Python-скриптов

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

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

     31.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи
     30.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи
     30.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Год приключений с graphene-python

Последний год я работал с graphene-python + django ORM и за это время я пытался создать какой-то инструмент, чтобы сделать работу с graphene удобнее. В результате у меня получилась небольшая кодовая база graphene-framework и набор некоторых правил, чем я бы и хотел поделиться.

     30.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Data Version Control (DVC): версионирование данных и воспроизводимость экспериментов

Эта статья — своеобразный мастер-класс «DVC для автоматизации ML экспериментов и версионирования данных», который прошел 18 июня на митапе ML REPA (Machine Learning REPA:
Reproducibility, Experiments and Pipelines Automation) на площадке нашего банка.

Тут я расскажу об особенностях внутренней работы DVC и способах применения его в проектах.

     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи
     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

3 кейса для использования Celery в Django-приложении

Я занимаюсь созданием веб-приложений на Django. В основном, это SaaS сервисы для бизнеса. Во всех этих приложениях есть необходимость в асинхронных задачах. Для их реализации использую Celery. В статье расскажу о ситуациях, в которых применяю Celery, с примерами кода.

     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи
     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи
     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Atlassian Confluence: расширяем на python

В Альфастраховании мы активно пользуемся "Вики", движком которого выступает Atlassian Confluence. Когда я первый раз с ним всерьез столкнулся (в попытке создать в нем контент), мне в нем не хватило "динамичности" — хотелось иметь возможность программно формировать части страниц, взаимодействовать с другими системами и т.п.

 

Некоторое время бился головой в разные стены, но потом увидел, что "в доме не было одной стены". Хочу поделиться опытом — как можно добавить динамики в Confluence. Надеюсь, это будет полезно тем, кто им пользуется. И, как обычно, всем любознательным.

     27.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Python в помощь тестированию структурных продуктов

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

     27.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Визуализация сна первого года ребенка на узорах одеяла

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

     26.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Управление зависимостями в Python: сравнение подходов

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

     26.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Django 3.0 будет асинхронным

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

 

По мере развития экосистемы стало очевидно, что, хотя нет насущной необходимости расширять Django для поддержки отличных от HTTP протоколов, таких как вебсокеты, поддержка асинхронности даст много преимуществ для традиционной model-view-template структуры Django.