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

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

     21.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Статьи

Как я данные с BLE-градусника от Xiaomi забирал

Предыстория: в качестве одного из хобби у меня случился «Умный дом». Хочется красивых устройств, но при этом ещё хочется свободы и приватности. Поэтому занимаюсь скрещиванием ужика Xiaomi с ёжиком Home Assistant.

Для поддержания комфортных условий нам нужно знать, а что вообще у нас дома происходит. Короче говоря, нужны сенсоры. Их у Xiaomi есть много разных, но больше всего мне понравился квадратный градусник на электронных чернилах. Вот только он совсем не умный, в том смысле, что не предоставляет вообще никаких интерфейсов, кроме графического – ни тебе WiFi, ни BLE, ни ZigBee. Зато батарейки CR2032 хватает на несколько лет. Есть ещё версия с блютусом, но она чуть менее изящная – эдакий толстый блинчик.

     21.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Статьи

Знакомство с Python для камрадов переросших «язык A vs. язык B» и другие предрассудки

Для всех хабравчан, у которых возникло ощущение дежавю: Написать этот пост меня побудили статья "Введение в Python" и комментарии к ней. К сожалению, качество этого "введения" кхм… не будем о грустном. Но ещё грустнее было наблюдать склоки в комментариях, из разряда "C++ быстрее Python", "Rust ещё быстрее C++", "Python не нужен" и т.д. Удивительно, что не вспомнили Ruby!

 

Как сказал Бьярн Страуструп,

«Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует».

     21.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Видео

Новое в Python 3.7

* Видео в низком разрешении.

Беглый обзор некоторых нововведений в Python 3.7: встроенная breakpoint(), классы данных, функции с разрешением в наносекунды, компактные словари, __getattr__ уровня модуля.

     21.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Статьи

Возможности Python 3, достойные того, чтобы ими пользовались

Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как код со скобками, написанный на Python 2. По его словам, он и сам грешит чем-то подобным. Здесь он приводит примеры некоторых замечательных возможностей, доступных лишь тем, кто пользуется Python 3. Он надеется, что эти возможности облегчат жизнь тем, кто о них узнает.

     21.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Статьи

Криптография простым языком: разбираем симметричное и асимметричное шифрование на примере сюжета Звездных войн

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

     20.05.2019       Выпуск 283 (20.05.2019 - 26.05.2019)       Видео

Аннотации во благо

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

     19.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

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


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

     19.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Пишем свой веб-сервер на Python: протокол HTTP

Это третья статья из серии про разработку простого веб-сервера на Python. В ней рассматривается, как написать с нуля свой HTTP-сервер, основываясь на работе с TCP-сокетами.

     18.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи
     17.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Классификация покрова земли при помощи eo-learn. Часть 2

Вторая часть серии статей про классификацию покрова земли, используя библиотеку eo-learn. Напоминаем, что в первой статье было продемонстрировано следующее:

 

  • Разделение AOI (area of interest, зоны интереса) на фрагменты под названием EOPatch
  • Получение изображений и облачных масок со спутников Sentinel-2
  • Расчёт дополнительной информации, такой как NDWI, NDVI
  • Создание референсной маски и добавление её к исходным данным

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

     17.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Конференции, события, встречи разработчиков

Предварительная программа PyConRu-2019: два Python Core Developer’а, докладчики из Anaconda, Intel, JetBrains, Яндекса

24-25 июня в 95 км от Москвы пройдет седьмая российская конференция для python-программистов PYCON RUSSIA 2019.

Уже в программе: Raymond Hettinger (Python core developer, США), Michael Foord (Python core developer, Англия), Travis Oliphant (автор SciPy, NumPy, Anaconda, США), Antonio Cuni (PyPy core developer, Италия), Григорий Бакунов (Яндекс), Андрей Власовских (JetBrains), Кирилл Борисов (Booking.com), Вадим Пуштаев (Mail.Ru Group), Александр Хаёров (Chainstack), Иван Цыганов (Positive Technologies), Алексей Кузьмин (ДомКлик), Злата Обуховская (евангелист Moscow Python), Василий Литвинов (Intel). И это только предварительная программа.

     17.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Классификация покрова земли при помощи eo-learn. Часть 1

Примерно полгода назад был сделан первый коммит в репозиторий eo-learn на GitHub. Сегодня, eo-learn превратился в замечательную библиотеку с открытым исходным кодом, готовую для использования кем угодно, кто заинтересован в данных EO (Earth Observation — пр. пер.). Все в команде Sinergise ожидали момента перехода от этапа построения необходимых инструментов, к этапу их использования для машинного обучения. Пришло время представить вам серию статей, касающихся классификации покрова земли используя eo-learn

     17.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Реверс-инжиниринг клиента Dropbox

Dropbox очаровал меня сразу с момента своего появления. Концепция по-прежнему обманчиво проста. Вот папка. Кладёшь туда файлы. Он синхронизируется. Переходишь к другому устройству. Он опять синхронизируется. Папка и файлы теперь появились и там!

Объём скрытой фоновой работы на самом деле поражает. Во-первых, никуда не исчезают все проблемы, с которыми приходится иметь дело при создании и обслуживании кросс-платформенного приложения для основных десктопных операционных систем (OS X, Linux, Windows). Добавьте к этому поддержку различных веб-браузеров, различных мобильных операционных систем. И мы говорим только о клиентской части. Меня интересует также бэкенд Dropbox, который позволил достичь такой масштабируемости и низкой задержки с безумно тяжёлой рабочей нагрузкой, которую создают полмиллиарда пользователей.

     17.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Три способа хранения и доступа к множеству изображений в Python

Почему может возникнуть необходимость в изучение различных способов хранения и доступа к изображениям в Python? Так например если вам будет

     16.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией

Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том, как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() вызова у блочного шифра будет достаточно для безопасной отсылки по каналу связи. Другие же считают, что прикладная криптография — удел немногих, и приемлемо, что богатые компании типа Telegram с олимпиадниками-математиками не могут реализовать безопасный протокол.

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

     16.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Бот для VK на Python с MySQL за час ч.1

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

В этом туториале я хочу показать как сделать максимально простого бота с довольно большим базовым функционалом.

     16.05.2019       Выпуск 282 (13.05.2019 - 19.05.2019)       Статьи

Python — помощник в поиске недорогих авиабилетов для тех, кто любит путешествовать

Автор статьи, перевод которой мы публикуем сегодня, говорит, что её цель — рассказать о разработке веб-скрапера на Python с использованием Selenium, который выполняет поиск цен на авиабилеты. При поиске билетов используются гибкие даты (+- 3 дня относительно указанных дат). Скрапер сохраняет результаты поиска в Excel-файле и отправляет тому, кто его запустил, электронное письмо с общими сведениями о том, что ему удалось найти. Задача этого проекта — помощь путешественникам в поиске наиболее выгодных предложений.