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

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

     17.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

Подборка @pythonetc, декабрь 2018

Это седьмая подборка советов про Python и программирование из моего авторского канала @pythonetc.

     16.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

Инфраструктура открытых ключей. Цепочка корневых сертификатов X509 v.3

Неумолимо приближается час «Ч»: «использование схемы подписи ГОСТ Р 34.10-2001 для формирования подписи после 31 декабря 2018 года не допускается!».

     16.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

50 оттенков Celery

Вам сюда, если хотите знать, как приручить широкоизвестный в кругах Python-разработчиков фреймворк под названием Сelery. И даже, если в вашем проекте Celery уверенно выполняет базовые команды, то финтех опыт может открыть вам неизведанные стороны. Потому что финтех — это всегда Big Data, а с ней и необходимость фоновых задач, пакетной обработки, асинхронного API и т.д.

     14.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

Нейросети и философия языка

Векторное представление слов — пожалуй, одна из самых красивых и романтичных идей в истории искусственного интеллекта. Философия языка — это раздел философии, исследующий связь между языком и реальностью и как сделать сделать речь осмысленной и понятной. А векторное представление слов — очень специфический метод в современной обработке естественного языка (Natural Language Processing, NLP). В некотором смысле он представляет собой эмпирическое доказательство теорий Людвига Витгенштейна, одного из самых актуальных философов прошлого века. Для Витгенштейна использование слов — это ход в социальной языковой игре, в которую играют члены сообщества, понимающие друг друга. Значение слова зависит только от его полезности в контексте, оно не соотносится один к одному с объектом из реального мира.

     14.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

Как не продолбать пароли в Python скриптах

Хранение паролей всегда было головной болью. В классическом варианте у вас есть пользователь, который очень старается не забыть жутко секретный «qwerty123» и информационная система, которая хранит хеш от этого пароля. Хорошая система еще и заботливо солит хеши, чтобы отравить жизнь нехорошим людям, которые могут украсть базу с хешированными паролями. Тут все понятно. Какие-то пароли храним в голове, а какие-то засовываем в зашифрованном виде в keepass.

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

     14.01.2019       Выпуск 265 (14.01.2019 - 20.01.2019)       Статьи

DIY тепловизор на Raspberry PI или «Кажется теперь я знаю, чем займусь этим летом»

Пришла зима, а с ней и задача проверить теплоизолирующие свойства построек загородной резиденции дачи. А тут ещё оказалось, что на известном китайском сайте появились вполне доступные тепловизионные модули. Не собрать ли себе экзотическую и, возможно, даже полезную вещь — самодельный тепловизор? Почему бы и нет, вроде и Raspberry где-то валялась… Что из этого вышло — расскажу под катом.

     13.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

«Теория Большого взрыва» и практика применения Python

В последнее время активно изучаю язык программирования Python. Особенно меня заинтересовало использование Python в распознавании и классификации лиц. В статье я попробую применить распознавание лиц для сериала «Теория Большого взрыва».

     10.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Довериться Кодду или своим объектам?

В июне 2020 года ровно 50 лет табличным хранилищам данных или говоря формально — реляционной модели данных. Вот официальный документ – та самая знаменитая статья. За что говорим огромное спасибо доктору Эдгару Фрэнку Кодду. И, между прочим, реляционная модель данных входит в список важнейших мировых инноваций последних 100 лет по версии Форбса.

С другой стороны, как ни странно, Кодд считал реляционные базы данных и язык SQL искаженной реализацией своей теории. В качестве ориентира, он даже разработал 12 правил, которым должна удовлетворять каждая система управления реляционными базами данных (на самом деле это 13 правил). И, по правде говоря, на сегодня, в мире не найти СУБД удовлетворяющих хотя бы «Правилу 0» Кодда и, следовательно, никто не может называть свою СУБД на 100% реляционной :) Может есть исключения, подскажите?
 

     09.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Data Science: книги для начального уровня

Data Science — наука о данных, возникшая на стыке нескольких обширных направлений: программирования, математики и машинного обучения. Этим обусловлен высокий порог вхождения в профессию и необходимость постоянно получать новые знания.

Ключевыми навыками для начинающих специалистов являются:

 

  • умение писать код (Python);
  • способность визуализировать свои результаты;
  • понимание того, что происходит «под капотом».
На эти три категории разделены книги, которые специалисты Plarium Krasnodar подобрали для читателей с начальными знаниями в Data Science.

     09.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Анализ результатов 2018 Kaggle ML & DS Survey

Kaggle — не просто площадка для соревнований, там также можно публиковать исследования данных или решения соревнований (они называются кернелы и похожи на Jupyter Notebook), поэтому датасет с результатами опроса был выложен в открытый доступ, и было организовано соревнование на лучшее исследование этих данных. Я тоже принимал участие и пусть денежный приз не получил, но мой кернел занял шестое место по количеству голосов. Я хотел бы поделиться результатами моего анализа.

     08.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Удалённое управление эмулятором Fceux с помощью Python

В статье я опишу, как сделать эмулятор NES управляемым удалённо, и сервер для удалённой отправки команд на него.

     08.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Бессерверный REST API «на коленке за 5 минут»

Сегодня продолжим разговор о возможностях, которые предоставляет нам Amazon Web Services и о том, как эти возможности использовать в решении прикладных задач.

На простом примере рассмотрим создание буквально за несколько минут собственного бессерверного автомасштабируемого REST API с разбором кейса — получения списка для ресурса.

Интересно? Тогда заходим под кат!

     07.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Сниппеты против Клевера – обыгрываем популярнейшую викторину в реальном времени

Апрель 2018-го года. Мне было 14. Мы с друзьями играли в тогда очень популярную онлайн-викторину «Клевер» от ВКонтакте. Один из нас (обычно я) всегда был за ноутбуком, чтобы пытаться быстро гуглить вопросы и глазами искать в поисковой выдаче правильный ответ. Но вдруг я понял, что каждый раз выполняю одно и то же действие, и решил попробовать написать это на частично известном мне тогда Python 3.

     07.01.2019       Выпуск 264 (07.01.2019 - 13.01.2019)       Статьи

Как я марс спасал или небольшой квест на питоне

Август 2018
На улице стоит жаркое лето, плавно подходящее к концу, а я сижу в прохладной комнате с ноутбуком и серфлю интернет в поиске интересных вещей. Потеряв надежду найти что-либо стоящее внимания, вдруг, натыкаюсь в одной из довольно популярных околоайтишных групп вконтакте пост со ссылкой на еще один айти ресурс. Квест показался мне интересным, ведь это почти классический текстовый квест в космическом сеттинге, да еще и программировать тут нужно!

     06.01.2019       Выпуск 263 (31.12.2018 - 06.01.2019)       Статьи

template tags для формирования breadcrumb с поддержкой shema.org

Делюсь своей реализацией built-in тегов для формирования breadcrumbs с поддержкой разметки schema.org, а также поддержкой bootstrap css.

     06.01.2019       Выпуск 263 (31.12.2018 - 06.01.2019)       Статьи

Кэширование шаблонов для различных типов контента

В статье "Различные шаблоны для рендеринга разных типов контента в поисковой выдаче" было показано, как сделать рендеринг различных шаблонов в зависимости от того, какой тип контента отрисовывается в поисковой выдаче на сайте. При этом ключевым моментом являлось то, что не приходилось делать проверочные условия для выбор шаблона. Информация о шбалоне хранилась в переменной TEMPLATE_PREVIEW, через которую шаблон подставлялся в include тег в шаблоне Django. В данном способе есть один большой недостаток. Дело в том, что тег include при каждом своём вызове ищет шаблон. Его необходимо было как-то кэшировать, что и решается в данной статье.

     04.01.2019       Выпуск 263 (31.12.2018 - 06.01.2019)       Статьи

Катаемся на Xiaomi Vacuum Cleaner

Вот и пришли новогодние праздники, а с ними и куча свободного времени, да еще и умный пылесос угодил ко мне в руки. Как только я увидел в приложении MiHome ручное управление, я сразу понял, что хочу сделать: будем управлять пылесосом с помощью геймпада Dualshock v4!

     30.12.2018       Выпуск 262 (24.12.2018 - 30.12.2018)       Статьи

Реагируем на вандализм кабеля быстро, повсеместно и без физических ловушек

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