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

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

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

Статистика на службе у бизнеса. Методология расчёта множественных экспериментов

Как и было обещано в предыдущей статье, сегодня мы продолжим разговор о методологиях, применяемых в A/B-тестировании и рассмотрим методы оценки результатов множественных экспериментов. Мы увидим, что методологии довольно просты, и математическая статистика не так страшна, а первооснова всего — аналитическое мышление и здравый смысл. Однако предварительно хотелось бы сказать пару слов о том, какие же бизнес-задачи помогают решать строгие математические методы, нужны ли они Вам на данном этапе развития Вашей компании и какие pros and cons существуют в Большой аналитике.

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

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

В школьные годы у меня был одноклассник, который мог послушать, как работает машина во дворе, и с серьезным лицом вынести вердикт: все в порядке, или что-то сломалось, и нужно срочно бежать за новыми деталями/маслом/инструментами! Я, как абсолютный чайник в автомобильном деле, всегда слышал обычное дребезжание очередной двенашки, никаких отличий не замечая и просто молча поражаясь его слуху и скилам.

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

Создание простого разговорного чатбота в python

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

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

Этот туториал подойдёт тем, кто уже немножко трогал пальцем Python, но не особо знаком с машинным обучением. Я намеренно не пользовался никакими nlp-шными библиотеками, чтобы показать, что нечто работающее можно собрать и на голом sklearn.

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

Почти самый простой MIMO канал с замираниями (модель Кронекера прилагается)

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

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

F-strings или как сделать код чуть более быстрым и читаемым

В Python есть 3 способа форматировать строки, и один из них лучше других. Но не будем забегать наперед — о каком именно форматировании вообще речь? Каждый раз когда мы хотим поприветствовать пользователя по имени нам нужно вставить строку с именем в строку-шаблон. Большинство полезных записей в логах так же содержат значения переменных

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

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

     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)       Статьи

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

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

     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.

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

Осваиваем компьютерное зрение — 8 основных шагов

Для тебя уже не является новостью тот факт, что все на себе попробовали маски старения через приложение Face App. В свою очередь для компьютерного зрения есть задачи и поинтереснее этой. Ниже представлю 8 шагов, которые помогут освоить принципы компьютерного зрения.

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

5 главных алгоритмов сэмплинга

Работа с данными — работа с алгоритмами обработки данных.

 

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

Эта статья посвящена наиболее распространённым способам сэмплинга при работе с данными.

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

Мелкая питонячая радость #8: мелкие удовольствия для работы с БД

Беглый опрос коллег на моем текущем проекте показал, что при словах "ORM и работа с БД" в подавляющем большинстве случаев звучат слова "Алхимия" и "Django ORM". Знания этих двух слов, в общем, достаточно, чтобы писать чистый, аккуратный и рабочий код. Но расширение инженерного кругозора пока еще никому не вредило, поэтому сегодня мы добавим в нашу картину мира несколько (возможно, до этого дня незнакомых) классных штук для работы с БД.