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

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

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи
     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

The decorators they won't tell you about

Подробная статья о мощи декораторов в Python

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи
     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Go Python, Go: Stream Processing for Python

Статья о том, как добавить логику stream'ов в Python

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Как научить свою нейросеть анализировать морфологию

Недавно мы рассказывали про генератор стихов. Одной из особенностей языковой модели, лежащей в его основе, было использование морфологической разметки для получения лучшей согласованности между словами. Однако же у использованной морфоразметки был один фатальный недостаток: она была получена с помощью “закрытой” модели, недоступной для общего использования. Если точнее, выборка, на которой мы обучались, была размечена моделью, созданной для Диалога-2017 и основанной на закрытых технологиях и словарях ABBYY.

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Minecraft. Создание копировального аппарата

Предлагаем вместе создать в игре Minecraft копировальный аппарат

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

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Jupyter Widgets для реализации UI машины Тьюринга

Хочу поделиться опытом в быстром создание интерфейса в Jupyter Notebook. Если у тебя есть какая-то задача, для которой нужен простой UI, и ты почему-то захотел сделать её в Юпитере, то добро пожаловать под кат.

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Ломаем модифицированный AES-256

Недавно в институте я столкнулся с любопытной криптографической задачей, которой хотел бы поделиться с Сообществом. Одним предложением задачу могу обозначить, как "Атака на LSX-шифр, не содержащий нелинейной компоненты, на основе открытых текстов". Так как русскоязычных примеров решения таких учебных «головоломок» встречается немного, а сама задача рекомендована для начинающих свой путь специалистов, я считаю, что такая статья может быть интересна юному криптоаналитику. Пожалуйте под кат.

     12.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Обзор фреймворка Luigi для построения последовательностей выполнения задач

Luigi — фреймворк на языке Python для построения сложных последовательностей по выполнению зависимых задач. Довольно большая часть фреймворка направлена на преобразования данных из различных источников (MySql, Mongo, redis, hdfs) и с помощью различных инструментов (от запуска процесса до выполнения задач разных типов на кластере Hadoop). Разработан в компании Spotify и открыт в виде open source инструмента в 2012 году.

     11.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Простой или волшебный UPSERT в PostgreSQL с Django Django

О том, как Django поддерживает UPSERT

     10.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Простая Scada на Python и Arduino

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

     10.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Строим Data Pipeline на Python и Luigi

В эпоху data-intensive приложений рядовым разработчикам всё чаще приходится сталкиваться с задачами по обработке и анализу данных. Ещё десять лет назад данные большинства проектов могли уместиться на жестком диске одного компьютера в какой-нибудь реляционной базе данных типа MySQL. А задачи по извлечению и обработке хранящихся данных решались за счёт непростых (или простых) SQL запросов. С тех пор мир информационных технологий значительно поменялся. С приходом Internet of Things, мобильных телефонов и дешевого мобильного интернета, объем генерируемых данных вырос в десятки тысяч раз. Ежедневно в мире генерируются эксабайты данных. Анализировать такой поток информации вручную, а тем более извлекать полезные для бизнеса или науки данные, практически невозможно. Но технологии как и время не стоят на месте, появляются новые инструменты, наука двигает прогресс. Если вы хоть чуточку следите за новостями из мира высоких технологий, то фразы "биг дата", "машинное обучение", "глубокое обучение" вас не испугают. С приходом больших данных появились новые профессии и специализации такие как Data Scientist/Analyst (по-русски аналитик данных), Data Engineer. Задачи этих ребят тесно связаны с обработкой, анализом и хранением "нефти 21 века", т.е. информации. Но насколько эффективно они выполняются?

     09.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи
     09.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи
     09.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Как получать оповещения от Jupyter notebook в Telegram?

Довольно просто. Нам понадобится свой телеграм-бот, один пакет и одна строчка кода

     09.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи
     09.10.2017       Выпуск 199 (09.10.2017 - 15.10.2017)       Статьи

Простая Scada на Python (продолжение)

Развивая тему предыдущей статьи, опишу некоторые функции для формирования объектов мнемосхемы простой SCADA программы выполненной на Python.

Объекты визуально отображают состояние аналоговых измеряемых величин из регистров
READ_INPUT_REGISTERS или READ_HOLDING_REGISTERS. Используется библиотека Tkinter.
Всего реализовано 3 объекта: горизонтальный слайдер, вертикальный слайдер и стрелочный индикатор. Отдельно описывается построение динамического тренда.